^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) What: /sys/devices/platform/firmware\:zynqmp-firmware/ggs*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) Date: March 2020
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) KernelVersion: 5.6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) Contact: "Jolly Shah" <jollys@xilinx.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) Description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) Read/Write PMU global general storage register value,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) GLOBAL_GEN_STORAGE{0:3}.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) Global general storage register that can be used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) by system to pass information between masters.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) The register is reset during system or power-on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) resets. Three registers are used by the FSBL and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) other Xilinx software products: GLOBAL_GEN_STORAGE{4:6}.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Usage::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) # echo <value> > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Example::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) # echo 0x1234ABCD > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) Users: Xilinx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) What: /sys/devices/platform/firmware\:zynqmp-firmware/pggs*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) Date: March 2020
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) KernelVersion: 5.6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) Contact: "Jolly Shah" <jollys@xilinx.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) Description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) Read/Write PMU persistent global general storage register
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) value, PERS_GLOB_GEN_STORAGE{0:3}.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Persistent global general storage register that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) can be used by system to pass information between
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) masters.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) This register is only reset by the power-on reset
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) and maintains its value through a system reset.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) Four registers are used by the FSBL and other Xilinx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) software products: PERS_GLOB_GEN_STORAGE{4:7}.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Register is reset only by a POR reset.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) Usage::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) # echo <value> > /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) Example::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) # echo 0x1234ABCD > /sys/devices/platform/firmware\:zynqmp-firmware/pggs0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) Users: Xilinx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) What: /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) Date: March 2020
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) KernelVersion: 5.6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) Contact: "Jolly Shah" <jollys@xilinx.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) Description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) This sysfs interface allows to set the shutdown scope for the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) next shutdown request. When the next shutdown is performed, the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) platform specific portion of PSCI-system_off can use the chosen
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) shutdown scope.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) Following are available shutdown scopes(subtypes):
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) subsystem:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) Only the APU along with all of its peripherals
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) not used by other processing units will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) shut down. This may result in the FPD power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) domain being shut down provided that no other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) processing unit uses FPD peripherals or DRAM.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) ps_only:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) The complete PS will be shut down, including the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) RPU, PMU, etc. Only the PL domain (FPGA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) remains untouched.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) system:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) The complete system/device is shut down.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) Usage::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) # cat /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) # echo <scope> > /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) Example::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) # cat /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) # echo "subsystem" > /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) Users: Xilinx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) What: /sys/devices/platform/firmware\:zynqmp-firmware/health_status
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) Date: March 2020
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) KernelVersion: 5.6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) Contact: "Jolly Shah" <jollys@xilinx.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) Description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) This sysfs interface allows to set the health status. If PMUFW
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) is compiled with CHECK_HEALTHY_BOOT, it will check the healthy
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) bit on FPD WDT expiration. If healthy bit is set by a user
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) application running in Linux, PMUFW will do APU only restart. If
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) healthy bit is not set during FPD WDT expiration, PMUFW will do
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) system restart.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) Usage:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) Set healthy bit::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) # echo 1 > /sys/devices/platform/firmware\:zynqmp-firmware/health_status
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) Unset healthy bit::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) # echo 0 > /sys/devices/platform/firmware\:zynqmp-firmware/health_status
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) Users: Xilinx