From: Ronak Jain Date: Wed, 20 May 2026 09:36:53 +0000 (-0700) Subject: Documentation: ABI: add sysfs interface for ZynqMP CSU registers X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=8ebebccf1579f6ce92bde3ddbb13df12c080f647;p=thirdparty%2Fkernel%2Flinux.git 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 Signed-off-by: Michal Simek Link: https://lore.kernel.org/r/20260520093654.3303917-2-ronak.jain@amd.com --- diff --git a/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp b/Documentation/ABI/stable/sysfs-driver-firmware-zynqmp index c3fec3c835af3..ac8c2314deee2 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" +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