[PATCH v2 1/8] dt-bindings: arm: Add Live Firmware Activation binding
Andre Przywara
andre.przywara at arm.com
Wed Mar 18 09:00:13 PDT 2026
Hi,
On 3/18/26 09:04, Krzysztof Kozlowski wrote:
> On Tue, Mar 17, 2026 at 11:33:27AM +0100, Andre Przywara wrote:
>> The Arm Live Firmware Activation spec [1] describes updating firmware
>
> A nit, subject: drop second/last, redundant "binding". The
> "dt-bindings" prefix is already stating that these are bindings.
> See also:
> https://elixir.bootlin.com/linux/v6.17-rc3/source/Documentation/devicetree/bindings/submitting-patches.rst#L18
Sure, will fix.
>> images during runtime, without requiring a reboot. Update images might
>> be deployed out-of-band, for instance via a BMC, in this case the OS
>> needs to be notified about the availability of a new image.
>>
>> This binding describes an interrupt that could be triggered by the
>
> Describe hardware/firmware, not the binding.
Right, sorry, this slipped through.
>> platform, to notify about any changes.
>>
>> [1] https://developer.arm.com/documentation/den0147/latest/
>>
>> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
>> ---
>> .../devicetree/bindings/arm/arm,lfa.yaml | 45 +++++++++++++++++++
>> 1 file changed, 45 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/arm/arm,lfa.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/arm/arm,lfa.yaml b/Documentation/devicetree/bindings/arm/arm,lfa.yaml
>> new file mode 100644
>> index 000000000000..92f0564fd672
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/arm/arm,lfa.yaml
>> @@ -0,0 +1,45 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/arm/arm,lfa.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Arm Live Firmware Activation (LFA)
>> +
>> +maintainers:
>> + - Andre Przywara <andre.przywara at arm.com>
>> + - Sudeep Holla <sudeep.holla at arm.com>
>> +
>> +description:
>> + The Arm Live Firmware Activation (LFA) specification [1] describes a
>> + firmware interface to activate an updated firmware at runtime, without
>> + requiring a reboot. Updates might be supplied out-of-band, for instance
>> + via a BMC, in which case the platform needs to notify an OS about pending
>> + image updates.
>> + [1] https://developer.arm.com/documentation/den0147/latest/
>> +
>> +properties:
>> + compatible:
>> + const: arm,lfa
>
> Does specification has a version? Does it support version discovery?
Yes and yes. there is a mandatory LFA_GET_VERSION call, with major and
minor version.
And please note that the discovery of the firmware functionality doesn't
rely on DT (or ACPI) at all - it uses discoverable SMCCC calls instead.
We just need this DT node to convey the (optional) platform specific
interrupt number.
>> +
>> + interrupts:
>> + maxItems: 1
>> + description: notification interrupt for changed firmware image status
>> +
>> +required:
>> + - compatible
>> + - interrupts
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/interrupt-controller/arm-gic.h>
>> +
>> + firmware {
>> + arm-lfa {
>
> Node names should be generic. See also an explanation and list of
> examples (not exhaustive) in DT specification:
> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> If you cannot find a name matching your device, please check in kernel
> sources for similar cases or you can grow the spec (via pull request to
> DT spec repo).
>
> arm-lfa is specific, so this could be as "fota" or "firmware-update"
OK, will try to come up with a good name.
Thanks for the review!
Cheers,
Andre
>
> Best regards,
> Krzysztof
>
More information about the linux-arm-kernel
mailing list