Multi-Soc binary support for i.MX8M Mini/Nano/Plus/? in single boot firmware binary

Tim Harvey tharvey at gateworks.com
Fri Jun 18 19:27:11 CEST 2021


On Wed, Jun 16, 2021 at 8:25 PM Peng Fan (OSS) <peng.fan at oss.nxp.com> wrote:
>
>
>
> On 2021/5/27 23:41, Tim Harvey wrote:
> > Greetings,
> >
> > I support various iMX8M PCB's via board/gateworks/venice that are SOM
> > based and we are starting to add SOM's that have different IMX8M variant
> > SoC's on them which for various reasons are not binary compatible. I'm
> > very interested in coming up with a way to make them binary compatible
> > to reduce the number of disk images and boot firmware binaries our users
> > work with (along with the confusion of which one they need to use).
> >
> >  From what I see in working thus far with the IMX8M Mini, Nano, and Plus
> > boot firmware differs in the following ways:
> > - different primary image offsets
> > - different dram config (phy training blob, phy cfg, cfg; which total
> > about 3KiB for each config which varies based on dram type, soc variant,
> > dram topology and bit-mapping)
> > - different OCRAM sizes (compat binary would have to use the minimum
> > size ie 256K)
> > - different ATF binaries
> > - different ATF load address
> > - different pinmux/padconf/inputsel registers
> > - different clk config
> >
> > The primary image offsets should be able to be dealt with by placing
> > jumps at the various offsets and I believe the rest could be dealt with
> > via runtime code if the SPL could load soc-specific blobs including dram
> > config, ATF, binary firmware blobs from a nice indexed image such as FIT
> > or binman. Currently imx8m SPL's use FIT images that are loaded entirely
> > into OCRAM which becomes an issue when you have enough dram configs that
> > they no longer fit in the OCRAM.
> >
> > Does anyone agree this is doable or is there something they see that
> > would be a show-stopper?
> >
> > I'm not all that familiar with the merits of binman fs FIT images... I
> > think they were developed for different things. I'm not sure if
> > either/both are suited for what I'm talking about regarding having the
> > SPL raw load binary blobs vs having them tacked onto a FIT image.
> >
> > I'm not sure if the imx8mq has enough in common to be able to do this
> > with either, in fact I'm not even clear with SoC that is (is it what NXP
> > calls i.MX 8M?)
>
> i.MX8MQ not have enough OCRAM for this case. SPL already use TCM here.
>

Peng,

Could you please explain what SoC you are referring to by 'i.MX8MQ'? I
don't see that on
https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors:IMX8-SERIES

Is this what NXP calls the 'i.MX 8M'?

Best regards,

Tim


More information about the U-Boot mailing list