Skip to content

Commit 50035b4

Browse files
Support parsing gearbox configuration from media_settings.json
Add support for configuring gearbox line-side and system-side signal integrity settings via the media_settings.json configuration file. The changes here are following the direction set in the HLD at https://github.com/sonic-net/SONiC/blob/39d1069500d8c20b71fef012374ca47c66b62e97/doc/media-settings/Dynamic-gearbox-tuning.md. This allows signal integrity settings to be configured for both the line-side and system-side of a gearbox in the following manner: ``` { "GEARBOX_GLOBAL_MEDIA_SETTINGS": { "1-31": { "line": { "COPPER100": { # pre3, pre2, pre1, main, post1, post2, post3 } }, "system": { "COPPER100": { # pre3, pre2, pre1, main, post1, post2, post3 } }, } }, "GEARBOX_PORT_MEDIA_SETTINGS": { "32": { "line": { "COPPER100": { # pre3, pre2, pre1, main, post1, post2, post3 } }, "system": { "COPPER100": { # pre3, pre2, pre1, main, post1, post2, post3 } }, } } } ``` Without this, there is currently no way to configure a gearbox's signal integrity settings via media_settings.json. Instead, configuration is solely managed by the gearbox_config.json file. However, that file does not allow dynamic control of SI settings since it is programmed on gearbox initialization -- if new physical media is used, the values in gearbox_config.json need to be updated manually. The media_settings.json file allows specification of different configurations for different physical media, obviating the need to manually update SI settings when using different physical media. Consolidating signal integrity settings configuration into media_settings.json also simplifies the configuration process overall.
1 parent 8e2353f commit 50035b4

File tree

3 files changed

+1126
-30
lines changed

3 files changed

+1126
-30
lines changed

0 commit comments

Comments
 (0)