[PATCH] arm64: zynqmp: Update rproc node
Michal Simek
michal.simek at amd.com
Fri May 31 08:06:28 CEST 2024
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.
Thanks,
Michal
More information about the U-Boot
mailing list