sonic-buildimage/platform/pddf
FuzailBrcm 120aa78b07
[pddf]: Modifying the PDDF common platform APIs as per the LED driver changes (#13474)
Why I did it
LED driver changed due to introduction of FPGA support. The PDDF parser and APIs need to be updated. In turn the common platform APIs also require changes.

How I did it
Changed the get/set status LED APIs for PSU, fan and fan_drawer.
Changed the color strings to plain color name. e.g. 'STATUS_LED_COLOR_GREEN' has been changed to 'green'
Added support for LED color get operation via BMC
How to verify it
Verified the new changes on Accton AS7816-64X platform.

root@sonic:/home/admin#
root@sonic:/home/admin# show platform summary
Platform: x86_64-accton_as7816_64x-r0
HwSKU: Accton-AS7816-64X
ASIC: broadcom
ASIC Count: 1
Serial Number: AAA1903AAEV
Model Number: FP3AT7664000A
Hardware Revision: N/A
root@sonic:/home/admin#
root@sonic:/home/admin# show ver |more

SONiC Software Version: SONiC.master.0-dirty-20230111.010655
Distribution: Debian 11.6
Kernel: 5.10.0-18-2-amd64
Build commit: 3176b15ae
Build date: Wed Jan 11 09:12:54 UTC 2023
Built by: fk410167@sonic-lvn-csg-006

Platform: x86_64-accton_as7816_64x-r0
HwSKU: Accton-AS7816-64X
ASIC: broadcom
ASIC Count: 1
Serial Number: AAA1903AAEV
Model Number: FP3AT7664000A
Hardware Revision: N/A
Uptime: 09:24:42 up 4 days, 22:45,  1 user,  load average: 1.97, 1.80, 1.51
Date: Mon 23 Jan 2023 09:24:42

Docker images:
REPOSITORY                    TAG                              IMAGE ID       SI
ZE
docker-orchagent              latest                           63262c7468d7   38
5MB
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin# pddf_ledutil getstatusled LOC_LED
off
root@sonic:/home/admin# pddf_ledutil getstatusled DIAG_LED
green
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin# pddf_ledutil setstatusled DIAG_LED red
True
root@sonic:/home/admin# pddf_ledutil getstatusled DIAG_LED
red
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin# pddf_ledutil setstatusled DIAG_LED amber
Invalid color
False
root@sonic:/home/admin# pddf_ledutil getstatusled DIAG_LED
red
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin# pddf_ledutil setstatusled DIAG_LED green
True
root@sonic:/home/admin# pddf_ledutil getstatusled DIAG_LED
green
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin#
root@sonic:/home/admin# pddf_ledutil getstatusled LOC_LED
off
root@sonic:/home/admin# pddf_ledutil setstatusled LOC_LED amber
True
root@sonic:/home/admin# pddf_ledutil getstatusled LOC_LED
amber
root@sonic:/home/admin# pddf_ledutil setstatusled LOC_LED off
True
root@sonic:/home/admin# pddf_ledutil getstatusled LOC_LED
off
root@sonic:/home/admin#
2023-02-02 11:23:30 -08:00
..
i2c [pddd]: Adding support for I2CFPGA in PDDF (#13475) 2023-02-02 11:20:59 -08:00
platform-api-pddf-base [pddf]: Modifying the PDDF common platform APIs as per the LED driver changes (#13474) 2023-02-02 11:23:30 -08:00
platform-api-pddf-base.dep [pddf]: Update PDDF utils and common platform APIs for Debian Bullseye (#9585) 2022-01-02 22:27:01 -08:00
platform-api-pddf-base.mk Python 2 removal/cleanup 2021-11-10 15:27:22 -08:00
platform-modules-pddf.dep Platform Driver Developement Framework (PDDF) (#4756) 2020-11-12 10:22:38 -08:00
platform-modules-pddf.mk [ragile] adapter for kernel 5.x (#10762) 2023-01-12 18:01:47 -08:00
README.md Platform Driver Developement Framework (PDDF) (#4756) 2020-11-12 10:22:38 -08:00
rules.dep Platform Driver Developement Framework (PDDF) (#4756) 2020-11-12 10:22:38 -08:00
rules.mk Platform Driver Developement Framework (PDDF) (#4756) 2020-11-12 10:22:38 -08:00

Platform Driver Development Framework (PDDF) is part of SONiC Platform Development Kit (PDK) which optimizes the platform developement.

SONiC PDDF (Platform driver development framework) supports the following HW devices on a given platform:

  • Fan
  • PSU
  • System EEPROM
  • CPLD
  • CPLDMUX
  • GPIO
  • Optic Transceivers
  • System LED control via CPLD
  • System Status Registers in CPLD
  • Temp Sensors

This folder for the PDDF consists of the following:

  • PDDF python utility scripts
  • Generic PDDF HW device drivers in kernel space