[PATCH 3/3] arm64: dts: broadcom: bcm2712: Add the otp nodes to firmware

Krzysztof Kozlowski krzk at kernel.org
Thu Apr 9 05:15:32 PDT 2026


On 09/04/2026 14:02, Gregor Herburger wrote:
> Hi Krzysztof,
> 
> thanks for reviewing.
> 
> On Thu, Apr 09, 2026 at 10:15:12AM +0200, Krzysztof Kozlowski wrote:
>> On Wed, Apr 08, 2026 at 10:00:17AM +0200, Gregor Herburger wrote:
>>> The Raspberry Pi 5 has two OTP registers (private and customer), add these
>>> to the devicetree.
>>
>> So this sentence confirms my question on bindings - your device
>> raspberrypi,bcm2835-firmware has these, thus you do not need these child
>> nodes at all. Neither compatibles.
> 
> I dont't think so. In my understanding the bcm2835-firmware does not
> provide the otp registers but only provides the interface to the
> registers. Though I don't know the details how this is done but [1] says
> that only BCM2712 has 512bits and the others (like bcm2711) have

Still the same. s/otp/interface/ so your device provides interface.

> 256bits. So both devicetrees have the raspberrypi,bcm2835-firmware node
> but only the bcm2712 has the raspberrypi,firmware-otp-private node while the 

Why does bcm2712 use bcm2835 compatible?

Nodes and properties are not a solution. See DTS101 question - "...
because my new device, which is compatible with an older one, does not
support ..." and answer: No.



> raspberrypi,firmware-otp-customer is available in all raspberrys.
> 
>> Drop entire DTS and binding patches.
> 
> If I drop the binding patch how to distinguish the variants? Should I
> add a SoC specific compatible? e.g. `raspberrypi,bcm2712-firmware` and
> use it in the firmware/raspberrypi driver to add the second otp region?

So you have different devices/variants? What is the "variant" here?

Writing-bindings asks you to have per device compatible. Why standard
rules do not apply here? (see also DTS101)

> 
> Also what I don't understand why we have all the bindings for

Neither do I.

> 'raspberrypi,firmware-clocks', 'raspberrypi,firmware-gpio',
> 'raspberrypi,firmware-reset', 'raspberrypi,firmware-poe-pwm' and
> 'raspberrypi,firmware-ts'. What is the difference between these devices
> and the otp registers. They are all accessed through the firmware.


Best regards,
Krzysztof



More information about the linux-arm-kernel mailing list