[PATCH 1/2] Makefile: Add environment variable DEVICE_TREE to header

Michal Simek michal.simek at xilinx.com
Tue Mar 3 07:52:04 CET 2020


On 02. 03. 20 20:47, Simon Glass wrote:
> Hi Michal,
> 
> On Fri, 28 Feb 2020 at 04:03, Michal Simek <michal.simek at xilinx.com> wrote:
>>
>> On 26. 02. 20 16:33, Simon Glass wrote:
>>> Hi Michal,
>>>
>>> On Tue, 18 Feb 2020 at 09:02, Michal Simek <michal.simek at xilinx.com> wrote:
>>>>
>>>> Users have option to overwrite default device tree
>>>> (CONFIG_DEFAULT_DEVICE_TREE) via environment variable DEVICE_TREE.
>>>>
>>>> Feature has been added long time ago by commit 74de8c9a1672
>>>> ("dts/Makefile: Build the user specified dts") for a little bit different
>>>> reason.
>>>>
>>>> But this variable can be also used for different purpose like choosing
>>>> proper configuration from FIT image in SPL.
>>>> And this is the functionality I would like to use on Xilinx Zynq devices
>>>> that current u-boot.img can be composed in the same way based on OF_LIST
>>>> and different configuration is taken based on platform specific SPL.
>>>> SPL requires low level ps7_init_gpl configuration that's why different
>>>> boards require different SPL with fixed board_fit_config_name_match().
>>>>
>>>> Signed-off-by: Michal Simek <michal.simek at xilinx.com>
>>>> ---
>>>>
>>>> I have done it in this way but maybe there is any smarter way how this can
>>>> be done. Also macro name can change if you want.
>>>
>>> Can you please add a bit of documentation to doc/README.fdt-control ?
>>
>> This feature is cover by documentation in this file already. What
>> exactly do you think that should be added?
>>
> 
> Then I suppose I am confused as to what this patch does. I thought it
> was allowing U-Boot to pass the DT to Linux, which wasn't previously
> supported?

Just a note this is also not supported and would be good to have support
for it.

The patch is putting device tree name as macro to header and I am using
this value just in zynq SPL to choose proper dtb file from u-boot.img.

On ZynqMP generic platform I am using mkimage_fit_atf.sh script to
automatically fill default configuration.
https://gitlab.denx.de/u-boot/u-boot/blob/master/arch/arm/mach-zynqmp/mkimage_fit_atf.sh#L94
And I didn't want to create different u-boot.img/itb for Zynq that's why
SPL has device tree built it directly in SPL.

As I said maybe there is smarter way how to do it but this was the one I
used.
In our case SPL another way could be to put filename from ps7_init_*
files and save it as variable and use it.

Thanks,
Michal


More information about the U-Boot mailing list