Re: [PATCH] ARM: mach-qcom: fix support for ipq806x

From: Christian Marangi
Date: Fri Oct 21 2022 - 17:55:26 EST


On Fri, Oct 21, 2022 at 11:44:56PM +0200, Linus Walleij wrote:
> On Fri, Oct 21, 2022 at 8:10 PM Christian Marangi <ansuelsmth@xxxxxxxxx> wrote:
>
> > Add a specific config flag for Qcom IPQ806x as this SoC can't use
> > AUTO_ZRELADDR and require the PHYS_OFFSET set to 0x42000000.
> >
> > This is needed as some legacy board (or some wrongly configured
> > bootloader) pass the wrong memory map and doesn't exclude the first
> > ~20MB of RAM reserved for the hardware network accellerators.
> >
> > With this change we can correctly support each board and prevent any
> > kind of misconfiguration done by the OEM.
> >
> > Signed-off-by: Christian Marangi <ansuelsmth@xxxxxxxxx>
>
> I had exactly this problem with the APQ8060 as well, then my problem
> went away. I was under the impression that this was solved.
>
> Is it not possible to use Geert's linux,usable-memory-range in
> the chosen node to make the kernel stay off the memory?
> (See examples by grep usable-memory in the kernel.)
>

Hi,
just to confirm this is one of the example you are suggesting?

chosen {
bootargs = "console=ttyS0,115200 earlycon";
stdout-path = "serial0:115200n8";
linux,usable-memory-range = <0x80200000 0x1fe00000>;
};

Main problem here is that uboot in some case doesn't support dt and pass
wrong ATAGS (with the memory not reserved) and AUTO_ZRELADDR calculate
the wrong addr I assume?

I will test the usable-memory-range but isn't the same of declaring
reserved space in the dts? Or the zimage decompressor checks
linux,usable-memory-range bypassing atags?

--
Ansuel