[PATCH v6 00/12] bus: add stm32 debug bus and coresight support for stm32mp1x platforms
Alexandre TORGUE
alexandre.torgue at foss.st.com
Fri Mar 6 02:33:52 PST 2026
Hi Linus
On 2/26/26 11:30, Gatien Chevallier wrote:
> Stm32 SoCs embed debug peripherals such as Coresight. These peripherals
> can monitor the activity of the cores. Because of that, they can be
> used only if some features in the debug configuration are enabled.
> Else, errors or firewall exceptions can be observed. Similarly to
> the ETZPC(on stm32mp1x platforms) or the RIFSC(on stm32mp2x platforms),
> debug-related peripherals access can be assessed at bus level to
> prevent these issues from happening.
>
> The debug configuration can only be accessed by the secure world.
> That means that a service must be implemented in the secure world for
> the kernel to check the firewall configuration. On OpenSTLinux, it is
> done through a Debug access PTA in OP-TEE [1].
> To represent the debug peripherals present on a dedicated debug bus,
> create a debug bus node in the device tree and the associated driver
> that will interact with this PTA.
>
> [1]: https://github.com/OP-TEE/optee_os/pull/7673
>
> Signed-off-by: Gatien Chevallier <gatien.chevallier at foss.st.com>
> ---
> Changes in v6:
> - Fix use of platform_driver_register() in probe of the stm32 debug bus
> (unusable since dc23806a7c47 ("driver core: enforce device_lock for driver_match_device()"))
> - Added all review tags
> - Link to v5: https://lore.kernel.org/r/20260123-debug_bus-v5-0-90b670844241@foss.st.com
>
> Changes in v5:
> - Take into account Rob's comments for the debug bus documentation
> - Link to v4: https://lore.kernel.org/r/20260122-debug_bus-v4-0-28f0f2a25f2c@foss.st.com
>
> Changes in v4:
> - Remove reg property from the debug bus and use ranges.
> - Link to v3: https://lore.kernel.org/r/20260121-debug_bus-v3-0-4d32451180d0@foss.st.com
>
> Changes in v3:
> - Collect Rob's review tags
> - Add stm32_firewall_get_grant_all_access() API and use it in the HDP
> driver.
> - Link to v2: https://lore.kernel.org/r/20260114-debug_bus-v2-0-5475c7841569@foss.st.com
>
> Changes in v2:
> - Fix kernel robot error by documenting the access-controllers property
> in the missing coresight peripheral binding files.
> - List the access controller items for HDP
> - Various minor fixes in the debug bus binding file.
> - Remove clock documentation and its presence in the DT node and driver.
> Bus clock will be handled by the child nodes' drivers.
> - stm32 debug bus driver:
> - Depopulate the bus when .remove() is called
> - Remove trace when error on devm_kzalloc() as the trace
> function does nothing in case of ENOMEM.
> - Remove use of of_match_ptr()
> - Use tee bus callbacks
> - Link to v1: https://lore.kernel.org/r/20260109-debug_bus-v1-0-8f2142b5a738@foss.st.com
>
> ---
> Gatien Chevallier (12):
> dt-bindings: document access-controllers property for coresight peripherals
> dt-bindings: pinctrl: document access-controllers property for stm32 HDP
> dt-bindings: bus: document the stm32 debug bus
> bus: stm32_firewall: allow check on different firewall controllers
> bus: stm32_firewall: add stm32_firewall_get_grant_all_access() API
> drivers: bus: add the stm32 debug bus driver
> arm: dts: stm32: introduce the debug bus for stm32mp1x platforms
> arm: dts: stm32: enable the debug bus on stm32mp1x boards
> arm: dts: stm32: enable CoreSight on stm32mp15xx-dkx boards
> arm: dts: stm32: enable CoreSight on the stm32mp157c-ev1 board
> arm: dts: stm32: enable CoreSight on the stm32mp135f-dk board
> pinctrl: stm32: add firewall checks before probing the HDP driver
>
I plan to take DT & bus driver patches in my tree. Do you plan to take
pinctrl one or would you prefer I take it also ?
regards
Alex
More information about the linux-arm-kernel
mailing list