Re: [PATCH v2 1/8] dt-bindings: arm: Add Live Firmware Activation binding
From: Andre Przywara
Date: Wed Mar 18 2026 - 12:45:12 EST
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@xxxxxxx>
---
.../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@xxxxxxx>
+ - Sudeep Holla <sudeep.holla@xxxxxxx>
+
+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