Hi Ludwig, On Thu, 25 Jun 2020 at 08:53, Ludwig Zenz <lz...@dh-electronics.com> wrote: > > On 22/06/20 9:38 AM, Tom Rini wrote: > > On Mon, Jun 22, 2020 at 09:38:36AM +0000, Ludwig Zenz wrote: > > > >> On 6/13/20 3:55 PM, Jagan Teki wrote: > >> > Enable DM_SPI/DM_SPI_FLASH with a related config option. > >> > > >> > Build fine, but not tested. > >> > >> Hello, > >> > >> due to memory limitations in the SRAM of the i.MX6S in SPL we have not > >> used the device tree. Have the restrictions been removed in the meantime? > >> We need a single binary for the i.MX6 q/d/dl/s variants of our system on > >> module. > >> > >> I think this patch breaks the board support for our module. > > > > I _think_ i.MX is making use of the generic hooks to cause build time > > failures when we grow too large. And we have addressed some, but not all > > of the concerns about DM size. Can you please test this patch? If it > > doesn't work doing: > > > >> > diff --git a/include/configs/dh_imx6.h b/include/configs/dh_imx6.h > >> > index 5bfdf4044b..5fb84f72a2 100644 > >> > --- a/include/configs/dh_imx6.h > >> > +++ b/include/configs/dh_imx6.h > >> > @@ -53,12 +53,6 @@ > >> > /* SATA Configs */ > >> > #define CONFIG_LBA48 > >> > > >> > -/* SPI Flash Configs */ > >> > -#if defined(CONFIG_SPL_BUILD) > >> > -#undef CONFIG_DM_SPI > >> > -#undef CONFIG_DM_SPI_FLASH > >> > -#endif > > > > is still needed as we have a symbol to control DM SPI in SPL directly so > > the above isn't doing what you imply you want. Thanks! > > > > > > With the above patch the board hangs after printing "U-Boot SPL > 2020.07-rc5-38776-g922c6d5d009-dirty (Jun 25 2020 - 16:34:23 +0200)". > > Through some debugging i found the board hangs on calling gpio_request() in > dhcom_get_ddr3_code(). > > Just for testing I skipped dhcom_get_ddr3_code and hardcoded the DDR3 size. > Then I get: > > Missing DTB > fdtdec_setup() returned error -1 > ### ERROR ### Please RESET the board ### > > Unfortunately I have not found out how the SPL should load the devicetree. > Can you give me a hint for this?
The device tree is normally appended to SPL, so it is located by fdtdec_setup() at __bss_end. See board_fdt_blob_setup(). Regards, Simon