Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[as9726_32d] Add new platform #883

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

acctalex
Copy link
Contributor

@acctalex acctalex commented Apr 19, 2022

CPU: Intel Broadwell-DE D-1519 4 cores
RAM: DDR4 8GB x2 SO-DIMM (Expandable up to 16GBx2, w/i ECC)
SSD: M.2 MLC 50GB x 1
PHY: Marvell 88E1111
CPLD: Altera MAX 10 10M04DAU324C8G X1
CPLD: Altera Cyclone IV EP4CGX30CF23C7N X1
CPLD: Altera 5M1270ZF256C5N x1
Ethernet Port: 400G QSFP56-DD port x 32 and 10G SFP+ x 2
PSU: 1+1 Redundant/hot swappable 1500W AC/DC PSU (C14 ac inlet)
Cooling: 5+1 fan-tray modules with 40mm x40mm x 56mm 12V fans, hotswappable
Dimension: 17.26” x 23.23” x 1U (438.4x590x43.5mm)
Linux kernel version: 5.4, due to customer requirements

Signed-off-by: Alex Lai [email protected]

CPU: Intel Broadwell-DE D-1519 4 cores
RAM: DDR4 8GB x2 SO-DIMM (Expandable up to 16GBx2, w/i ECC)
SSD: M.2 MLC 50GB x 1
PHY: Marvell 88E1111
CPLD: Altera MAX 10 10M04DAU324C8G X1
CPLD: Altera Cyclone IV EP4CGX30CF23C7N X1
CPLD: Altera 5M1270ZF256C5N x1
Ethernet Port: 400G QSFP56-DD port x 32 and 10G SFP+ x 2
PSU: 1+1 Redundant/hot swappable 1500W AC/DC PSU (C14 ac inlet)
Cooling: 5+1 fan-tray modules with 40mm x40mm x 56mm 12V fans, hotswappable
Dimension: 17.26” x 23.23” x 1U (438.4x590x43.5mm)

Signed-off-by: Alex Lai <[email protected]>
Copy link

@paulmenzel paulmenzel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for adding the device. Please mention the Linux kernel version in the commit message.

Did you send the Linux kernel patches upstream for review?

Comment on lines 79 to 88
{LED_DIAG, LED_MODE_OFF, ONLP_LED_MODE_OFF},
{LED_DIAG, LED_MODE_GREEN, ONLP_LED_MODE_GREEN},
{LED_DIAG, LED_MODE_AMBER, ONLP_LED_MODE_ORANGE},
{LED_DIAG, LED_MODE_GREEN_BLINK, ONLP_LED_MODE_GREEN_BLINKING},
{LED_LOC, LED_MODE_OFF, ONLP_LED_MODE_OFF},
{LED_LOC, LED_MODE_AMBER, ONLP_LED_MODE_ORANGE},
{LED_LOC, LED_MODE_AMBER_BLINK, ONLP_LED_MODE_ORANGE_BLINKING},
{LED_FAN, LED_MODE_AUTO, ONLP_LED_MODE_AUTO},
{LED_PSU1, LED_MODE_AUTO, ONLP_LED_MODE_AUTO},
{LED_PSU2, LED_MODE_AUTO, ONLP_LED_MODE_AUTO}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incorrect indentation?


if (unlikely(result != data_len)) {
result = -EIO;
msleep(10);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why such a high delay?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

10 ms delay is not so high here. I think.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything about 1 ms is high, and should be justified.

int status;
int power_good = 0;

dev_dbg(&client->dev, "Starting as9726_32d update\n");

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why update?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in order to return the most up to date value, an update is needed.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But what is updated? Please improve the debug message.


if (status < 0) {
dev_dbg(&client->dev, "cpld reg 0x60 err %d\n",
status);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fits on line above.

Comment on lines 248 to 253
if (status < 0) {
dev_dbg(&client->dev, "cpld reg 0x60 err %d\n",
status);
} else {
data->status = status;
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -0,0 +1,6 @@
KERNELS := onl-kernel-4.19-lts-x86-64-all:amd64

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not the latest Linux kernel version?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

our customers need the 4.19 kernel.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please mention that in the commit message. (I am very uneasy about the fact, that users rely on such old versions, even if they are LTS series. For ONL the latest Linux kernel version should always be usable.)

…onality, and to use correct settings.

1. removed the old project name in fan.c.
2. removed unnecessary mutex_unlock() in fan.c.
3. added AIM_FREE_IF_PTR(mn) in platform_lib.c to prevent memory leak.
4. added support of Belpower psu.
5. added support of transciever LP mode sysfs and onlpdump.
6. modified the fan policy.
7. modified to use the fan air flow direction to detemine which set of thermal thersholds should be used.
8. modified to use the correct console port setting.
9. removed IR3570 related codes in __init__.py
10. modified some codes to fit the linux coding style.

Signed-off-by: Alex Lai <[email protected]>
1. used kernel 5.4
2. removed msleep(10) when failed to read correct PSU info.

Signed-off-by: Alex Lai <[email protected]>
1. initialize pca9548 idle_state in kernel 5.4.40 version, or the data
read by the transceivers will be wrong.

Signed-off-by: Alex Lai <[email protected]>
@acctalex acctalex force-pushed the as9726_32d branch 3 times, most recently from 83e60f3 to edf7b15 Compare August 2, 2023 07:59
1. Modify PSU related files to support new PSU model:FSJ035-610G and FSJ036-610G.
2. Modify to show correct fan direction for FSJ001, FSJ004, SPAACTN-01, and SPAACTN-02
3. Modify to show the current PSU is of AC or DC.
4. Modify to let vout, vin, iout, iin, pout, and pin return 0, if the PSU is present but unplugged.

Signed-off-by: Alex Lai <[email protected]>
1. In onlpdump, modified to read the fan direction
   of each psu and show, instead of one reffering
   to other.

Signed-off-by: Alex Lai <[email protected]>
1. used the comunity master branch's
   x86_64-all.config of kernel 5.4.

Signed-off-by: Alex Lai <[email protected]>
@paulmenzel
Copy link

Please mention the used Linux kernel version in the commit message description of commit [as9726_32d] Add new platform, and say why. The latest LTS version is 6.6.

@acctalex
Copy link
Contributor Author

Please mention the used Linux kernel version in the commit message description of commit [as9726_32d] Add new platform, and say why. The latest LTS version is 6.6.

OK, done. Please review, thanks.

@jeff97830133
Copy link

Hello @paulmenzel

Please help review this PR.
Thanks!!

Alex Lai added 2 commits September 25, 2024 01:49
1. Use the eeprom at 0x56 on the mainbaord, and the eeprom at 0x57 on
   the cpu board will no longer be used.

Signed-off-by: Alex Lai <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants