Commit Graph

1634 Commits

Author SHA1 Message Date
Junchao-Mellanox
dc04d64219
[Mellanox] Fix issue: psu might use wrong voltage sysfs which causes invalid voltage value (#10231)
- Why I did it
Fix issue: psu might use wrong voltage sysfs which causes invalid voltage value. The flow is like:

1. User power off a PSU
2. All sysfs files related to this PSU are removed
3. User did a reboot/config reload
4. PSU will use wrong sysfs as voltage node

- How I did it
Always try find an existing sysfs.

- How to verify it
Manual test
2022-03-20 10:34:04 +02:00
Samuel Angebault
3a4ed99593
[Arista] Update driver submodules (#10267)
- Fix i2c bus on crow cpu
 - Fix exception handling in logs
 - Improve linecard mgmt interface configuration
 - Add new PSU models for chassis
 - Misc fixes
2022-03-18 12:10:30 -07:00
FuzailBrcm
d3f2da8679
[pddf]: Adding support for fan_drawer class in PDDF common platform APIs (#10213)
Why I did it
fan_drawer support was missing in PDDF common platform APIs. This resulted in 'thermalctld' not working and 'show platform fan' and 'show platfomr temperature' commands not working.
_thermal_list array inside PSU class was not initialized. Made changes to attach the PSU related thermal sensors in the PSU instance.
How I did it
Added a common class pddf_fan_drawer.py. This class uses the PDDF JSON to fetch the platform specific data. A platform which uses PDDF would follow the below hierarchy.

fan_drawer_base.py ---> pddf_fan_drawer.py ---> fan_drawer.py

How to verify it
Run the 'show platform fan' and 'show platform temperature' commands and check the o/p.

o/p on AS7326:

root@sonic:/home/admin# show platform fan
s  Drawer    LED         FAN    Speed    Direction    Presence    Status          Timestamp
--------  -----  ----------  -------  -----------  ----------  --------  -----------------
Fantray1  green  Fantray1_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray1  green  Fantray1_2      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray2  green  Fantray2_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray2  green  Fantray2_2      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray3  green  Fantray3_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray3  green  Fantray3_2      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray4  green  Fantray4_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray4  green  Fantray4_2      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray5  green  Fantray5_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray5  green  Fantray5_2      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray6  green  Fantray6_1      38%      EXHAUST     Present        OK  20220311 04:15:03
Fantray6  green  Fantray6_2      38%      EXHAUST     Present        OK  20220311 04:15:03
     N/A    off   PSU1_FAN1       0%                  Present    Not OK  20220311 04:15:05
     N/A  green   PSU2_FAN1      34%      EXHAUST     Present        OK  20220311 04:15:05
hroot@sonic:/home/admin# show platform temperature
    Sensor    Temperature    High TH    Low TH    Crit High TH    Crit Low TH    Warning          Timestamp
----------  -------------  ---------  --------  --------------  -------------  ---------  -----------------
PSU1_TEMP1            0          N/A       N/A             N/A            N/A      False  20220311 04:15:05
PSU2_TEMP1           37          N/A       N/A             N/A            N/A      False  20220311 04:15:05
     TEMP1           37         80.0       N/A             N/A            N/A      False  20220311 04:15:05
     TEMP2           27         80.0       N/A             N/A            N/A      False  20220311 04:15:05
     TEMP3           28.5       80.0       N/A             N/A            N/A      False  20220311 04:15:05
     TEMP4           30.5       80.0       N/A             N/A            N/A      False  20220311 04:15:05
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin#
o/p on AS7726:

root@as7726-32x-2:~# show platform fan
  Drawer    LED         FAN    Speed    Direction    Presence    Status          Timestamp
--------  -----  ----------  -------  -----------  ----------  --------  -----------------
Fantray1  green  Fantray1_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray1  green  Fantray1_2      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray2  green  Fantray2_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray2  green  Fantray2_2      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray3  green  Fantray3_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray3  green  Fantray3_2      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray4  green  Fantray4_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray4  green  Fantray4_2      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray5  green  Fantray5_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray5  green  Fantray5_2      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray6  green  Fantray6_1      38%      EXHAUST     Present        OK  20220311 08:13:04
Fantray6  green  Fantray6_2      38%      EXHAUST     Present        OK  20220311 08:13:04
     N/A  green   PSU1_FAN1      23%      EXHAUST     Present        OK  20220311 08:13:04
     N/A  green   PSU2_FAN1      22%      EXHAUST     Present        OK  20220311 08:13:04
root@as7726-32x-2:~# show platform temp
    Sensor    Temperature    High TH    Low TH    Crit High TH    Crit Low TH    Warning          Timestamp
----------  -------------  ---------  --------  --------------  -------------  ---------  -----------------
PSU1_TEMP1           28          N/A       N/A             N/A            N/A      False  20220311 08:13:04
PSU2_TEMP1           25          N/A       N/A             N/A            N/A      False  20220311 08:13:04
     TEMP1           23.5       80.0       N/A             N/A            N/A      False  20220311 08:13:04
     TEMP2           27         80.0       N/A             N/A            N/A      False  20220311 08:13:04
     TEMP3           24         80.0       N/A             N/A            N/A      False  20220311 08:13:04
     TEMP4           27         80.0       N/A             N/A            N/A      False  20220311 08:13:04
     TEMP5           24         80.0       N/A             N/A            N/A      False  20220311 08:13:04
2022-03-18 11:14:10 -07:00
Jeff Henning
ad6200029f
Edgecore 4630/5835/7326/7816 API2.0 platform support (#10053)
* Initial pass of EdgeCore platform changes.

* Remove libevent dependency from lldpd.

* Remove python2 dependencies python3.7 force from platform install script.

* Include usbmount support changes.

* Add missing 4630 install file.

* Update a few file permissions.  Add umask line to Makefile.  Specify python3.9 in install script.

* Misc platform updates:
- Add missing fan drawer component to sonic_platform
- Remove kernel version specification from Makefile
- Update to 4630 utility

* - Fix file permissions on source files
- Fix compile issue with 4630 driver modules (set_fs, get_fs, no longer supported in kernel 5.10)

* Fix missing/extra parens in 4630 util script.

* Fix indentation in fanutil.py.

* Integrate deltas from Edgecore to ec_platform branch.

* Installer update from Edgecore to resolve smbus serial console errors.

* Update stable_size for warm boot.

* Fix SFP dictionary key to match xcvrd.

* - Add missing define in event.py files needed for xcvrd
- Fix SFP info dict key for 7xxx switches

* 5835 platform file updates including installer and 5835 utility.

* 5835 fix for DMAR errors on serial console.

* Don't skip starting thermalctld in the pmon container.

* Revert several changes that were not related to platform.

* Run thermalctld in pmon container.

* Don't disable thermalctld in the pmon container.

* Fix prints/parens in 7816 install utility.

* - Incorporate 7816 changes from Edgecore
- Fix 7326 driver file using old kernel function

* Update kernel modules to use kernel_read().

* Fix compile errors with 7816 and 7326 driver modules.

* Fix some indents preventing platform files from loading.

* Update 7816 platform sfp dictionary to match field names in xcvrd.

* Add missing service and util files for 7816.

* Update file names, etc. based on full SKU for 7816.

* Delete pddf files not needed.  These were causing conflicts with API2.0
implementation.

* Remove pddf files suggested by Edgecore that were preventing API2.0 support from starting.

* Install API2.0 file instead of pddf.

* Update 7326 mac service file to not use pddf.  Fix syntax errors in 7326 utility script.

* Fix sonic_platform setup file for 7326.

* Fix syntax errors in python scripts.

* Updates to 7326 platform files.

* Fix some tab errors pulled down from master merge.

* Remove pddf files that were added from previous merge.

* Updates for 5835.

* Fix missing command byte for 5835 psu status.

* Fix permission bits on 4630 service files.

* Update platforms to use new SFP refactoring.

* Fix unused var warnings.
2022-03-18 06:17:08 +05:30
Arun Saravanan Balachandran
5c7aa50463
DellEMC: Z9332f - Component API Fixes (#10187) 2022-03-16 14:16:26 -07:00
FuzailBrcm
98cfec2982
Using SFP refactoring framework in PDDF sfp class (#10047)
* Using SFP refactoring framework in PDDF sfp class

* Fixing a typo error
2022-03-16 06:35:34 +05:30
gechiang
004dc69910
[BRCM SAI 6.0.0.13-3] Fix Warmreboot issue (#10225) 2022-03-15 11:50:33 -07:00
Yang Wang
a29ba9cf22
Correct thrift 0141 typo fix (#10199)
Correct libsaithrift dependency package name from
LIBTHRIFT_DEV_0_14_1 THRIFT_COMPILER_0_14_1 to
LIBTHRIFT_0_14_1_DEV THRIFT_0_14_1_COMPILER

How I did it
How to verify it
Test Done:

make BLDENV=buster SAITHRIFT_V2=y -f Makefile.work target/debs/buster/saiserverv2_0.9.4_amd64.deb
2022-03-11 17:35:17 +08:00
Taras Keryk
759172dc8b
[BFN] Regenerated pltfm_mgr_rpc.py to the latest version (#10180) (#10208)
Signed-off-by: Taras Keryk <tarasx.keryk@intel.com>

Why I did it
The previous implementaion of API for platform component didn't have the new thrift files
How I did it
Add the new thrift-generated: pltfm_mgr_rpc.py, ttypes.py
How to verify it
Run manually 'fwutil show status' or run unit tests
    Previous command output had no information about components

    New command output
            Chassis                   Module    Component    Version    Description
            ------------------------  --------  -----------  ---------  -------------
            Chassis1                  N/A       BIOS         1.2.3     Chassis BIOS
                                                BMC          5.1       Chassis BMC
2022-03-11 15:01:27 +05:30
Taras Keryk
a89f294fd5
[BFN] Implementation API for platform component (#10180)
* [BFN] Implementation API for platform component
	SONiC has a concept of "platform components"
	this may include - CPLD, FPGA, BIOS, BMC, etc.

	These changes are needed to read the version of the BIOS and BMC component.

	What I did
		Create components.py module
		Add funcion for reading componet version to thrift interface
	How I did it
		The previous implementaion didn't have platform components API, so fwutil return an empty list.
		After implementation of the platform component API, we have actual list of platform components and firmware versions

	How to verify it
		Run manually 'fwutil show status' or run unit tests

	Previous command output
		Chassis                   Module    Component    Version    Description
		------------------------  --------  -----------  ---------  -------------

	New command output
		Chassis                   Module    Component    Version    Description
                ------------------------  --------  -----------  ---------  -------------
                Chassis1		  N/A       BIOS         1.2.3	   Chassis BIOS
                                                    BMC          5.1	   Chassis BMC
Signed-off-by: Taras Keryk <tarasx.keryk@intel.com>

* [BFN] Implementation API for platform component
            SONiC has a concept of "platform components"
            this may include - CPLD, FPGA, BIOS, BMC, etc.

            These changes are needed to read the version of the BIOS and BMC component.

            What I did
                    Create components.py module
                    Add funcion for reading componet version to thrift interface
            How I did it
                    The previous implementaion didn't have platform components API, so fwutil return an empty list.
                    After implementation of the platform component API, we have actual list of platform components and firmware versions

            How to verify it
                    Run manually 'fwutil show status' or run unit tests

            Previous command output
                    Chassis                   Module    Component    Version    Description
                    ------------------------  --------  -----------  ---------  -------------

            New command output
                    Chassis                   Module    Component    Version    Description
                    ------------------------  --------  -----------  ---------  -------------
                    Chassis1                  N/A       BIOS         1.2.3     Chassis BIOS
                                                        BMC          5.1       Chassis BMC

Signed-off-by: Taras Keryk <tarasx.keryk@intel.com>

* [BFN] Implementation API for platform component
    get chassis name from json

* [BFN] Implementation API for platform component
      Updated platform and platrom_components json

* [BFN] Implementation API for platform component
      Fixed spaces in component.py

* [BFN] Implementation API for platform component
      Fixed exception in component.py

* Update chassis.py

* [BFN] Implementation API for platform component
      Fixed spaces in component.py, chassis.py

* [BFN] Implementation API for platform component: Fixed spaces in component.py, chassis.py

* Fixed exception in get_bios_version
2022-03-10 16:25:06 +05:30
Yang Wang
c8db7a2d52
[Mellanox][SAISERVER] Support Mellanox saiserverv1 and saiserverv2 docker (#9686)
* support saiserverv1 and saiserverv2 docker

* add saiserver into buster and revert some changes

* update thrift version
2022-03-10 13:15:44 +08:00
arunlk-dell
b2409be2f2
DellEMC: N3248TE Platform API 2.0 changes (#9735)
Why I did it
N3248TE - Platform API 2.0 changes

How I did it
Implemented the functional API's needed for Platform API 2.0

How to verify it
Used the API 2.0 test suite to validate the test cases.
2022-03-04 17:53:35 -08:00
jostar-yang
d959c4adcd
[AS4630-54PE] Fix led drv and i2c bus order (#9170)
Signed-off-by: Jostar Yang jostar_yang@accton.com.tw

Why I did it
Fix led drv because CPLD SPEC is updated.
Fix i2c bus order
How I did it
Fix led drv. Set blacklist to i801 and ismt. Let accton util to modprobe i801 and ismt.

How to verify it
Test led and sensors cmd. Results are fine.
2022-03-04 17:40:27 -08:00
jostar-yang
85976cbca3
[AS5835-54X] Fix I2C bus order (#9146)
Why I did it
To fix I2C bus order to meet with HW SPEC. Let i801 use bus-0 and ismt use bus-1

How I did it
Modprobe i801 and then do ismt. So i801 will use bus-0 and ismt will use bus-1.

How to verify it
Test show cmd and sensors work well

Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-03-04 17:33:50 -08:00
Rajkumar-Marvell
b400a64823
[Marvell] Update armhf driver/sai deb version (#10126)
Fixed Marvell SAI deb version naming issue reported in Marvell-switching/sonic-marvell-binaries#62

Signed-off-by: Rajkumar Pennadam Ramamoorthy <rpennadamram@marvell.com>
2022-03-03 16:21:18 -08:00
jostar-yang
a3c10515f4
[as7326-56x] Modify to check eeprom by pre_pddf_init.sh (#7841)
Modify to check eeprom by pre_pddf_init.sh

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-03-03 15:59:12 -08:00
FuzailBrcm
482ff1ca50
[pddf]: Support for idle_state device parameter is required for muxes using i2c_mux_pca954x driver (#10060)
As per linux kernel 5.10, 'force_deselct_on_exit' parameter used for driver i2c_mux_pca954x is no longer valid. Instead an attribute 'idle_state' is added per MUX device. This needs to be set to
-1 : For leaving the mux state as is
-2 : For deselecting the channel upon exit
: To always set a channel upon exit

This needs to be accommodated inside the PDDF JSON parser as well.
2022-03-03 15:58:34 -08:00
jostar-yang
76363cfa16
[AS7326-5X] Fix code bug for led drv (#8555)
Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-03-01 13:33:42 -08:00
jostar-yang
74e790c89f
[as7816-64x]Modify to check specific DUT (#7826)
AS7816 support AT or non-AT DUT. They use different pmbus i2c bus. So use "pre_pddf_init.sh" to check this case.

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-03-01 13:09:17 -08:00
jostar-yang
b617ffd88c
[AS9716-32d] Modify check eeprom via pre_pddf sh (#7827)
Modify to use pre_pddf_init.sh to check eeprom is 0x57 or 0x56.

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-03-01 13:08:03 -08:00
Aravind Mani
6c31fc65ff
Dell: S6100 fix xcvrd crash (#10062) 2022-02-28 13:13:52 -08:00
Alexander Allen
7c4fbf0455
[Mellanox] Add patch to hw-mgmt to prevent loading of non-existent kernel modules (#10073)
- Why I did it
The latest upgrade of Mellanox hw-mgmt V7.0020.1300 introduced a couple new kernel modules for new Mellanox platforms that have yet to be upstreamed to the linux kernel.

As these new platforms do not have SONiC support we elected not to upstream these new drivers to sonic-linux-kernel but hw-mgmt expects them to exist which is causing a non-functional error on switch boot.

Feb 15 00:09:55.374130 r-leopard-simx-74 ERR systemd-modules-load[269]: Failed to find module 'emc2305'
Feb 15 00:09:55.374141 r-leopard-simx-74 ERR systemd-modules-load[269]: Failed to find module 'ads1015'
To resolve this we can patch hw-mgmt to no longer attempt to load these modules by default.

- How I did it
Added a SONiC patch to Mellanox hw-mgmt in order to remove the unused kernel modules which were not upstreamed to sonic-linux-kernel

- How to verify it
Boot switch and verify there are no error logs regarding kernel modules failing to load.
2022-02-28 08:08:19 +02:00
Rajkumar-Marvell
5daf482a95
[Marevell] Fix armhf build failure (#9875)
Signed-off-by: Rajkumar Pennadam Ramamoorthy <rpennadamram@marvell.com>
2022-02-28 13:40:58 +08:00
Junchao-Mellanox
fe59e0f2c0
[Mellanox] Fix issue: thermal zone threshold value 0 causes fan speed stuck at 100% (#10057)
- Why I did it
In SONiC thermal control algorithm, it compares thermal zone temperature with thermal zone threshold. Previously, a thermal zone with no thermal sensor can still get its threshold. However, a recently driver patch changes this behavior: a thermal zone with no thermal sensor will return 0 for threshold. We need to ignore such thermal zone.

- How I did it
Ignore thermal zones whose temperature is 0.

- How to verify it
Added unit test case and Manual test
2022-02-24 12:05:56 +02:00
Xin Wang
9fe128c8e8
Fix issue of parsing syseeprom value with whitespace in middle (#10021)
Fixes #10020

Why I did it
The platform api for parsing syseeprom information read from STATE DB has issue
with parsing the value part that has whitespace in the middle. The current
code assumes that the value part does not have whitespace. So everything after
the whitespace will be ignored. The syseeprom values returned from platform
API do not match the output of "show platform syseeprom".

How I did it
This change improved the regular expression for parsing syseeprom values to
accommodate whitespaces in the value.

How to verify it
Locally updated the code on a dx010 device. Call the platform API:
```
>>> import sonic_platform
>>> platform = sonic_platform.platform.Platform()
>>> chassis = platform.get_chassis()
>>> chassis.get_system_eeprom_info()
{'0x21': 'DX010', '0x22': 'R0872-F0020-02', '0x23': 'DX010B2F030A27BY200002', '0x24': '00:E0:EC:E7:71:0F', '0x25': '11/03/2020 21:22:56', '0x26': '3', '0x27': 'Seastone', '0x28': 'RANGELEY', '0x29': '2014.08', '0x2A': '131', '0x2B': 'CELESTICA', '0x2C': 'THA', '0x2D': 'Celestica', '0x2E': '1.0.5', '0x2F': 'LB', '0xFD': '', '0xFE': '0xAAB39BDB'}
```

Signed-off-by: Xin Wang <xiwang5@microsoft.com>
2022-02-23 10:33:34 +08:00
Richard.Yu
2489727c46
Generate sai.profile from j2 tempalte when saiserver start (#10022)
Generate the sai.profile base on the brcm j2 file if the sai.profile
is not existing in the dut mounted folder.
Change the supervisor service configuration accordingly.

Testing done:
Add the script and config in dut
saiservice server can start automatically with [systemctl start saiserver]

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>
2022-02-22 18:33:16 -08:00
xumia
f65a071410
[Build]: Fix marvell sai package version parsing issue
Fix marvell sai package version parsing issue (#10009)
2022-02-19 12:16:50 +08:00
alvinkaiwei
d2f6fe7463
Add support for Accton wedge100bf_32qs platform to SONiC master (#9257)
* Add support for Accton wedge100bf_32qs platform

This pull request is based on wedge100bf_32x.

The components on the mainboard are the same as wedge100bf_32x, except for tofino 32Q and COMe models, so it refers to wedge100bf_32x to create new model: wedge100bf_32qs.

Signed-off-by: alvin_feng <alvin_feng@accton.com>

* Fix lgtm alerts issues

Signed-off-by: alvin_feng <alvin_feng@accton.com>

* Modify some file permissions and use symlink to link wedge100bf-32qs/sonic_platform

Signed-off-by: alvin_feng <alvin_feng@accton.com>

* Remove switch-sai.conf file

Signed-off-by: alvin_feng <alvin_feng@accton.com>

* Modify platform.json to avoid platform TCs issues and changes for correct generating BUFFER_QUEUE values in DB.

Signed-off-by: alvin_feng <alvin_feng@accton.com>

* Fix error name in platform.json
2022-02-18 15:21:14 +05:30
Richard.Yu
2210c82ef8
[PTF-SAIv2]Add ptf docker for sai-ptf (saiv2) (#9729)
* [PTF-SAIv2]Add ptf dockre for sai-ptf (saiv2)

Base on current ptf docker create a new docker for sai-ptf(saiv2)
upgrade related package
use the latest ptf and install it

test done:
NOJESSIE=1 NOSTRETCH=1 NOBULLSEYE=1 ENABLE_SYNCD_RPC=y make target/docker-ptf-sai.gz
BLDENV=buster make -f Makefile.work target/docker-ptf-sai.gz

* upgrade the thrift to 014
2022-02-18 01:48:50 -08:00
Myron Sosyak
bec35267cb
[BFN] syncd-rpc build with thrift 0.14.1 (#9884) 2022-02-18 01:44:42 -08:00
Myron Sosyak
125fe9907a
Bump Thrift version from 0.13.0 to 0.14.1 (#9881)
#### Why I did it
To bump the Thrift version to 0.14.1 
- To avoid [CVE-2020-13949](https://nvd.nist.gov/vuln/detail/CVE-2020-13949) 
- to fix some dependencies issues

#### How I did it
- rename `src/thrfit_0_13_0` to `src/thrift_2` to remove version number in the path. (`src/thrift` contains rules to build thrift 0.11.0  )
- Add thrift sources as submodule as there are no prepared debian packages for version >0.13.0 on [debian.org](https://packages.debian.org/search?searchon=sourcenames&keywords=thrift)
- Added patches with fixes for original thrift debian rules:(remove unneeded packages, fix multi job build)
#### How to verify it
```
BLDENV=buster make -f Makefile.work target/debs/buster/libthrift-dev_0.14.1_amd64.deb
```
2022-02-15 16:39:47 -08:00
Dror Prital
cf1bc8dc65
[Mellanox] Upgrade ASIC FW tool to 4.18.1-16 (#9981)
- Why I did it
Update MFT to version 4.18.1-16 for bugs fixes and new SN2201 support

- How I did it
Advance to MFT tool version to 4.18.1-16

- How to verify it
Manually tested on all Mellanox platforms (ASIC FW Upgrade, link debug tools, CPLD upgrade, etc.)
2022-02-14 10:39:47 +02:00
Marty Y. Lok
aad27615e9
Update Nokia sonic-platform submodule (#9963)
ded0344 Return both 'vendor_rev' and 'hardware_rev' keys from get_transceiver_info to support both earlier and later versions of xcvrd
b3442cc Change log_error to log_info when transceiver module is transitioned
3d3a73c Fix problem introduced with new SFP caching paradigm
2915746 Add script to reboot all IMMs
17ad221 Fix the position_in_parent for the psu entity
207e731 No longer force read pages at SFP init time
b387921 Fixed the voltage and power with rounding to 2 digit decimals

Signed-off-by: mlok <marty.lok@nokia.com>
2022-02-13 17:18:39 -08:00
Stephen Sun
486e9b0c75
Fix issue: module id got from get_change_event is wrong (#9961)
Signed-off-by: Stephen Sun <stephens@nvidia.com>
2022-02-13 09:20:37 +05:30
Aravind Mani
09b0cc2cce
DellEMC: Fix Z9332f thermalctld warning logs (#9943) 2022-02-10 09:16:58 -08:00
jostar-yang
519dcde939
[AS7712-32X] Add to support PDDF (#8040)
* [AS7712-32X] Add to support PDDF

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>

* Fix LGTM alerts

* Fix AS7712-32X xcvrd busy issue

Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-02-10 22:09:50 +05:30
jostar-yang
f9a29ef056
[AS4630-54PE] Add to support PDDF (#8014)
* [AS4630-54PE] Add to support PDDF

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>

* Fix LGTM alerts

* Fix LGTM alerts

* Fix  LGTM alerts

* Add post_device.sh to turn off stk led

* Add to support system_health

* Correct the wait and timeout mechanism for better CPU usage

* Add event.c to support port evt change

Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-02-10 22:09:05 +05:30
Richard.Yu
49382d773e
[SAIServerV2] Build SAI Serverv2 docker (#9509)
Support saiserver v2 with python3 and thrift 0.13.0

add variables to support the saiserverv2
build different thrift in saithrift depends on saiserver version
build differernt versions of saiserver
make the saiserver and saiserver docker with version number

test done:
build two different versions of sasiserver in local build environment

add saiserver to buster

Co-authored-by: richard.yu <richard.yu@microsoft.comwq>
2022-02-08 02:56:34 -08:00
Andriy Kokhan
09b3efccc9
[BFN] Updated SDK to 20220127_sai_1.9.1 (#9870)
Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>
2022-02-08 02:36:07 -08:00
gechiang
ddfe87a71a
[BRCMSAI 6.0.0.13-1] Fix Cancun file directory at new location causing TD3 platform boot issue (#9922) 2022-02-07 08:56:06 -08:00
jostar-yang
9c5f38b9f3
[AS7726-32X] Add to support mulit PSU SN in PDDF (#8164)
* [AS7726-32X] Add to support mulit PSU in PDDF

Signed-off-by: Jostar Yang <jostar_yang@accton.com.tw>

* Modify SN offset and include path

* Fix device_name to PSU2-EEPROM in PSU2

Co-authored-by: Jostar Yang <jostar_yang@accton.com.tw>
2022-02-07 22:03:11 +05:30
Alexander Allen
0ae2906c06
[Mellanox] Update mellanox hw-mgmt submodule and versions to V.7.0020.1300 (#9860)
- Why I did it
New version of mellanox platform management code available adding support for new platforms and fixing bugs.

- How I did it
1. Updated the submodule
2. Updated makefile version references
3. Regenerated SONiC patches
2022-02-06 16:42:53 +02:00
Vadym Yashchenko
256c47ac49
[BFN] Removed thermal manager for BMC-based platforms (#9883)
* Remove tm and all dependancies

Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>

* Removed line connected with thermal_manager

Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>
2022-02-02 17:28:58 +05:30
Samuel Angebault
7a3a433b8d
[Arista] Update platform submodules (#9895) 2022-02-02 16:23:45 +05:30
Rajkumar-Marvell
a0df351869
[Marvell] Update armhf SAI deb version 1.9.1 (#9865)
Move marvell armhf SAI deb to 1.9.1 to address build failures.

Signed-off-by: Rajkumar Pennadam Ramamoorthy <rpennadamram@marvell.com>
2022-01-30 21:57:23 -08:00
Junchao-Mellanox
43e967d6a4
Fix issue: 'sx_port_mapping_t' object has no attribute 'slot_id' (#9835)
- Why I did it
Fix issue: 'sx_port_mapping_t' object has no attribute 'slot_id'. sx_port_mapping_t only has attribute slot.

- How I did it
Change slot_id to slot.

- How to verify it
Manual test
2022-01-27 07:38:32 +02:00
Junchao-Mellanox
8e590da563
[Mellanox] Fix select timeout in sfp event (#9795)
- Why I did it
Python select.select accept a optional timeout value in seconds, however, the value passes to it is a value in millisecond.

- How I did it
Transfer the value to millisecond.

- How to verify it
Manual test
2022-01-27 07:36:56 +02:00
Dror Prital
f24f19391b
[Mellanox] Update SDK/FW to 4.5.1208/2010.1218 and SAI version to 1.20.2.5 (#9619)
- Why I did it
To include latest SDK fixes:
1.  On CMIS modules, after low power configuration, the firmware waited for the module state to be ModuleReady instead of ModuleLowPower causing delays.
2. When connecting SN4600C, 100GbE port with CWDM4 module (Gen 3.0), link up time is 30 seconds.

and to include SAI fixes \ changes:
1. Reduce verbosity for resource check vendor data not found
2. Fix metadata validation, check default value on conditions check
3. Add 100MB, 10MB to 2201 system
4. L3 VXLAN overlay ECMP
5. VXLAN srcport API implementation
6. Fix scheduler profile null (default values) when set on sub group scheduler group
7. Fix ACL binding restoration when port leaves a LAG
8. Fix route logic for set next hop/action and reference counter for ECMP overlay

- How I did it
1. Updated SDK/FW submodule and relevant makefiles with the required versions.
2. Update SAI submodule and relevant makefile with the required version.

- How to verify it
Build an image and run tests from "sonic-mgmt".
2022-01-26 11:01:55 +02:00
Alexander Allen
8a07af95e5
[Mellanox] Modified Platform API to support all firmware updates in single boot (#9608)
Why I did it
Requirements from Microsoft for fwutil update all state that all firmwares which support this upgrade flow must support upgrade within a single boot cycle. This conflicted with a number of Mellanox upgrade flows which have been revised to safely meet this requirement.

How I did it
Added --no-power-cycle flags to SSD and ONIE firmware scripts
Modified Platform API to call firmware upgrade flows with this new flag during fwutil update all
Added a script to our reboot plugin to handle installing firmwares in the correct order with prior to reboot
How to verify it
Populate platform_components.json with firmware for CPLD / BIOS / ONIE / SSD
Execute fwutil update all fw --boot cold
CPLD will burn / ONIE and BIOS images will stage / SSD will schedule for reboot
Reboot the switch
SSD will install / CPLD will refresh / switch will power cycle into ONIE
ONIE installer will upgrade ONIE and BIOS / switch will reboot back into SONiC
In SONiC run fwutil show status to check that all firmware upgrades were successful
2022-01-24 00:56:38 -08:00
jostar-yang
f5cefb164f
[Accton platform] Fix kernel 5.10 build failed in fan drv (#9744)
Why I did it
Old fan drv will be build fail under kernel 5.10. It get below error message.
/sonic/platform/broadcom/sonic-platform-modules-accton/as7312-54xs/modules/accton_as7312_54x_fan.c:483:5: error: implicit declarat ion of function 'set_fs'; did you mean 'sget_fc'? [-Werror=implicit-function-declaration]
set_fs(KERNEL_DS);
^~~~~~
sget_fc

How I did it
These code is old design and they are not needed currently. So remove them.

Signed-off-by: Jostar Yang <jostar_yang@accton.com>
2022-01-22 10:37:51 -08:00