[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