sonic-buildimage/platform/broadcom/sonic-platform-modules-accton/as5835-54x/utils
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
..
accton_as5835_54x_monitor_fan.py Update Accton platform module for Bullseye and 5.10 kernel 2021-11-10 15:27:22 -08:00
accton_as5835_54x_monitor_psu.py Update Accton platform module for Bullseye and 5.10 kernel 2021-11-10 15:27:22 -08:00
accton_as5835_54x_monitor.py Edgecore 4630/5835/7326/7816 API2.0 platform support (#10053) 2022-03-18 06:17:08 +05:30
accton_as5835_54x_util.py Edgecore 4630/5835/7326/7816 API2.0 platform support (#10053) 2022-03-18 06:17:08 +05:30
README

Copyright (C) 2016 Accton Networks, Inc.

This program is free software: you can redistribute it and/or modify
It under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

Contents of this package:
  module - Contains source code of as7326 kernel driver modules.
  util   - operational scripts.

Sonic creates a docker container and run building process under it.
If user tries to built new drivers, please get into that docker and 
dpkg-buildpackage for them.

All Linux kernel code is licensed under the GPLv1. All other code is
licensed under the GPLv3. Please see the LICENSE file for copies of
both licenses.

The code for integacting with Accton AS5835-54X has 2 parts, 
kernel drivers and operational script. 
The kernel drivers of peripherals are under module/ directory.
1.  These drivers can be built to individual ko during dpkg-buildpackage.
2.  A operational script, accton_as7326_util.py, for device initializatian.
    Run "accton_as5835_54x_util.py install" to install drivers.

To initialize the system, run "accton_as5835_54x_util.py install".
To clean up the drivers & devices, run "accton_as5835_54x_util.py clean".
To dump information of sensors, run "accton_as5835_54x_util.py show".
To dump SFP EEPROM, run "accton_as5835_54x_util.py sff".
To set fan speed, run "accton_as5835_54x_util.py set fan".
To enable/disable SFP emission, run "accton_as5835_54x_util.py set sfp".
To set system LEDs' color, run "accton_as5835_54x_util.py set led"
For more information, run "accton_as5835_54x_util.py --help".

====================================================================
Besides applying accton_as7326_util.py to access peripherals, you can 
access peripherals by sysfs nodes directly after the installation is run.

System LED:
    There are 5 system LEDs at the lower-left corner of front panel.
    They are  loc, diag, fan, ps1, and ps2. 
    The sysfs interface color mappings are as follows:
    Brightness:
        0 => off
        1 => green
        2 => green blinking
        3 => amber
        4 => amber blinking
    But not all colors are available for each LED.

Fan Control:
    There are 10 fans inside 5 fan modules.
    All fans share 1 duty setting, ranged from 0~100.

Thermal sensers:
    4 temperature sensors are controlled by the lm75 kernel modules. 

PSUs:
    There 2 power supplies slot at the left/right side of the back.
    Once if a PSU is not plugged, the status of it is shown failed.

There are 48 SFP+ and 6 QSFP modules are equipped. 
Before operating on PSU and QSFP+, please make sure it is well plugged. 
Otherwise, operation is going to fail.