[U-Boot] [PATCH v2 2/2] rockchip: fix incorrect detection of ram size
Marty E. Plummer
hanetzer at startmail.com
Fri Sep 14 18:33:16 UTC 2018
On Fri, Sep 14, 2018 at 12:55:19PM +0200, Simon Glass wrote:
> Hi Marty,
>
>
> On 13 September 2018 at 23:55, Marty E. Plummer <hanetzer at startmail.com> wrote:
> > Taken from coreboot's src/soc/rockchip/rk3288/sdram.c
> >
> > Without this change, my u-boot build for the asus c201 chromebook (4GiB)
> > is incorrectly detected as 0 Bytes of ram.
> >
> > Signed-off-by: Marty E. Plummer <hanetzer at startmail.com>
> > ---
> > arch/arm/mach-rockchip/sdram_common.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/arch/arm/mach-rockchip/sdram_common.c b/arch/arm/mach-rockchip/sdram_common.c
> > index 650d53e4d9..194dc74b9f 100644
> > --- a/arch/arm/mach-rockchip/sdram_common.c
> > +++ b/arch/arm/mach-rockchip/sdram_common.c
> > @@ -48,6 +48,8 @@ size_t rockchip_sdram_size(phys_addr_t reg)
> > rank, col, bk, cs0_row, bw, row_3_4);
> > }
> >
> > + size_mb = min(size_mb, SDRAM_MAX_SIZE/SZ_1M);
> > +
>
> Is this because size_mb is only 32-bits?
>
Yeah. This has been discussed a bit before on the ml. 0x1_0000_0000 for
4GiB, and due to memory mapped peripherals it can only address
0xff00_0000 bytes anyways so clamp it down. Code is lifted from
coreboot's init code.
> > return (size_t)size_mb << 20;
> > }
> >
> > --
> > 2.18.0
> >
>
> Regards,
> Simon
More information about the U-Boot
mailing list