[U-Boot] [PATCH 2/2] ARM: omap3_logic: Enable SPL booting device tree
aford173 at gmail.com
Sat Feb 16 21:23:38 UTC 2019
On Sat, Feb 16, 2019 at 3:08 PM Derald D. Woods
<woods.technical at gmail.com> wrote:
> On Sat, Feb 16, 2019 at 03:49:01PM -0500, Tom Rini wrote:
> > On Sat, Feb 16, 2019 at 01:31:24PM -0600, Adam Ford wrote:
> > > With the generic omap3-u-boot.dtsi file available, this patch
> > > increased the memory of the various incarnations of the omap3_logic
> > > board, and points their respective u-boot.dtsi files to the newly
> > > created generic one, and removes the PLATDATA from the board file.
> > >
> > > These are all done at once because the're all utilizing the same
> > > omap3logic.c board file.
> > >
> > > Signed-off-by: Adam Ford <aford173 at gmail.com>
> > Ah-haha! Thank you! I also needed to delete the platform data and then
> > beagleboard is also booting.
> Can we get a quick summary of the conversion steps? My omap3-evm did not
> get a serial console when applying patch and using example
> modifications from patch.
Patch 1 tells the system what nodes to generate in SPL. Without the
extra entries, the SPL device tree is blank.
Once the individual board file included the generic omap3-u-boot.dtsi
file, I was able to verify the device tree was bring the correct SPL
required nodes with:
dtc -I dtb -O dts spl/u-boot-spl.dtb
It's at this stage, were you might have to add 'u-boot,dm-spl;' to
the nodes you need.
Once I verified the nodes were made, I needed to increase the memory
allocation to handle reading the device tree, make sure a few
additional flags were set:
These two reduce the code, but I am not 100% certain they were needed.
These were done at the recommendation of Tom Rini.
+# CONFIG_SPL_USE_ARCH_MEMCPY is not set
+# CONFIG_SPL_USE_ARCH_MEMSET is not set
Increase available memory
Give BSS some room to breath:
Specify the FDT:
Enable the Device Tree support in SPL:
(make sure SPL_OF_PLATDATA is NOT set or it won't boot)
These effectively give SPL the same DT support as what's in the main U-Boot:
For the omap3_logic boards, they have a config option to relocate
SPL_TEXT_BASE to earlier SRAM which gives us a bit more available
space in SPL. I don't know if these are set for your boards or not.
#define CONFIG_SPL_TEXT_BASE 0x40200000
You'll also want to make sure the DM is enabled in SPL.
I was able to verify an OMAP3530 and DM3730 both booted and I tested
both Logic PD Torpedo and SOM-LV boards, but I am having issues
getting the AM3517_evm to build with the same configuration.
I am not sure what's wrong with the AM3517, but any attempts to enable
DM in SPL fail on AM3517 even without SPL_OF_CONTROL.
More information about the U-Boot