[U-Boot] Odroid n1- booting hangs if we add memtest=4 to kernel command line.

Anand Moon linux.amoon at gmail.com
Fri Sep 20 07:25:08 UTC 2019


Hi Kever,

On Wed, 18 Sep 2019 at 15:45, Anand Moon <linux.amoon at gmail.com> wrote:
>
> Hi Kevrer,
>
> On Wed, 18 Sep 2019 at 12:02, Kever Yang <kever.yang at rock-chips.com> wrote:
> >
> > Hi Anand,
> >
> >
> > On 2019/9/16 下午7:03, Anand Moon wrote:
> >
> > Hi Jagan / Kever,
> >
> > I have with me Odroid - N1 per-released development board,
> > It's almost same form factor to "Firefly-RK3399 Board" with
> > rk3399-sdram-ddr3-1600.dtsi ram configuration.
> >
> > I have configure Odroid - N1 board to boot using TPL / SPL configuration
> > using latest kernel and latest u-boot, but I am facing some issue with not
> > able to upgrade my distro packages, It's literally hangs on heavy I/O
> > operations.
> >
> > So I would like to check if the memory is working correctly, but below
> > command failed.
> >
> > # sudo memtester 1024 5
> > memtester version 4.3.0 (64-bit)
> > Copyright (C) 2001-2012 Charles Cazabon.
> > Licensed under the GNU General Public License version 2 (only).
> >
> > pagesize is 4096
> > pagesizemask is 0xfffffffffffff000
> > want 1024MB (1073741824 bytes)
> > got  1024MB (1073741824 bytes), trying mlock ...
> >
> > Then I would like to enable *memtest=4* via bootargs ie kernel command
> > line and it failed to boot up.
> >
> >
> > I'm not able to understand well about your issue, does it:
> > - boots fine with odroid-N1 but hang at memtester ?
> > - hang at "Starting kernel..." with kernel command like update
> > Since it boots OK, the DRAM should works OK, you can replace the TPL with rockchip binary ddr[0]
> > to double check if they have the same output.
> > I have no idea about the bootargs "memtest=4", but I suppose this should not affect the kernel
> > boot process, maybe you have do something wrong and not update the bootargs as what you
> > expect, you can print it in U-Boot to check the actually bootargs.
> >
> > Thanks,
> > - Kever
> > [0] https://github.com/rockchip-linux/rkbin/blob/master/bin/rk33/rk3399_ddr_800MHz_v1.23.bin
> >
>
> Ok thanks for your input. I will give this a try.
>
> Here is the scenario I faced  I am using Archlinux using latest u-boot
> and 5.13 kernel.
> First issue that during upgrade on distro packages it suddenly stop
> with not kernel panic.
> So I could not understand the root caused.
>
> 1 > Then I tried some fio test with large file mapping it also failed
> with no kernel panic.
> 2 > Then I tired memtester it also failed with no kernel panic.
> 3 > Finally I tried the memtest kernel memory testing feature at boot
> time, but it hangs.
>
> So I could only conclude that it's not able to map large file, because
> memory is not tuned correctly.
>
> Well I have tried to rebuild the u-boot using below image
>
> [0] https://github.com/rockchip-linux/rkbin/blob/master/bin/rk33/rk3399_ddr_800MHz_v1.23.bin
>
[snip]

Here is the build process I follow for above.

export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
make mrproper
git pull origin
cp -v ../arm-trusted-firmware/build/rk3399/release/bl31/bl31.elf ./bl31.elf
make odroid-n1_defconfig all u-boot.itb

tools/mkimage -n rk3399 -T rksd -d
../rkbin/bin/rk33/rk3399_ddr_800MHz_v1.23.bin idbloader.img
cat spl/u-boot-spl-dtb.bin >> idbloader.img

cd ../rkbin
tools/trust_merger RKTRUST/RK3399TRUST.ini
cd -
cp -v ../rkbin/trust.img .

Now it fails to boot the kernel.

Earlier In my testing using memtester
# memtester 512M 1
  test case pass.
# memtester 1024M 1
 testcase failed with locked

So I could only conclude that less than 1GB is available for the kernel
and rest of the memory is not mapped.

Please can you share some memory testcase
that I could used on any board to verify that memory
is allocated correctly by the boot loader to the kernel.

Best Regards
-Anand


More information about the U-Boot mailing list