123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- What: /sys/devices/platform/firmware\:zynqmp-firmware/ggs*
- Date: March 2020
- KernelVersion: 5.6
- Contact: "Jolly Shah" <[email protected]>
- Description:
- Read/Write PMU global general storage register value,
- GLOBAL_GEN_STORAGE{0:3}.
- Global general storage register that can be used
- by system to pass information between masters.
- The register is reset during system or power-on
- resets. Three registers are used by the FSBL and
- other Xilinx software products: GLOBAL_GEN_STORAGE{4:6}.
- Usage::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
- # echo <value> > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
- Example::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
- # echo 0x1234ABCD > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
- Users: Xilinx
- What: /sys/devices/platform/firmware\:zynqmp-firmware/pggs*
- Date: March 2020
- KernelVersion: 5.6
- Contact: "Jolly Shah" <[email protected]>
- Description:
- Read/Write PMU persistent global general storage register
- value, PERS_GLOB_GEN_STORAGE{0:3}.
- Persistent global general storage register that
- can be used by system to pass information between
- masters.
- This register is only reset by the power-on reset
- and maintains its value through a system reset.
- Four registers are used by the FSBL and other Xilinx
- software products: PERS_GLOB_GEN_STORAGE{4:7}.
- Register is reset only by a POR reset.
- Usage::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
- # echo <value> > /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
- Example::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
- # echo 0x1234ABCD > /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
- Users: Xilinx
- What: /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
- Date: March 2020
- KernelVersion: 5.6
- Contact: "Jolly Shah" <[email protected]>
- Description:
- This sysfs interface allows to set the shutdown scope for the
- next shutdown request. When the next shutdown is performed, the
- platform specific portion of PSCI-system_off can use the chosen
- shutdown scope.
- Following are available shutdown scopes(subtypes):
- subsystem:
- Only the APU along with all of its peripherals
- not used by other processing units will be
- shut down. This may result in the FPD power
- domain being shut down provided that no other
- processing unit uses FPD peripherals or DRAM.
- ps_only:
- The complete PS will be shut down, including the
- RPU, PMU, etc. Only the PL domain (FPGA)
- remains untouched.
- system:
- The complete system/device is shut down.
- Usage::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
- # echo <scope> > /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
- Example::
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
- # echo "subsystem" > /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
- Users: Xilinx
- What: /sys/devices/platform/firmware\:zynqmp-firmware/health_status
- Date: March 2020
- KernelVersion: 5.6
- Contact: "Jolly Shah" <[email protected]>
- Description:
- This sysfs interface allows to set the health status. If PMUFW
- is compiled with CHECK_HEALTHY_BOOT, it will check the healthy
- bit on FPD WDT expiration. If healthy bit is set by a user
- application running in Linux, PMUFW will do APU only restart. If
- healthy bit is not set during FPD WDT expiration, PMUFW will do
- system restart.
- Usage:
- Set healthy bit::
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/health_status
- Unset healthy bit::
- # echo 0 > /sys/devices/platform/firmware\:zynqmp-firmware/health_status
- Users: Xilinx
- What: /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- Date: Feb 2022
- KernelVersion: 5.18
- Contact: "Ronak Jain" <[email protected]>
- Description:
- This sysfs interface allows user to configure features at
- runtime. The user can enable or disable features running at
- firmware as well as the user can configure the parameters of
- the features at runtime. The supported features are over
- temperature and external watchdog. Here, the external watchdog
- is completely different than the /dev/watchdog as the external
- watchdog is running on the firmware and it is used to monitor
- the health of firmware not APU(Linux). Also, the external
- watchdog is interfaced outside of the zynqmp soc.
- The supported config ids are for the feature configuration is,
- 1. PM_FEATURE_OVERTEMP_STATUS = 1, the user can enable or
- disable the over temperature feature.
- 2. PM_FEATURE_OVERTEMP_VALUE = 2, the user can configure the
- over temperature limit in Degree Celsius.
- 3. PM_FEATURE_EXTWDT_STATUS = 3, the user can enable or disable
- the external watchdog feature.
- 4. PM_FEATURE_EXTWDT_VALUE = 4, the user can configure the
- external watchdog feature.
- Usage:
- Select over temperature config ID to enable/disable feature
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- Check over temperature config ID is selected or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- The expected result is 1.
- Select over temperature config ID to configure OT limit
- # echo 2 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- Check over temperature config ID is selected or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- The expected result is 2.
- Select external watchdog config ID to enable/disable feature
- # echo 3 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- Check external watchdog config ID is selected or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- The expected result is 3.
- Select external watchdog config ID to configure time interval
- # echo 4 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- Check external watchdog config ID is selected or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- The expected result is 4.
- Users: Xilinx
- What: /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Date: Feb 2022
- KernelVersion: 5.18
- Contact: "Ronak Jain" <[email protected]>
- Description:
- This sysfs interface allows to configure features at runtime.
- The user can enable or disable features running at firmware.
- Also, the user can configure the parameters of the features
- at runtime. The supported features are over temperature and
- external watchdog. Here, the external watchdog is completely
- different than the /dev/watchdog as the external watchdog is
- running on the firmware and it is used to monitor the health
- of firmware not APU(Linux). Also, the external watchdog is
- interfaced outside of the zynqmp soc.
- By default the features are disabled in the firmware. The user
- can enable features by querying appropriate config id of the
- features.
- The default limit for the over temperature is 90 Degree Celsius.
- The default timer interval for the external watchdog is 570ms.
- The supported config ids are for the feature configuration is,
- 1. PM_FEATURE_OVERTEMP_STATUS = 1, the user can enable or
- disable the over temperature feature.
- 2. PM_FEATURE_OVERTEMP_VALUE = 2, the user can configure the
- over temperature limit in Degree Celsius.
- 3. PM_FEATURE_EXTWDT_STATUS = 3, the user can enable or disable
- the external watchdog feature.
- 4. PM_FEATURE_EXTWDT_VALUE = 4, the user can configure the
- external watchdog feature.
- Usage:
- Enable over temperature feature
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the over temperature feature is enabled or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 1.
- Disable over temperature feature
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 0 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the over temperature feature is disabled or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 0.
- Configure over temperature limit to 50 Degree Celsius
- # echo 2 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 50 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the over temperature limit is configured or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 50.
- Enable external watchdog feature
- # echo 3 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the external watchdog feature is enabled or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 1.
- Disable external watchdog feature
- # echo 3 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 0 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the external watchdog feature is disabled or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 0.
- Configure external watchdog timer interval to 500ms
- # echo 4 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_id
- # echo 500 > /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- Check whether the external watchdog timer interval is configured or not
- # cat /sys/devices/platform/firmware\:zynqmp-firmware/feature_config_value
- The expected result is 500.
- Users: Xilinx
|