On 1/2/2026 6:00 PM, Krzysztof Kozlowski wrote:
On Wed, Dec 31, 2025 at 10:21:00PM +0530, Beleswar Padhi wrote:
Some of the TI K3 family of SoCs have a HSM (High Security Module) M4F
core in the Wakeup Voltage Domain which could be used to run secure
services like Authentication. Add the device tree bindings document for
this HSM M4F core.
The added example illustrates the DT node for the HSM core present on K3
J722S SoC.
A nit, subject: drop second/last, redundant "bindings for". 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
Signed-off-by: Beleswar Padhi <[email protected]>
---
.../bindings/remoteproc/ti,k3-hsm-rproc.yaml | 79 +++++++++++++++++++
1 file changed, 79 insertions(+)
create mode 100644
Documentation/devicetree/bindings/remoteproc/ti,k3-hsm-rproc.yaml
diff --git a/Documentation/devicetree/bindings/remoteproc/ti,k3-hsm-rproc.yaml
b/Documentation/devicetree/bindings/remoteproc/ti,k3-hsm-rproc.yaml
new file mode 100644
index 0000000000000..f61e4046843af
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/ti,k3-hsm-rproc.yaml
Filename must match the compatible. Are you sure you are following
internal TI guidelines? Did you read them?
Will address all comments in v2. Most of these issues exist with other
upstreamed TI dt-bindings as well, will send out a separate cleanup
series for those too.
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/ti,k3-hsm-rproc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI K3 HSM M4F processor subsystems
+
+maintainers:
+ - Beleswar Padhi <[email protected]>
+
+description: |
+ Some K3 family SoCs have a HSM (High Security Module) M4F core in the
+ Wakeup Voltage Domain which could be used to run secure services like
+ Authentication. Some of those are J721S2, J784S4, J722S, AM62X.
+
+$ref: /schemas/arm/keystone/ti,k3-sci-common.yaml#
+
+properties:
+ compatible:
+ enum:
+ - ti,hsm-m4fss
+
+ "#address-cells":
+ const: 2
+
+ "#size-cells":
+ const: 2
Why do you need these two properties?
Not needed. Got carried with from existing bindings.
Thanks,
Beleswar
+
+ reg:
reg is always the second property. Please read DTS coding style.
+ items:
+ - description: SRAM0_0 internal memory region
+ - description: SRAM0_1 internal memory region
+ - description: SRAM1 internal memory region
+
+ reg-names:
+ items:
+ - const: sram0_0
+ - const: sram0_1
+ - const: sram1
+
+ resets:
+ maxItems: 1
+
+ firmware-name:
+ maxItems: 1
+ description: Name of firmware to load for the HSM core
Drop description. Can it be anything else than name of the firmware to
load?
+
+required:
+ - compatible
+ - reg
+ - reg-names
+ - resets
+ - firmware-name
+ - ti,sci
+ - ti,sci-dev-id
+ - ti,sci-proc-ids
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ soc {
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ remoteproc@43c00000 {
+ compatible = "ti,hsm-m4fss";
+ reg = <0x00 0x43c00000 0x00 0x20000>,
+ <0x00 0x43c20000 0x00 0x10000>,
+ <0x00 0x43c30000 0x00 0x10000>;
+ reg-names = "sram0_0", "sram0_1", "sram1";
+ resets = <&k3_reset 225 1>;
+ firmware-name = "hsm.bin";
Make the binding complete. All properties must be listed.
+ ti,sci = <&sms>;
+ ti,sci-dev-id = <225>;
+ ti,sci-proc-ids = <0x80 0xff>;
+ };
Messed indentation.
+ };
--
2.34.1