[PATCH] arm64: dts: st: fix arm,smc-id of the SMC watchdog on stm32mp2

Marek Vasut marex at nabladev.com
Sat Oct 31 21:47:21 PDT 2026


On 10/31/26 9:59 PM, mateusz.nowicki at posteo.net wrote:

Hello Mateusz,

>> But maybe there is some way to probe for the correct ARM SMC WDT ID ?
> 
> I agree, the ID is not discoverable. A revert or a board override
> would not help firmware built with a custom CFG_WDT_SM_HANDLER_ID
> either. Sorry for the trouble on your board.
> 
> I like the fallback idea. My suggestion:
> 
> - arm,smc-id becomes a list of IDs.
> - The driver tries them in order until SMCWD_INIT succeeds.
> - The SoC dtsi lists <0xbc000000 0xb200005a>.
> - Boards with a custom ID override the list.
> - Older kernels read only the first cell, so nothing breaks there.

Yes, that sound good.

> Trying a wrong ID is harmless.

That is not exactly accurate. The wrong ID might be populated by some 
other service, and invoking that might have unexpected consequences. But 
I do admit that such a thing is unlikely.

> Old and new firmware both just return
> an error for an ID they do not know, as your two cases and my DK show.
> 
> One catch: OP-TEE answers an unknown call with 0xFFFFFFFF in w0, and
> smcwd_call() compares a0 with PSCI_RET_NOT_SUPPORTED as a 64-bit
> value. The driver gets -EIO, not -ENODEV, so the fallback should move
> to the next ID on any error.
> 
> If you and the watchdog maintainers are fine with this, I can send
> the binding and driver patches.
It sounds nice to me, thank you !



More information about the linux-arm-kernel mailing list