[PATCH] arm64: zynqmp: Update rproc node
Tanmay Shah
tanmay.shah at amd.com
Fri May 31 17:28:18 CEST 2024
Reviewed-by: Tanmay Shah <tanmay.shah at amd.com>
On 5/31/24 1:06 AM, Michal Simek wrote:
>
>
> On 5/31/24 00:16, Tanmay Shah wrote:
>>
>>
>> On 5/30/24 5:39 AM, Michal Simek wrote:
>>> remoteproc node should be updated to be aligned with the latest dt-schema.
>>>
>>> Signed-off-by: Michal Simek <michal.simek at amd.com>
>>> ---
>>>
>>> Once we push all dts to Linux we can change to OF_UPSTREAM but till that
>>> time we need to keep DTSes in sync.
>>> ---
>>> arch/arm/dts/zynqmp.dtsi | 67 +++++++++++++++++--
>>> include/dt-bindings/power/xlnx-zynqmp-power.h | 17 ++---
>>> 2 files changed, 68 insertions(+), 16 deletions(-)
>>>
>>> diff --git a/arch/arm/dts/zynqmp.dtsi b/arch/arm/dts/zynqmp.dtsi
>>> index 53a606c340a4..34f592c1a85f 100644
>>> --- a/arch/arm/dts/zynqmp.dtsi
>>> +++ b/arch/arm/dts/zynqmp.dtsi
>>> @@ -314,19 +314,76 @@
>>> ranges;
>>> };
>>>
>>> - remoteproc {
>>> + rproc_lockstep: remoteproc at ffe00000 {
>>> compatible = "xlnx,zynqmp-r5fss";
>>> xlnx,cluster-mode = <1>;
>>> + xlnx,tcm-mode = <1>;
>>>
>>> - r5f-0 {
>>> + #address-cells = <2>;
>>> + #size-cells = <2>;
>>> +
>>> + ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x10000>,
>>> + <0x0 0x20000 0x0 0xffe20000 0x0 0x10000>,
>>> + <0x0 0x10000 0x0 0xffe10000 0x0 0x10000>,
>>> + <0x0 0x30000 0x0 0xffe30000 0x0 0x10000>;
>>> +
>>> + r5f at 0 {
>>> + compatible = "xlnx,zynqmp-r5f";
>>> + reg = <0x0 0x0 0x0 0x10000>,
>>> + <0x0 0x20000 0x0 0x10000>,
>>> + <0x0 0x10000 0x0 0x10000>,
>>> + <0x0 0x30000 0x0 0x10000>;
>>> + reg-names = "atcm0", "btcm0", "atcm1", "btcm1";
>>> + power-domains = <&zynqmp_firmware PD_RPU_0>,
>>> + <&zynqmp_firmware PD_R5_0_ATCM>,
>>> + <&zynqmp_firmware PD_R5_0_BTCM>,
>>> + <&zynqmp_firmware PD_R5_1_ATCM>,
>>> + <&zynqmp_firmware PD_R5_1_BTCM>;
>>> + memory-region = <&rproc_0_fw_image>;
>>> + };
>>> +
>>> + r5f at 1 {
>>> + compatible = "xlnx,zynqmp-r5f";
>>> + reg = <0x1 0x0 0x0 0x10000>, <0x1 0x20000 0x0 0x10000>;
>>> + reg-names = "atcm0", "btcm0";
>>> + power-domains = <&zynqmp_firmware PD_RPU_1>,
>>> + <&zynqmp_firmware PD_R5_1_ATCM>,
>>> + <&zynqmp_firmware PD_R5_1_BTCM>;
>>> + memory-region = <&rproc_1_fw_image>;
>>> + };
>>> + };
>>> +
>>> + rproc_split: remoteproc-split at ffe00000 {
>>> + status = "disabled";
>>> + compatible = "xlnx,zynqmp-r5fss";
>>> + xlnx,cluster-mode = <0>;
>>> + xlnx,tcm-mode = <0>;
>>> +
>>> + #address-cells = <2>;
>>> + #size-cells = <2>;
>>> +
>>> + ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x10000>,
>>> + <0x0 0x20000 0x0 0xffe20000 0x0 0x10000>,
>>> + <0x1 0x0 0x0 0xffe90000 0x0 0x10000>,
>>> + <0x1 0x20000 0x0 0xffeb0000 0x0 0x10000>;
>>> +
>>> + r5f at 0 {
>>> compatible = "xlnx,zynqmp-r5f";
>>> - power-domains = <&zynqmp_firmware PD_RPU_0>;
>>> + reg = <0x0 0x0 0x0 0x10000>, <0x0 0x20000 0x0 0x10000>;
>>> + reg-names = "atcm0", "btcm0";
>>> + power-domains = <&zynqmp_firmware PD_RPU_0>,
>>> + <&zynqmp_firmware PD_R5_0_ATCM>,
>>> + <&zynqmp_firmware PD_R5_0_BTCM>;
>>> memory-region = <&rproc_0_fw_image>;
>>> };
>>>
>>> - r5f-1 {
>>> + r5f at 1 {
>>> compatible = "xlnx,zynqmp-r5f";
>>> - power-domains = <&zynqmp_firmware PD_RPU_1>;
>>> + reg = <0x1 0x0 0x0 0x10000>, <0x1 0x20000 0x0 0x10000>;
>>> + reg-names = "atcm0", "btcm0";
>>> + power-domains = <&zynqmp_firmware PD_RPU_1>,
>>> + <&zynqmp_firmware PD_R5_1_ATCM>,
>>> + <&zynqmp_firmware PD_R5_1_BTCM>;
>>> memory-region = <&rproc_1_fw_image>;
>>> };
>>> };
>>> diff --git a/include/dt-bindings/power/xlnx-zynqmp-power.h b/include/dt-bindings/power/xlnx-zynqmp-power.h
>>> index e7eb0960480a..618024cbb20d 100644
>>> --- a/include/dt-bindings/power/xlnx-zynqmp-power.h
>>> +++ b/include/dt-bindings/power/xlnx-zynqmp-power.h
>>> @@ -6,16 +6,12 @@
>>> #ifndef _DT_BINDINGS_ZYNQMP_POWER_H
>>> #define _DT_BINDINGS_ZYNQMP_POWER_H
>>>
>>> -#define PD_RPU_0 6
>>> -#define PD_RPU_1 7
>>> -#define PD_OCM_BANK_0 11
>>> -#define PD_OCM_BANK_1 12
>>> -#define PD_OCM_BANK_2 13
>>> -#define PD_OCM_BANK_3 14
>>> -#define PD_TCM_BANK_0 15
>>> -#define PD_TCM_BANK_1 16
>>> -#define PD_TCM_BANK_2 17
>>> -#define PD_TCM_BANK_3 18
>>> +#define PD_RPU_0 7
>>> +#define PD_RPU_1 8
>>> +#define PD_R5_0_ATCM 15
>>> +#define PD_R5_0_BTCM 16
>>> +#define PD_R5_1_ATCM 17
>>> +#define PD_R5_1_BTCM 18
>>> #define PD_USB_0 22
>>> #define PD_USB_1 23
>>> #define PD_TTC_0 24
>>> @@ -45,6 +41,5 @@
>>> #define PD_CAN_1 48
>>> #define PD_GPU 58
>>> #define PD_PCIE 59
>>> -#define PD_PL 69
>>
>> This last change looks unrelated. Other than that looks good to me.
>
> You are using new PD_R5_1_ATCM, etc that's why also this part is needed.
>
> That removing PD_PL is unrelated. I can split it but not sure if it is worth of
> separate patch but can be done for sure.
>
Yeah I meant removing PD_PL. I am okay to include in this patch as well.
> Thanks,
> Michal
>
More information about the U-Boot
mailing list