S3IP sysfs specification

Table of Content

1. LED enumeration values

ValueDescription
0dark
1green
2yellow
3red
4blue
5green light flashing
6yellow light flashing
7red light flashing
8blue light flashing

2. Temperature sensor sysfs

The sysfs path of the temperature sensor information must be /sys_switch/temp_sensor/

Table2-1 Temperature Sensor SYSFS property

Sysfs pathPermissionsData typeDescription
/sys_switch/temp_sensor/numberROintTotal number of temperature sensors
/sys_switch/temp_sensor/temp[n]/aliasROstringIdentify temperature point location
/sys_switch/temp_sensor/temp[n]/typeROstringTemperature sensor model
/sys_switch/temp_sensor/temp[n]/maxR/WintAlarm threshold, unit: millidegree Celsius
/sys_switch/temp_sensor/temp[n]/minR/WintAlarm recovery threshold, unit: millidegree Celsius
/sys_switch/temp_sensor/temp[n]/valueROintCurrent temperature, unit: millidegree Celsius

3. Voltage sensor sysfs

The sysfs path of the voltage sensor information must be /sys_switch/vol_sensor/

*Table3-1 Voltage Sensor SYSFS property *

Sysfs pathPermissionsData typeDescription
/sys_switch/vol_sensor/numberROintTotal number of voltage sensors
/sys_switch/vol_sensor/vol[n]/aliasROstringIdentifying the location of the voltage sensor
/sys_switch/vol_sensor/vol[n]/typeROstringModel of the voltage sensor
/sys_switch/vol_sensor/vol[n]/maxR/WintAlarm threshold, unit: mV
/sys_switch/vol_sensor/vol[n]/minR/WintAlarm recovery threshold, unit: mV
/sys_switch/vol_sensor/vol[n]/rangeROintVoltage output error value, such as +-500mV
/sys_switch/vol_sensor/vol[n]/nominal_valueROintNominal value of supply voltage, unit: mV
/sys_switch/vol_sensor/vol[n]/valueROintVoltage value, unit: mV

4. Current sensor sysfs

The sysfs path of the current sensor information must be /sys_switch/curr_sensor/

Table4-1 Current Sensor SYSFS property

Sysfs pathPermissionsData typeDescription
/sys_switch/curr_sensor/numberROintTotal number of current sensors
/sys_switch/curr_sensor/curr[n]/aliasROstringIdentifying the location of the current sensor
/sys_switch/curr_sensor/curr[n]/typeROstringCurrent sensor model
/sys_switch/curr_sensor/curr[n]/maxR/WintAlarm threshold, unit: mA
/sys_switch/curr_sensor/curr[n]/minR/WintAlarm recovery threshold, unit: mA
/sys_switch/curr_sensor/curr[n]/valueROintCurrent value, unit: mA

5. Syseeprom information sysfs

The sysfs path of the syseeprom information must be /sys_switch/syseeprom

Table5-1 Syseeprom info SYSFS property

Sysfs pathPermissionsData typeDescription
/sys_switch/syseepromROintThe file content conforms to the ONIE standard binary

6. Fan information sysfs

The sysfs path of the fan information must be /sys_switch/fan/

Table6-1 fan info sysfs property

Sysfs pathPermissionsData typeDescription
/sys_switch/fan/numberROintTotal number of fans
/sys_switch/fan/fan[n]/model_nameROstringFan name
/sys_switch/fan/fan[n]/serial_numberROstringFan serial number
/sys_switch/fan/fan[n]/part_numberROstringFan Part Number
/sys_switch/fan/fan[n]/hardware_versionROstringFan hardware version number
/sys_switch/fan/fan[n]/motor_numberROintNumber of fan motors
/sys_switch/fan/fan[n]/directionROenumThe duct types are defined as follows:
0: F2B, forward air duct
1: B2F, rear duct
/sys_switch/fan/fan[n]/ratioR/WintMotor speed percentage, value range 0-100
/sys_switch/fan/fan[n]/motor[n]/speedROintSpeed value,unit: RPM
/sys_switch/fan/fan[n]/motor[n]/speed_toleranceROintFan Speed tolerance (error range) ,unit: RPM
/sys_switch/fan/fan[n]/motor[n]/speed_targetROintMotor standard speed value, unit: RPM
/sys_switch/fan/fan[n]/motor[n]/speed_maxROintMaximum motor speed,unit: RPM
/sys_switch/fan/fan[n]/motor[n]/speed_minROintMinimum motor speed,unit: RPM
/sys_switch/fan/fan[n]/statusROenumFan states are defined as follows:
0: not present
1: present and normal
2: present and abnormal
/sys_switch/fan/fan[n]/led_statusR/WenumThe fan status lights are defined as follows:
See the definition of enumeration value of LED status light for details

7. PSU information sysfs

The sysfs path of the PSU(Power Supply Unit) information must be /sys_switch/psu/

Table7-1 Power Information sysfs Property

Sysfs pathPermissionsData typeDescription
/sys_switch/psu/numberROintTotal number of PSUs
/sys_switch/psu/psu[n]/model_nameROstringPSU name
/sys_switch/psu/psu[n]/hardware_versionROstringPSU hardware version number
/sys_switch/psu/psu[n]/serial_numberROstringPSU serial number
/sys_switch/psu/psu[n]/part_numberROstringPSU part number
/sys_switch/psu/psu[n]/typeROenumPSU Type:
0: DC
1: AC
/sys_switch/psu/psu[n]/in_currROintPSU input current, unit: mA
/sys_switch/psu/psu[n]/in_volROintPSU input voltage, unit: mV
/sys_switch/psu/psu[n]/in_powerROintPSU input power, compute it from in_curr * in_vol, unit: uW
/sys_switch/psu/psu[n]/out_max_powerROintThe maximum output power of the PSU, unit: uW
/sys_switch/psu/psu[n]/out_currROintPSU output current, unit: mA
/sys_switch/psu/psu[n]/out_volROintPSU output voltage, unit: mV
/sys_switch/psu/psu[n]/out_powerROintPSU output power, compute it from out_curr * out_vol, unit: uW
/sys_switch/psu/psu[n]/num_temp_sensorsROintNumber of temperature sensors
/sys_switch/psu/psu[n]/temp[n]R/WRefer to temperature sensor definition
/sys_switch/psu/psu[n]/num_power_sensorsROintNumber of power sensors, TBD
/sys_switch/psu/psu[n]/power_sensor[n]R/WRefer to power sensor definition, TBD
/sys_switch/psu/psu[n]/presentROenumState:
0: not present
1: Incumbent
/sys_switch/psu/psu[n]/out_statusROenumOutput status, via POWER_OK inside the power supply pin judgment
0: abnormal
1: normal
/sys_switch/psu/psu[n]/in_statusROenumInput status, judged by AC_OK pin inside the power supply broken
0: abnormal
1: normal
/sys_switch/psu/psu[n]/fan_speedROintPSU fan speed, unit: RPM
/sys_switch/psu/psu[n]/fan_ratioR/WIntPSU fan speed duty cycle
/sys_switch/psu/psu[n]/led_statusROenumThe PSU status lights are defined as follows:
See the definition of enumeration value of LED status light for details

8. Transceiver information sysfs

The sysfs of the transceiver module information must be /sys_switch/transceiver/

Table8-1 Transceiver module information sysfs Property

Sysfs pathPermissionsData typeDescription
/sys_switch/transceiver/power_onR/WenumThe power state of all ports on the system:
0: power off
1: power on
/sys_switch/transceiver/eth[n]/power_onR/WenumThe power state:
0: power off
1: power on
/sys_switch/transceiver/eth[n]/tx_faultROenummodule sending channel exception (including laser/TXCDR)
0: normal
1: abnormal.
This information is exported by eeprom (eg QSFP28 standard), the node may not support;Otherwise, the node must support (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/tx_disableR/WenumOptical signal state
0: Turn on the optical signal
1: Turn off the optical signal.
This information is exported by eeprom (eg QSFP28 standard), the node may not support; Otherwise, the node must support (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/presentROenumPresent state
0: absent, not in place
1: present and normal
/sys_switch/transceiver/eth[n]/rx_losROenumRx loss state(no optical signal received)
0: normal
1: abnormal
This information is exported by eeprom (eg QSFP28 standard), the node may not support;Otherwise, the node must support (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/resetR/WenumReset pin
0: no reset
1: reset
This information supports exporting (such as QSFP28 standard), the node must support it; otherwise, the section point may not be supported (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/low_power_modeROenumLow power mode state
0: high power
1: low power mode
This information supports exporting (such as QSFP28 standard), the node must support it
otherwise, the section point may not be supported (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/interruptROenumModule interrupt flag, indicating whether there is an interrupt
0: No interrupt occurred
1: Interrupt occurs
This information supports exporting (such as QSFP28 standard), the node must support it; otherwise, the section point may not be supported (such as SFP28 standard)
/sys_switch/transceiver/eth[n]/eepromR/Wbinaryeeprom compliant with optical module standards

9. System LED sysfs

The sysfs path of the LED state must be /sys_switch/sysled/

Table9-1 system LED SYSFS property

Sysfs pathPermissionsData typeDescription
/sys_switch/sysled/sys_led_statusR/WenumSystem LED status, refer to LED enumeration value table for details
/sys_switch/sysled/bmc_led_statusR/WenumBMC LED status, refer to LED enumeration value table for details
/sys_switch/sysled/fan_led_statusR/WenumFAN LED status, refer to LED enumeration value table for details
/sys_switch/sysled/psu_led_statusR/WenumPSU LED status, refer to LED enumeration value table for details
/sys_switch/sysled/id_led_statusR/WenumLocation LED status, refer to LED enumeration value table for details

10. FPGA information sysfs

The sysfs path of the FPGA Information must be /sys_switch/fpga/

Table10-1 FPGA Information sysfs Property

Sysfs pathPermissionsData typeDescription
/sys_switch/fpga/numberROintTotal number of FPGAs
/sys_switch/fpga/fpga[n]/aliasROstringFPGA alias, Identifying the location of the FPGA
/sys_switch/fpga/fpga[n]/typeROstringFPGA model
/sys_switch/fpga/fpga[n]/firmware_versionROstringFPGA firmware version number
/sys_switch/fpga/fpga[n]/board_versionROstringFPGA hardware version number
/sys_switch/fpga/fpga[n]/reg_testR/WintTest register, test basic functions available

11. CPLD information sysfs

The sysfs path of the CPLD information must be /sys_switch/cpld/

Table11-1 CPLD information sysfs Property

Sysfs pathPermissionsData typeDescription
/sys_switch/cpld/numberROintTotal number of CPLDs
/sys_switch/cpld/cpld[n]/aliasROstringCPLD alias, Identifying the location of the CPLD
/sys_switch/cpld/cpld[n]/typeROstringCPLD model
/sys_switch/cpld/cpld[n]/firmware_versionROstringCPLD firmware version number
/sys_switch/cpld/cpld[n]/board_versionROstringCPLD hardware version number
/sys_switch/cpld/cpld[n]/reg_testR/WintTest register, test basic function available

12. Watchdog information sysfs

The sysfs path of the watchdog information must be /sys_switch/watchdog/

Table12-1 watchdog information sysfs property

Sysfs pathPermissionsData typeDescription
/sys_switch/watchdog/identifyROstringWatchdog identification, eg iTCO_wdt
/sys_switch/watchdog/enableR/WenumWatchdog Status:
0: inactive
1: active
/sys_switch/watchdog/resetWOintFeed watchdog
/sys_switch/watchdog/timeleftROintWatchdog timeout remaining time, unit:seconds
/sys_switch/watchdog/timeoutR/WintWatchdog timeout, unit: seconds

13. Slot information sysfs

the sysfs path of slot information must be /sys_switch/slot/

Table13-1 Slot information sysfs property

Sysfs pathPermissionsData typeDescription
/sys_switch/slot/numberROintTotal number of card slots
/sys_switch/slot/slot[n]/model_nameROstringSlot name
/sys_switch/slot/slot[n]/hardware_versionROstringSlot hardware version number
/sys_switch/slot/slot[n]/serial_numberROstringSlot serial number
/sys_switch/slot/slot[n]/part_numberROstringSlot part number
/sys_switch/slot/slot[n]/statusROstringSlot status
0: ABSENT, not in place
1: OK, present and normal
2: NOT OK, in place and abnormal
/sys_switch/slot/slot[n]/led_statusR/WenumSlot status light
/sys_switch/slot/slot[n]/num_temp_sensorsROintNumber of temperature sensors on sub card
/sys_switch/slot/slot[n]/temp_sensor[n]R/WRefer to temperature sensor definition
/sys_switch/slot/slot[n]/num_vol_sensorsROintNumber of sub card voltage sensors
/sys_switch/slot/slot[n]/vol_sensor[n]R/WRefer to voltage sensor definition
/sys_switch/slot/slot[n]/num_curr_sensorsROintNumber of sub card current sensors
/sys_switch/slot/slot[n]/curr_sensor[n]R/WRefer to current sensor definition
/sys_switch/slot/slot[n]/num_fpgasROintNumber of sub card FPGAs
/sys_switch/slot/slot[n]/fpga[n]R/WRefer to FPGA Information Sysfs Definition
/sys_switch/slot/slot[n]/num_cpldsROintNumber of sub card CPLDs
/sys_switch/slot/slot[n]/cpld[n]R/WRefer to CPLD information Sysfs definition

14. Power sensor sysfs

The sysfs path of the power sensor information must be /sys_switch/power_sensor/ Note: TBD. This section will be defined in the next stage. Most on-board DC-DC converters (also called PWM or pulse-width modulator chips) provide voltage, current and calculated power. They often provide power In and Power out, allowing easy measurement of efficiency. It is more reliable to read this directly rather than compute it from current * voltage, which might obtain readings at different times and result in invalid computation. It could also be more accurate because multiplying current * power in the controller results in compound loss of precision(rounded value * rounded value)