On June 20, 2024 thus sayeth Wadim Egorov: > > > Am 19.06.24 um 22:02 schrieb Andrew Davis: > > On 6/19/24 1:20 PM, Nishanth Menon wrote: > > > On 17:19-20240619, Dhruva Gole wrote: > > > > Hi, > > > > > > > > On Feb 14, 2024 at 10:30:04 -0600, Andrew Davis wrote: > > > > > There is a default ATF load address that is used for devices that have > > > > > ATF running in SRAM. For AM62 and AM62a, ATF runs from DRAM. Instead > > > > > of having to override the address in every defconfig, make add a > > > > > default for these ATF in DRAM devices. > > > > > > > > > > Signed-off-by: Andrew Davis <a...@ti.com> > > > > > --- > > > > > arch/arm/mach-k3/Kconfig | 5 +++-- > > > > > configs/am62ax_evm_a53_defconfig | 1 - > > > > > configs/am62x_beagleplay_a53_defconfig | 1 - > > > > > configs/am62x_evm_a53_defconfig | 1 - > > > > > configs/phycore_am62x_a53_defconfig | 1 - > > > > > configs/verdin-am62_a53_defconfig | 1 - > > > > > 6 files changed, 3 insertions(+), 7 deletions(-) > > > > > > > > > > > > > Beagleplay stops booting completely with latest U-boot so I did a little > > > > bisect and it seems like reverting this patch helps. > > > > > > > > I am not sure what other implications there are of reverting this so I > > > > don't suggest immediately dropping it, however some hints around what's > > > > missing on beagleplay vs other platforms would be helpful. > > > > > > > > Because other platforms based off the same SoC don't seem to be > > > > affected. > > > > > > Grumble... I had to rediscover this in parallel as well - Thanks Dhruva. > > > mkimage -l tispl.bin and comparing with kernel log of reserved mem > > > had me completely confused. > > > > > > a) Memory maps are already notorious to manage on complex heterogenous > > > systems. From beagle perspective, we have no need to go and monkey > > > with DT defined memory map and DT should be the default and modifying > > > > Your DT source file is wrong, ATF is at 0x8000_0000 (or any address one > > wants to put in K3_ATF_LOAD_ADDR). DT doesn't "define" hardware, it > > "describes" > > it. ATF's location is dynamic and configurable, it doesn't belong in DT. > > > > You have two options, either go update your DT, then update it again every > > time ATF moves. *OR* simply turn on OF_SYSTEM_SETUP and let U-Boot add the > > correct location reserved memory node for you. > > > > Then you can also drop out the reserved-node from the DT template file. > > Only U-Boot knows where ATF is really placed in RAM, so U-Boot must add > > this info to DT. > > I think it is a good idea to remove the nodes from the device tree or at > least mark them as "templates" and note that they are actually provided by > the bootloader to make it less confusing. >
I have a patch lined up for this. My hope was we could remove all memory nodes completely from the kernel and have U-Boot fix these up. It's initialize DDR knows about capacity, inline ECC, and trowing all the different binaries into it. Our memory{} node fixup isn't ready yet unfortunately so I think just the reserved-memory{} node can be ripped out for now. ~Bryan > > > > > > DT should be explicitly called out with a log (instead of done > > > "transparently") - so instead of CONFIG_K3_OPTEE_LOAD_ADDR default > > > being forced from u-boot, it should be made optional, where when > > > defined, it can overide the dt definition or some variant of that. > > > > > > b) Looks like > > > https://lore.kernel.org/u-boot/20240214163009.983034-4-...@ti.com/ > > > missed beagleplay? and we were in for a surprise there - i dont want > > > > This was the only miss, OF_SYSTEM_SETUP didn't get added to the beagleplay > > config. Bryan just sent the fix for that now. I'll go look for a way to > > make this common across the whole SoC family so we don't again miss any > > new boards. > > > > Andrew > > > > > to switch from default dts for beagleplay to something different just > > > because of simplicity for users to know exactly the carveouts and > > > with other s/w starting up on uC, dts is our "canonical truth". > > >