Commit Graph

35 Commits

Author SHA1 Message Date
Wirut Getbamrung
cfda77b3de
[device/celestica]: Add thermalctld support on Haliburton platform APIs (#6493)
- Removed the old function for detecting a faulty fan.
- Removed the old function for detecting excess temperature.
- Implement thermal_manager APIs based on ThermalManagerBase
- Implement thermal_conditions APIs based on ThermalPolicyConditionBase
- Implement thermal_actions APIs based on ThermalPolicyActionBase
- Implement thermal_info APIs based on ThermalPolicyInfoBase
- Add thermal_policy.json
2021-05-03 09:14:35 -07:00
Ying Xie
197dd4e675
[e1031] add GbE and higig port to E1031 port_config.ini (#7208)
Why I did it
These ports are being enumerated by the latest SAI. But they are not defined in port_config.ini.

SONiC end up trying to delete these 3 ports and hit SAI error and crash.

How I did it
Add the GbE and the 2 HiGig ports in the port_config.ini.

How to verify it
Put the port_config.ini on a device crashing with port deleting. load minigraph and the crash stopped.

Signed-off-by: Ying Xie ying.xie@microsoft.com
2021-04-01 07:46:03 -07:00
Dmytro Shevchuk
d8627e6414
[yang] update yang model, add autoneg to sonic-port (#5963)
Dynamic Port Breakout fall in case "autoneg" field exist in config_db.

- How I did it
Added "autoneg" field in sonic-port yang model.

- How to verify it
Add "autoneg" field into config_db like this:

"Ethernet8": {
    "index": "2", 
    "lanes": "8,9,10,11", 
    "fec": "rs", 
    "pfc_asym": "off", 
    "mtu": "9100", 
    "alias": "Ethernet8", 
    "admin_status": "up", 
    "autoneg": "on", 
    "speed": "100000",
},
2021-03-30 08:27:58 -07:00
Wirut Getbamrung
6ae2cb5607
[device/celestica]: Add xcvrd event support for Haliburton (#6517)
#### Why I did it
- The xcvrd service requires an event detection function, unplug or plug in the transceiver.

#### How I did it
- Add sysfs interrupt to notify userspace app of external interrupt
- Implement get_change_event() in chassis api.
- Also begin installing Python 3 sonic-platform package for Celestica platforms
2021-03-08 10:10:11 -08:00
Joe LeVeque
c6178259fc
[Celestica] Ensure concrete platform API classes call base class initializer (#6852)
In preparation for the merging of Azure/sonic-platform-common#173, which properly defines class and instance members in the Platform API base classes.

It is proper object-oriented methodology to call the base class initializer, even if it is only the default initializer. This also future-proofs the potential addition of custom initializers in the base classes down the road.
2021-02-25 11:20:53 -08:00
Sujin Kang
d5238ae8dd
[pcie.yaml] Move pcie configuration file path to platform directory (#6475)
- Why I did it
The pcie configuration file location is under plugin directory not under platform directory.
#6437

- How I did it

Move all pcie.yaml configuration file from plugin to platform directory.
Remove unnecessary timer to start pcie-check.service
Move pcie-check.service to sonic-host-services
- How to verify it
Verify on the device
2021-02-21 08:27:37 -08:00
bingwang-ms
49804c64b6
[celestica/dx010]: Fix incorrect path for voltage, current and power. (#6128)
Fixes #6126.

There is a bug in getting the path of voltage, current and power. The
list object is directly converted to string to format the file path. As
a result, read_txt_file will get None value and a WARNING will be
recorded. This commit fix the issue.

Signed-off-by: bingwang <bingwang@microsoft.com>
2020-12-04 13:41:20 -08:00
Joe LeVeque
7f4ab8fbd8
[sonic-utilities] Update submodule; Build and install as a Python 3 wheel (#5926)
Submodule updates include the following commits:

* src/sonic-utilities 9dc58ea...f9eb739 (18):
  > Remove unnecessary calls to str.encode() now that the package is Python 3; Fix deprecation warning (#1260)
  > [generate_dump] Ignoring file/directory not found Errors (#1201)
  > Fixed porstat rate and util issues (#1140)
  > fix error: interface counters is mismatch after warm-reboot (#1099)
  > Remove unnecessary calls to str.decode() now that the package is Python 3 (#1255)
  > [acl-loader] Make list sorting compliant with Python 3 (#1257)
  > Replace hard-coded fast-reboot with variable. And some typo corrections (#1254)
  > [configlet][portconfig] Remove calls to dict.has_key() which is not available in Python 3 (#1247)
  > Remove unnecessary conversions to list() and calls to dict.keys() (#1243)
  > Clean up LGTM alerts (#1239)
  > Add 'requests' as install dependency in setup.py (#1240)
  > Convert to Python 3 (#1128)
  > Fix mock SonicV2Connector in python3: use decode_responses mode so caller code will be the same as python2 (#1238)
  > [tests] Do not trim from PATH if we did not append to it; Clean up/fix shebangs in scripts (#1233)
  > Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (#1224)
  > [cli]: NAT show commands newline issue after migrated to Python3 (#1204)
  > [doc]: Update Command-Reference.md (#1231)
  > Added 'import sys' in feature.py file (#1232)

* src/sonic-py-swsssdk 9d9f0c6...1664be9 (2):
  > Fix: no need to decode() after redis client scan, so it will work for both python2 and python3 (#96)
  > FieldValueMap `contains`(`in`)  will also work when migrated to libswsscommon(C++ with SWIG wrapper) (#94)

- Also fix Python 3-related issues:
    - Use integer (floor) division in config_samples.py (sonic-config-engine)
    - Replace print statement with print function in eeprom.py plugin for x86_64-kvm_x86_64-r0 platform
    - Update all platform plugins to be compatible with both Python 2 and Python 3
    - Remove shebangs from plugins files which are not intended to be executable
    - Replace tabs with spaces in Python plugin files and fix alignment, because Python 3 is more strict
    - Remove trailing whitespace from plugins files
2020-11-25 10:28:36 -08:00
Joe LeVeque
8011edc307
[platform] Remove references to deprecated get_serial_number() method in Chassis class (#5649)
The `get_serial_number()` method in the ChassisBase and ModuleBase classes was redundant, as the `get_serial()` method is inherited from the DeviceBase class. This method was removed from the base classes in sonic-platform-common and the submodule was updated in https://github.com/Azure/sonic-buildimage/pull/5625.

This PR aligns the existing vendor platform API implementations to remove the `get_serial_number()` methods and ensure the `get_serial()` methods are implemented, if they weren't previously.

Note that this PR does not modify the Dell platform API implementations, as this will be handled as part of https://github.com/Azure/sonic-buildimage/pull/5609
2020-10-17 22:00:14 -07:00
abdosi
a6a10f05b7
In SAI 3.5 by default we are supporting 256 Group with 64 Memeber each. (#5400)
However in SAI 3.7 default behaviout got changes to 128 Group and 128
    Memeber each.

    This change is to make sure we are using same ECMP Group/Memeber Per
    Group for 3.7 also so that behaviour is consistent.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-09-22 11:21:12 -07:00
Joe LeVeque
3b89e5d467
[Python] Migrate applications/scripts to import sonic-py-common package (#5043)
As part of consolidating all common Python-based functionality into the new sonic-py-common package, this pull request:
1. Redirects all Python applications/scripts in sonic-buildimage repo which previously imported sonic_device_util or sonic_daemon_base to instead import sonic-py-common, which was added in https://github.com/Azure/sonic-buildimage/pull/5003
2. Replaces all calls to `sonic_device_util.get_platform_info()` to instead call `sonic_py_common.get_platform()` and removes any calls to `sonic_device_util.get_machine_info()` which are no longer necessary (i.e., those which were only used to pass the results to `sonic_device_util.get_platform_info()`.
3. Removes unused imports to the now-deprecated sonic-daemon-base package and sonic_device_util.py module

This is the next step toward resolving https://github.com/Azure/sonic-buildimage/issues/4999

Also reverted my previous change in which device_info.get_platform() would first try obtaining the platform ID string from Config DB and fall back to gathering it from machine.conf upon failure because this function is called by sonic-cfggen before the data is in the DB, in which case, the db_connect() call will hang indefinitely, which was not the behavior I expected. As of now, the function will always reference machine.conf.
2020-08-03 11:43:12 -07:00
Joe LeVeque
9905d9382d
[devices] Update SFP keys to align with new standard (#4975)
Align SFP key names with new standard defined in https://github.com/Azure/sonic-platform-common/pull/97

- hardwarerev -> hardware_rev
- serialnum -> serial
- manufacturename -> manufacturer
- modelname -> model
- Connector -> connector
2020-07-16 13:03:50 -07:00
carycelestica
b88770a67b
add PCIe config file (#4724) 2020-06-25 15:02:21 -07:00
Wirut Getbamrung
bac6615bf5 [device/celestica]: Fix xcvrd error (#3979)
* [device/celestica]: add pmon_daemon_control config

* [device/celestica]:  update sfp index follow port_config

* [device/celestica]:  update get_watchdog to avoid multiple daemon try opening watchdog
2020-01-10 12:50:51 -08:00
Wirut Getbamrung
1286e5ed3f [platform/cel]: Remove afulnx_64 (#3900)
remove afulnx_64 install script
2019-12-16 07:30:35 -08:00
Dante (Kuo-Jung) Su
473fc6d4f3 celestica: reallocate the empty LIST at the constructor of subclasses (#3738)
Signed-off-by: Dante Su <dante.su@broadcom.com>
2019-11-12 15:26:11 -08:00
Wirut Getbamrung
ecdd866713 [device/celestica]: Update Component APIs (#3510)
* [platform/cel]: add bios upgrade tool
* [device/celestica]: update Seastone/E1031 component api to support BIOS upgrade
* [device/celestica]: add error handler for eeprom api
* [device/celestica]: add component description
2019-09-27 12:44:16 -07:00
Wirut Getbamrung
150ee07dd2 [device/celestica]: Update new platform APIs (#3415)
* [device/celestica]: Update fan and psu apis

* [device/celestica]: Update sfp apis
2019-09-06 14:58:12 -07:00
Wirut Getbamrung
a5b805e37a [platform/cel]: Add new API installer to pmon and base image (#3379)
* [platform/cel]: Add new api installer

* [device/celestica]: Update APIs to support both pmon and base image

* [device/e1031]: update hwmon name
2019-08-28 11:19:34 -07:00
Wirut Getbamrung
ea063db4b6 [device/celestica]: Implement Sfp APIs based on the new platform API (#3290)
* [platform/cel]: update qsfp driver for dx010

* [device/celestica]: add sfp api

* [device/celestica]: add eeprom api
2019-08-14 17:51:20 -07:00
Wirut Getbamrung
1dd2688844 [device/celestica]: Implement thermal base API based on the new platform API (#3220) 2019-08-05 09:01:50 -07:00
Wirut Getbamrung
0340cf3b8b [device/celestica]: Implement device base APIs for Fan/PSU API based on the new platform API (#3163)
* [platform/cel]: add fan present sysfs

* [device/celestica]: move component device to chassis

* [device/celestica]: add basic device api
2019-07-23 10:00:02 -07:00
Wirut Getbamrung
bd672000ab [device/celestica] Implement Watchdog APIs based on the new platform API (#3123) 2019-07-08 11:26:27 -07:00
Wirut Getbamrung
1616f482e7 [device/celestica]: Add firmware management api based on the new platform API (#3013) 2019-07-02 11:05:18 -07:00
Wirut Getbamrung
94b3c362f8 [device/celestica] Implement PSU APIs based on the new platform API (#2874) 2019-06-25 12:22:13 -07:00
Wirut Getbamrung
38ad2a8dad [platform-celestica] - Implement FAN APIs based on the new platform API (#2739)
* [platform/cel] Implement FAN APIs based on the new platform API

* [platform/cel] Move platform api to under device platform

* [platform/cel] Remove rule to build platform api python wheel
2019-05-09 00:57:17 -07:00
Pradchaya Phucharoen
9525f862fa [devices]: Haliburton xcvrd event support (#2486)
* [platform/broadcom] Add xcvr event interrupt for haliburton

* [device/celestica] Sfputil implement xcvr event monitor on haliburton

* Codes cleanup, remove gpio_ich module unload line
2019-04-18 02:30:50 -07:00
Wirut Getbamrung
4fcb3321b2 [platform-celestica]: Add new fancontrol service for haliburton device (#2736) 2019-04-10 19:13:30 -07:00
Pradchaya Phucharoen
957d8f541b [device/celestica] haliburton add gpio_ich driver module blacklist (#2704) 2019-03-27 18:35:35 -07:00
bbinxie
d96660972b Add config.bcm file for hlx and modify config.bcm path in sai.profile (#2333)
* add config.bcm for hlx

* modify config.bcm path for hlx

* Delete hx4-cel-hbtn-48x1G+4x10G.config.bcm

* add config.bcm and path

* [submodule]: Update sairedis and utilities pointers (#2334)
2018-12-04 09:22:38 -08:00
Taoyu Li
018b5899be [updategraph] add support to use preset config instead of default minigraph (#2050)
* [updategraph] add support to use preset config instead of default minigraph

* Fix variable case

* Remove default minigraph case

* Remove default minigraphs and add default_sku files
2018-09-21 22:01:10 -07:00
Pradchaya P
e8db1846ad [platform-device/haliburton] Support xcvr and sensor monitoring (#1998)
* [platform/haliburton] Fix kernel panic when remove smc module.

* [platform/haliburton] Chanage sysfs to support module interrupt

* [device/haliburton] Update sfputil to use new sysfs.

* [device/haliburton] sfputil to support xcvrd monitoring.
2018-08-29 08:50:29 -07:00
Wirut Getbamrung
27bdc00be3 [platform/device] - Update Haliburton platform modules and device configuration (#1975)
* Add psuutil and sfputil support

* Fixed fancontrol issue

* Add sensor's label

* Update haliburton platform modules
2018-08-23 13:43:05 -07:00
Guohan Lu
3021e4efd6 [devices]: add celstica haliburton
Signed-off-by: Guohan Lu <gulv@microsoft.com>
2018-08-11 09:09:03 +00:00
lguohan
75361042f5
[device]: add support for celestica E1031 (#1528) 2018-08-04 21:19:29 -07:00