sonic-buildimage/platform/broadcom/sonic-platform-modules-accton/as7816-64x/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_as7816_64x_monitor.py Edgecore 4630/5835/7326/7816 API2.0 platform support (#10053) 2022-03-18 06:17:08 +05:30
accton_as7816_64x_util.py Edgecore 4630/5835/7326/7816 API2.0 platform support (#10053) 2022-03-18 06:17:08 +05:30
accton_as7816_pddf_monitor.py Update Accton platform module for Bullseye and 5.10 kernel 2021-11-10 15:27:22 -08:00
pddf_post_device_create.sh [Accton] Enable pca954x i2c mux idle_disconnect for 5.10 kernel (#9745) 2022-01-12 13:43:47 -08:00
pddf_switch_svc.py Update Accton platform module for Bullseye and 5.10 kernel 2021-11-10 15:27:22 -08:00
pre_pddf_init.sh [as7816-64x]Modify to check specific DUT (#7826) 2022-03-01 13:09:17 -08:00
README [devices]: move platform modules of accton, ingrasys, mitac, quanta into buildimage repo 2018-08-11 09:09:03 +00:00

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/>.

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

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

LED controls can be found under /sys/class/leds. The sysfs interface
color mappings are as follows:
Brightness:
  0 => off
  1 => green
  2 => amber
  3 => red
  4 => blue

There are 5 system LEDs, loc, diag, fan, ps1, and ps2. 
They are lit automatically by CPLD, but the loc and diag.
The loc led has only 1 color, blue.
The diag one has 3 colors: red, amber, and green.

Fan controls can be found in /sys/bus/i2c/devices/2-0066.
There are 12 fans inside 6 fan modules.
All fans share 1 duty setting, ranged from 0~100.

Three temperature sensors are controlled by the lm75 kernel modules. 
They should already be visible under /sys/bus/i2c/drivers/lm75/.

Two power supplies are controlled by the CPLD. 
Here provide their status under
/sys/bus/i2c/devices/10-0050 and /sys/bus/i2c/devices/11-0053.

There are 32 QSFP+ modules are equipped. 
Apply "accton_as7712_util.py show" to get their status. 
Apply "accton_as7712_util.py set sfp" to turn on/off light transmission.
Apply "accton_as7712_util.py sff" to dump EEPROM information.
Before operating on that QSFP+, please make sure it is well plugged. 
Otherwise, operation is going to fail.