[PATCH v2 05/10] dt-bindings: clock: renesas,r8a78000-cpg: Add firmware property

Krzysztof Kozlowski krzk at kernel.org
Wed Aug 12 02:50:56 PDT 2026


On 12/08/2026 11:47, Geert Uytterhoeven wrote:
>>>>>>> +  firmware:
>>>>>>
>>>>>> RPi is doing similar, but I have doubts. It looks way too close to
>>>>>> generic "syscon" which is disallowed.
>>>>>>
>>>>>> I think this should be vendor+purpose specific, e.g.:
>>>>>> "renesas,scmi-transport" or "renesas,scmi-firmware"
>>>>
>>>> If you can tell me the resource that a 'firmware' provider provides then
>>>> it is fine, but you can't.
>>>
>>> It provides a firmware API, which is not available until the firmware
>>> provider is initialized.
>>
>> I don't know what "a firmware API" is. What does it provide? I know what
> 
> It can provide lots of things (everything we are no longer allowed to
> touch directly from Linux ;-)
> 
>> a clock, GPIO, reset, interrupt, etc. provider is.
> 
> A clock is an object you can access through the clock API.
> (s/clock/.../ for the other cases).
> Firmware is a service (virtual object) you can access through a
> firmware API.
> 
> In all cases, the consumer of the object or service needs to know
> which object or service to use (there can be multiple).
> 
> In all cases you cannot access the object or service until it is
> available (initialized and registered), for which we have -EPROBE_DEFER,
> and/or "[PATCH v2 02/10] of: property: fw_devlink: Add support for
> firmware".
> 
> Thanks for your understanding ;-)

I think that's the difference here. Clock is not an object, but a signal
on a wire or within IC coming from one device (provider) to another
(consumer). Firmware is not a signal, not a wire, not anything which can
be provided from one to another.

Best regards,
Krzysztof



More information about the linux-arm-kernel mailing list