[PATCH V2 5/6] ARM: dts: stm32: Rework DDR DT inclusion
Marek Vasut
marex at denx.de
Wed Apr 22 13:15:51 CEST 2020
On 4/22/20 11:06 AM, Patrick DELAUNAY wrote:
> Dear Marek,
>
>> From: Marek Vasut <marex at denx.de>
>> Sent: vendredi 10 avril 2020 20:56
>>
>> Adjust the DDR configuration dtsi such that they only generate the DRAM
>> configuration node, the DDR controller node is moved into the stm32mp157-u-
>> boot.dtsi itself. This permits including multiple DDR configuration dtsi files in
>> board DT.
>>
>> Signed-off-by: Marek Vasut <marex at denx.de>
>> Cc: Manivannan Sadhasivam <manivannan.sadhasivam at linaro.org>
>> Cc: Patrick Delaunay <patrick.delaunay at st.com>
>> Cc: Patrice Chotard <patrice.chotard at st.com>
>> ---
>> V2: Add compatible string
>> ---
>> arch/arm/dts/stm32mp15-ddr.dtsi | 358 +++++++++++-------
>> .../dts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi | 1 +
>> .../dts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi | 1 +
>> arch/arm/dts/stm32mp157-u-boot.dtsi | 25 ++
>> 4 files changed, 248 insertions(+), 137 deletions(-)
>>
>> diff --git a/arch/arm/dts/stm32mp15-ddr.dtsi b/arch/arm/dts/stm32mp15-ddr.dtsi
>> index 38f29bb789..026237b088 100644
>> --- a/arch/arm/dts/stm32mp15-ddr.dtsi
>> +++ b/arch/arm/dts/stm32mp15-ddr.dtsi
>> @@ -2,153 +2,237 @@
>> /*
>> * Copyright : STMicroelectronics 2018
>> */
>> +#include <linux/stringify.h>
>>
>> -/ {
>> - soc {
>> - ddr: ddr at 5a003000 {
>> - u-boot,dm-pre-reloc;
>> +&ddr {
>> + config-DDR_MEM_COMPATIBLE {
>> + u-boot,dm-pre-reloc;
>> - compatible = "st,stm32mp1-ddr";
>> + compatible = __stringify(st,DDR_MEM_COMPATIBLE);
>
> I have just a concern here, but only for ST ecosystem.
>
> As the DDR_MEM_COMPATIBLE is not generated by CubeMX tools.
>
> But I will manage it after.....
>
> 2 solution; I add a default value.
>
> #ifndef DDR_MEM_COMPATIBLE
> #define DDR_MEM_COMPATIBLE ddr-0
> #endif
The other option would be to move the #define DDR_MEM_COMPATIBLE into
board DTS, to let the board specify it's own per-DRAM-config compatible,
on which it will match. E.g.:
#define DDR_MEM_COMPATIBLE ddr-1gib
#include "stm32mp15-ddr3-1x4Gb-1066-binG.dtsi"
#define DDR_MEM_COMPATIBLE ddr-2gib
#include "stm32mp15-ddr3-2x4Gb-1066-binG.dtsi"
Might be a bit better, but it might also lead to a lot of duplication.
More information about the U-Boot
mailing list