On 16:17-20260106, Beleswar Padhi wrote:
> The TI K3 J721S2, J784S4 and J742S2 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 Device Tree Node definitions
> for the HSM core in the respective SoC wakeup dtsi files.
> 
> Signed-off-by: Beleswar Padhi <[email protected]>
> ---
> v2: Changelog:
> 1. None
> 
> Link to v1:
> https://lore.kernel.org/all/[email protected]/
> 
>  arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi  | 15 +++++++++++++++
>  .../ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi    | 15 +++++++++++++++
>  2 files changed, 30 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi 
> b/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
> index fd01437726ab4..c3d78d4a838a1 100644
> --- a/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j721s2-mcu-wakeup.dtsi
> @@ -766,4 +766,19 @@ mcu_watchdog1: watchdog@40610000 {
>               /* reserved for MCU_R5F0_1 */
>               status = "reserved";
>       };
> +
> +     hsm_m4fss: m4fss@43c00000 {

You did fix this in the binding example.. but missed in dts.

The node name should use the generic type, not the instance name. It should
be "remoteproc@43c00000", not "m4fss@43c00000".

Additionally for the label, why not just use hsm: like we have for sms?

> +             compatible = "ti,hsm-m4fss";
> +             reg = <0x00 0x43c00000 0x00 0x20000>,
> +                   <0x00 0x43c20000 0x00 0x10000>,
> +                   <0x00 0x43c30000 0x00 0x10000>;

The total address range covered here is 0x43c00000-0x43c40000, which is
0x40000 bytes, matching the ranges entry. However, you're defining three
separate regions: 0x43c00000-0x43c20000 (0x20000), 0x43c20000-0x43c30000
(0x10000), and 0x43c30000-0x43c40000 (0x10000).

I assume you are doing this since the h/w integration could be
instantiated differently?


> +             reg-names = "sram0_0", "sram0_1", "sram1";
> +             resets = <&k3_reset 304 1>;
> +             firmware-name = "hsm.bin";

I am not a fan of putting firmware-name in SoC.dtsi - esp when it is
reserved, further, so far we have been using j722s-wkup-r5f0_0-fw and
so on.. which allows for firmware specific to SoC.. which kind of makes
sense here as well.

> +             ti,sci = <&sms>;
> +             ti,sci-dev-id = <304>;
> +             ti,sci-proc-ids = <0x80 0xff>;
> +             status = "disabled";

As usual, document why? Additionally, should this be reserved?

> +             bootph-pre-ram;

"standard property"

Documentation/devicetree/bindings/dts-coding-style.rst - note the order:
1. "compatible"
2. "reg"
3. "ranges"
4. Standard/common properties (defined by common bindings, e.g. without
   vendor-prefixes)
5. Vendor-specific properties
6. "status" (if applicable), preceded by a blank line if there is content
   before the property
7. Child nodes, where each node is preceded with a blank line
> +     };
>  };

Same for the rest of the patches and nodes

> diff --git a/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi 
> b/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
> index cc22bfb5f5996..42565f41b7bac 100644
> --- a/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-j784s4-j742s2-mcu-wakeup-common.dtsi
> @@ -762,4 +762,19 @@ mcu_watchdog1: watchdog@40610000 {
>               /* reserved for MCU_R5F0_1 */
>               status = "reserved";
>       };
> +
> +     hsm_m4fss: m4fss@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 371 1>;
> +             firmware-name = "hsm.bin";
> +             ti,sci = <&sms>;
> +             ti,sci-dev-id = <371>;
> +             ti,sci-proc-ids = <0x80 0xff>;
> +             status = "disabled";
> +             bootph-pre-ram;
> +     };
>  };
> -- 
> 2.34.1
> 

-- 
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3  1A34 DDB5 
849D 1736 249D
https://ti.com/opensource

Reply via email to