-
Notifications
You must be signed in to change notification settings - Fork 182
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
[sonic_platform_base] support new-platform-api-based daemons #48
Conversation
1. add "_eeprom" field into class ChassisBase so that syseepromd can access eeprom related stuff.
originally we intend to remain some APIs defined in sfputilbase to implement functions like transition between logical and physical ports. However, we ignored the fact that sfputilbase is an abstract class and can't be instantiated, which is also part of refractoring pmon. to solve the issue, we have to introduce a new helper module which only remains the required APIs: read_porttab_mappings, which reads port_config.ini and generats mappings get_physical_to_logical get_logical_to_physical is_logical_port
Please fix new conflicts. |
Sorry for the conflict. I'll do it. |
@stephenxs: When fixing the conflicts, please feel free to do what you think is best, and we'll discuss any differences of opinion in review. Also, unrelated: can you please check my new question on a PR which I already merged?: https://github.com/Azure/sonic-buildimage/pull/3198/files#r309356059 |
Done. Please review. If this style is acceptable, I would also like to update comments of get_transceiver_info. |
Sure.
BTW, if you don’t have other suggestion, I would like to update the comments in front of get_transceiver_bulk_status as well.
@@ -83,45 +83,45 @@ def get_transceiver_threshold_info(self):
========================================================================
keys |Value Format |Information
…---------------------------|---------------|----------------------------
- Temperature High Alarm |FLOAT |High Alarm Threshold value,
+ temphighalarm |FLOAT |High Alarm Threshold value,
| |of temperature in Celsius.
I think it would be fine to keep the Information field on one line instead of splitting into two. The lines might be a bit long, but it should be around 100 chars, so I think it would be fine, and it would make the list shorter.
|
1. adjust the comments in front of get_transceiver_threshold_info 2. adjust the definitions of keys of dictions returned by get_transceiver_bulk_status so that they can be better aligned with old-style plugins.
lost-of-signal => loss-of-signal
[sonic-platform-common] [sonic_sfp] Interpret sff 'int' element =0 as valid value (sonic-net/sonic-platform-common#51) add more error code to get_transceiver_change_event ((sonic-net/sonic-platform-common#50) [sonic_platform_base] support new-platform-api-based daemons ((sonic-net/sonic-platform-common#48) sync change to sonic_platform_base/sonic_sfp and create symbol link ((sonic-net/sonic-platform-common#49) Add parser support for Tx_RxLos,TxFault, PowerControl, ResetStatus in sff8436.py ((sonic-net/sonic-platform-common#45) readd type_abbrv_name in sonic_sfp/sff8436.py ((sonic-net/sonic-platform-common#44) [psu_base] get_status_led() returns current state of the status LED ((sonic-net/sonic-platform-common#39) Fix abbrv name for OSFP ((sonic-net/sonic-platform-common#36) [sff8436] support "Control Bytes" and "Options" ((sonic-net/sonic-platform-common#38) sonic_sfp: avoid possible key error in get_physical_to_logical() ((sonic-net/sonic-platform-common#37) [sonic-platform-daemons] [xcvrd] Enhance xcvrd to handle new system level event/error (sonic-net/sonic-platform-daemons#39) [xcvrd] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#38) [psud] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#37) [syseepromd] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#36) Add missing import statemet (sonic-net/sonic-platform-daemons#32) sonic_xcvrd: Support for DOM Threshold values for EEPROM dump (sonic-net/sonic-platform-daemons#29)
…ic-net#3333) [sonic-platform-common] [sonic_sfp] Interpret sff 'int' element =0 as valid value (sonic-net/sonic-platform-common#51) add more error code to get_transceiver_change_event ((sonic-net/sonic-platform-common#50) [sonic_platform_base] support new-platform-api-based daemons ((sonic-net/sonic-platform-common#48) sync change to sonic_platform_base/sonic_sfp and create symbol link ((sonic-net/sonic-platform-common#49) Add parser support for Tx_RxLos,TxFault, PowerControl, ResetStatus in sff8436.py ((sonic-net/sonic-platform-common#45) readd type_abbrv_name in sonic_sfp/sff8436.py ((sonic-net/sonic-platform-common#44) [psu_base] get_status_led() returns current state of the status LED ((sonic-net/sonic-platform-common#39) Fix abbrv name for OSFP ((sonic-net/sonic-platform-common#36) [sff8436] support "Control Bytes" and "Options" ((sonic-net/sonic-platform-common#38) sonic_sfp: avoid possible key error in get_physical_to_logical() ((sonic-net/sonic-platform-common#37) [sonic-platform-daemons] [xcvrd] Enhance xcvrd to handle new system level event/error (sonic-net/sonic-platform-daemons#39) [xcvrd] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#38) [psud] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#37) [syseepromd] Support both new platform API and old platform plugins (sonic-net/sonic-platform-daemons#36) Add missing import statemet (sonic-net/sonic-platform-daemons#32) sonic_xcvrd: Support for DOM Threshold values for EEPROM dump (sonic-net/sonic-platform-daemons#29)
[sonic_platform_base/chassis]
[sonic_platform_base/sonic_sfp/sfputilhelper]
For xcvrd, originally we plan to remain the module sfputilbase to provide functions like mapping between logical and physical interfaces. However, SfpUtilBase is an abstract class and can not be instantiated. In that case, a new module sfputilhelper has to be introduced to provide the required interfaces.
[sonic_platform_base/sfp_base]
support interface get_transceiver_threshold_status