Android hangs at "Starting Kernel..": Unable to boot kernel by NFS for iMX6 SabreSD Dual-lite

cancel
Showing results for 
Search instead for 
Did you mean: 

Android hangs at "Starting Kernel..": Unable to boot kernel by NFS for iMX6 SabreSD Dual-lite

1,858 Views
ananthcg
Contributor I

Hi,

I want to boot the kernel from NFS. I am using a PC with Ubuntu 14.04 and iMX6 SabreSD Dual-lite board. The following is the u-boot environment as well as the bootargs that I have set in the u-boot environment:

================================================================

U-Boot 2014.04-08648-g9d7bf9b (Sep 04 2015 - 16:57:01)

CPU:   Freescale i.MX6DL rev1.1 at 792 MHz

CPU:   Temperature 48 C, calibration data: 0x5b053b5f

Reset cause: POR

Board: MX6-SabreSD

I2C:   ready

DRAM:  1 GiB

MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2

*** Warning - bad CRC, using default environment

No panel detected: default to Hannstar-XGA

Display: Hannstar-XGA (1024x768)

In:    serial

Out:   serial

Err:   serial

Found PFUZE100 deviceid=10,revid=11

check_and_clean: reg 0, flag_set 0

Fastboot: Normal

flash target is MMC:2

Net:   FEC [PRIME]

Normal Boot

Hit any key to stop autoboot:  0

=>

=> printenv

baudrate=115200

bootargs=console=ttymxc0,115200 ip=192.168.2.2 root=/dev/nfs rw nfsroot=192.168.2.1:/opt/nfsroot

bootcmd=tftp;bootm 10008000

bootdelay=1

bootfile=uImage

ethact=FEC

ethaddr=00:04:9f:02:ce:5b

ethprime=FEC

fastboot_dev=mmc2

fdt_high=0xffffffff

initrd_high=0xffffffff

ipaddr=192.168.2.2

loadaddr=0x10008000

serverip=192.168.2.1

splashpos=m,m

Environment size: 429/8188 bytes

================================================================

When I issue "boot" command in the u-boot environment, the uImage is loaded successfully to the given "loadaddr=10008000" using TFTP, but is stuck or stops after "Starting Kernel.." as follows :

================================================================

=> boot

Using FEC device

TFTP from server 192.168.2.1; our IP address is 192.168.2.2

Filename 'uImage'.

Load address: 0x10008000

Loading: #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         ################################

         4.2 MiB/s

done

Bytes transferred = 6819624 (680f28 hex)

## Booting kernel from Legacy Image at 10008000 ...

   Image Name:   Linux-3.10.53-88204-g4f0dd92-dir

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    6819560 Bytes = 6.5 MiB

   Load Address: 10008000

   Entry Point:  10008000

   Verifying Checksum ... OK

   XIP Kernel Image ... OK

No gpc device node -9, force to ldo-enable.

Starting kernel ...

================================================================

I also tried loading the Device Tree Blob. The result is the same as follows:

================================================================

U-Boot 2014.04-08648-g9d7bf9b (Sep 04 2015 - 16:57:01)

CPU:   Freescale i.MX6DL rev1.1 at 792 MHz

CPU:   Temperature 48 C, calibration data: 0x5b053b5f

Reset cause: POR

Board: MX6-SabreSD

I2C:   ready

DRAM:  1 GiB

MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2

*** Warning - bad CRC, using default environment

No panel detected: default to Hannstar-XGA

Display: Hannstar-XGA (1024x768)

In:    serial

Out:   serial

Err:   serial

Found PFUZE100 deviceid=10,revid=11

check_and_clean: reg 0, flag_set 0

Fastboot: Normal

flash target is MMC:2

Net:   FEC [PRIME]

Normal Boot

Hit any key to stop autoboot:  0

=>

=>

=> setenv serverip 192.168.2.1

=> setenv ipaddr 192.168.2.2

=> setenv loadaddr 0x10008000

=> setenv bootfile uImage

=> setenv bootargs console=ttymxc0,115200 ip=${ipaddr} root=/dev/nfs rw nfsroot=${serverip}:/opt/nfsroot,v3,tcp

=> setenv bootcmd tftp\;tftp 11000000 imx6dl-sabresd.dtb\;bootm 10008000 - 11000000

=> printenv

baudrate=115200

bootargs=console=ttymxc1,115200 ip=192.168.2.2 root=/dev/nfs rw nfsroot=192.168.2.1:/opt/nfsroot

bootcmd=tftp;tftp 11000000 imx6dl-sabresd.dtb;bootm 10008000 - 11000000

bootdelay=1

bootfile=uImage

ethact=FEC

ethaddr=00:04:9f:02:ce:5b

ethprime=FEC

fastboot_dev=mmc2

fdt_high=0xffffffff

initrd_high=0xffffffff

ipaddr=192.168.2.2

loadaddr=0x10008000

serverip=192.168.2.1

splashpos=m,m

Environment size: 429/8188 bytes

=> tftp

Using FEC device

TFTP from server 192.168.2.1; our IP address is 192.168.2.2

Filename 'uImage'.

Load address: 0x10008000

Loading: #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         #################################################################

         ################################

         4.2 MiB/s

done

Bytes transferred = 6819624 (680f28 hex)

=> tftp 11000000 imx6dl-sabresd.dtb

Using FEC device

TFTP from server 192.168.2.1; our IP address is 192.168.2.2

Filename 'imx6dl-sabresd.dtb'.

Load address: 0x11000000

Loading: ###########

         2.6 MiB/s

done

Bytes transferred = 51820 (ca6c hex)

=> bootm 10008000 - 11000000

## Booting kernel from Legacy Image at 10008000 ...

   Image Name:   Linux-3.10.53-88204-g4f0dd92-dir

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    6819560 Bytes = 6.5 MiB

   Load Address: 10008000

   Entry Point:  10008000

   Verifying Checksum ... OK

## Flattened Device Tree blob at 11000000

   Booting using the fdt blob at 0x11000000

   Loading Kernel Image ... OK

   Using Device Tree in place at 11000000, end 1100fa6b

switch to ldo_bypass mode!

Starting kernel ...

================================================================

Am I missing something ? Can anyone suggest a solution for this ?

Thanks in advance.

Regards,

Ananth

Labels (1)
0 Kudos
6 Replies

401 Views
jotes
Contributor IV

I had a similar problem. For me the solution was to change console from ttymxc0 to ttymxc1.

0 Kudos

401 Views
ananthcg
Contributor I

Hi Jotes,

I already tried that. The result is same.

0 Kudos

401 Views
donfreiling
Contributor III

Hi Ananth,

I had the same problem. I was able to boot the kernel over TFTP by leaving the console set to tty0 and using the zImage instead of the uImage:

=> dhcp 0x10008000 zImage

=> dhcp 0x18000000 imx6q-sabresd.dtb

=> bootz 0x10008000 - 0x18000000

- This also works if you build the kernel to load at 0x12000000

- You may also specify the UART version of the DTB file: imx6q-sabresd-uart.dtb

Regards,

Don

0 Kudos

401 Views
joanxie
NXP TechSupport
NXP TechSupport

what kernel image do you use? demo image or build by yourself? it seems that something wrong with your kernel image, you can try to use demo image to test at first.

0 Kudos

401 Views
ananthcg
Contributor I

Hi Guanqiong,

As per Android User's guide Rev L5.0.0_1.0.0-ga Section-3.6 I have built the uImage using the command, "make imx_v7_android_defconfig". Is this OK ?

Also I could not find the Demo uImage in the "android_LL5.0.0_1.0.0-ga_images_6qsabresd.tar.gz" from Freescale site. There are demo images for:

[1] u-boot-imx6dl.imx

[2] boot-imx6dl.img

[3] recovery-imx6dl.img

[4] system.img

0 Kudos

401 Views
ananthcg
Contributor I

Hi Guanqiong,

I have used the Kernel Image that I built by following the procedure in the Android User's guide for Android Lollipop. And where can I find the Demo Image ?

Regards,

Ananth

0 Kudos