I've just returned to Yocto development, and am using Ubunto 12.04
64-bit with commit 8e05d5e at the head of poky's daisy branch, building
for core-image-base for MACHINE=beaglebone, testing on a Beaglebone
Black rev A5C.

The resulting image failed to boot, hanging after printing "Starting
kernel ...".  After a lot of experimentation, I've narrowed it down to a
discovery that the size of the Image file produced by "bitbake linux-yocto"
changed based on the absolute path to the build directory:

-rwxr-xr-x 1 pab pab 11215060 Jul 11 05:58 /tmp/poky/build/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11223252 Jul 11 04:20 /prj/oe/omap/poky/build/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11223252 Jul 11 06:49 /prj/oe/omap/poky/bld-tw6/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11223252 Jul 11 05:37 /prj/oe/omap/poky/build-tw8/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11231444 Jul 11 05:08 /prj/oe/omap/poky/build-thirty2/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11231444 Jul 11 06:24 /tmp/poky/build-oe-omap-thirty2/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image -rwxr-xr-x 1 pab pab 11239636 Jul 11 04:43 /prj/oe/omap/poky/build-beaglebone-daisy/tmp/work/beaglebone-poky-linux-gnueabi/linux-yocto/3.14+gitAUTOINC+09424cee64_0143c6ebb4-r0/linux-beaglebone-standard-build/arch/arm/boot/Image

When I replace /boot/uImage on the SD card with the ones corresponding
to built Image files with size 11223252 (0xab40d4) or smaller, the boot
succeeds as shown below.  With uImage corresponding to Image size
1231444 (0xab60d4) or greater, the boot hangs after "Starting kernel
..." with no further output.

Anybody have a clue as to what might be going wrong here and how to fix
it?  I'm guessing the larger uncompressed image is overwriting something
critical, but don't know where to tweak to make it work.

Thanks.

Peter



U-Boot 2013.04-dirty (Jul 10 2013 - 14:02:53)

I2C:   ready
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  No NAND device found!!!
0 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - readenv() failed, using default environment

musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Peripheral mode controller at 47401000 using PIO, IRQ 0
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Host mode controller at 47401800 using PIO, IRQ 0
Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw, usb_ether
Hit any key to stop autoboot:  1  0
gpio: pin 53 (gpio 53) value is 1
mmc0 is current device
micro SD card found
mmc0 is current device
gpio: pin 54 (gpio 54) value is 1
SD/MMC found on device 0
reading uEnv.txt
** Unable to read file uEnv.txt **
gpio: pin 55 (gpio 55) value is 1
4985360 bytes read in 851 ms (5.6 MiB/s)
gpio: pin 56 (gpio 56) value is 1
29192 bytes read in 64 ms (445.3 KiB/s)
Booting from mmc ...
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Linux-3.14.0-yocto-standard
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4985296 Bytes = 4.8 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 80f80000
   Booting using the fdt blob at 0x80f80000
   XIP Kernel Image ... OK
OK
   Using Device Tree in place at 80f80000, end 80f8a207

Starting kernel ...

Booting Linux on physical CPU 0x0
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 3.14.0-yocto-standard (pab@llc) (gcc version 4.8.2 (GCC) ) #1 PREEMPT Fri Jul 11 04:20:09 CDT 2014
CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: TI AM335x BeagleBone
cma: CMA: reserved 16 MiB at 9e800000
Memory policy: Data cache writeback
CPU: All CPU(s) started in SVC mode.
AM335X ES2.0 (sgx neon )
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129792
Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
allocated 1048576 bytes of page_cgroup
please try 'cgroup_disable=memory' option if you don't want memory cgroups
Memory: 489440K/523264K available (7491K kernel code, 520K rwdata, 2452K rodata, 488K init, 757K bss, 33824K reserved, 0K highmem)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc09be044   (9945 kB)
      .init : 0xc09bf000 - 0xc0a39034   ( 489 kB)
      .data : 0xc0a3a000 - 0xc0abc0d4   ( 521 kB)
       .bss : 0xc0abc0d4 - 0xc0b79678   ( 758 kB)

--
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to