diff options
| author | Ronak Jain <ronak.jain@amd.com> | 2026-05-20 02:36:53 -0700 |
|---|---|---|
| committer | Michal Simek <michal.simek@amd.com> | 2026-05-25 16:09:12 +0200 |
| commit | 8ebebccf1579f6ce92bde3ddbb13df12c080f647 (patch) | |
| tree | 361b1e22e07ca1c6001d2d16dae358e01bd5fbb8 | |
| parent | fdee7c66c0d7b6869c36b9f9a915abf29ab5b550 (diff) | |
Documentation: ABI: add sysfs interface for ZynqMP CSU registers
Document the new sysfs interface that exposes Configuration Security
Unit (CSU) registers through the zynqmp-firmware driver.
The interface is available under:
/sys/devices/platform/firmware:zynqmp-firmware/csu_registers/
The CSU registers are discovered at boot time using the PM_QUERY_DATA
firmware API. The following registers are currently supported:
- multiboot (CSU_MULTI_BOOT)
- idcode (CSU_IDCODE, read-only)
- pcap-status (CSU_PCAP_STATUS, read-only)
Read operations use the existing IOCTL_READ_REG firmware interface,
while write operations use IOCTL_MASK_WRITE_REG.
Access control is enforced by the firmware. Write attempts to
read-only registers are rejected by firmware even though the sysfs file
permissions allow writes.
Document the ABI entry accordingly.
Signed-off-by: Ronak Jain <ronak.jain@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20260520093654.3303917-2-ronak.jain@amd.com
| -rw-r--r-- | Documentation/ABI/stable/sysfs-driver-firmware-zynqmp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp b/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp index c3fec3c835af..ac8c2314deee 100644 --- a/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp +++ b/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp @@ -254,3 +254,36 @@ Description: The expected result is 500. Users: Xilinx + +What: /sys/devices/platform/firmware\:zynqmp-firmware/csu_registers/* +Date: May 2026 +KernelVersion: 7.2 +Contact: "Ronak Jain" <ronak.jain@amd.com> +Description: + Read/Write CSU (Configuration Security Unit) registers. + + This interface provides dynamic access to CSU registers that are + discovered from the firmware at boot time using PM_QUERY_DATA API. + + The supported registers are: + + - multiboot: CSU_MULTI_BOOT register + - idcode: CSU_IDCODE register (read-only) + - pcap-status: CSU_PCAP_STATUS register (read-only) + + Read operations use the existing IOCTL_READ_REG API. + Write operations use the existing IOCTL_MASK_WRITE_REG API. + + The firmware enforces access control - read-only registers will reject + write attempts even though the sysfs permissions show write access. + + Usage for reading:: + + # cat /sys/devices/platform/firmware\:zynqmp-firmware/csu_registers/multiboot + # cat /sys/devices/platform/firmware\:zynqmp-firmware/csu_registers/idcode + + Usage for writing (mask and value are in hexadecimal):: + + # echo 0xFFFFFFF 0x0 > /sys/devices/platform/firmware\:zynqmp-firmware/csu_registers/multiboot + +Users: Xilinx/AMD |
