[U-Boot] Boot Linux kernel with initramfs fails

Jean-baptiste DURONEA jbduro2 at gmail.com
Thu Jan 16 13:39:19 CET 2014


Hi everyone,

We made a custom board based on imx6solo.
I have the same problem !

I am using Mfgtools in order to flash the eMMC. In this regard, I made 
my own manufacturing u-boot, and linux kernel too.

I have some trouble booting linux kernel with initramfs. I built linux 
kernel with CONFIG_BLK_DEV_INITRD, so Kbuild generates 
usr/initramfs_data.cpio which is integrated into the kernel.

We have an MX6Q Sabre SD eval board so I could compare differences 
between each log kernel boot. Using Mfgtools with manufacturing firmware 
provided by freescale on my MX6Q SabreSD, in the log, there is the line 
"Unpacking initramfs...".

I notice that on my custom board, this line is not present, so there is 
a problem with this. In order to debug, I print in populate_rootfs 
(init/initramfs.c file) the value of "initrd_start" variable. I notice 
that initrd_start is 0, so the code below inside the "if" is not executed :

    if (initrd_start) {

    #ifdef CONFIG_BLK_DEV_RAM

          int fd;

          printk(KERN_INFO "Trying to unpack rootfs image as
    initramfs...\n");

          err = unpack_to_rootfs((char *)initrd_start,

                    initrd_end - initrd_start);

          if (!err){

               free_initrd();

               return 0;

          } else {

               clean_rootfs();

    unpack_to_rootfs(__initramfs_start, __initramfs_size);

          }

          printk(KERN_INFO "rootfs image is not initramfs (%s)"

    "; looks like an initrd\n", err);

          fd = sys_open((const char __user __force *) "/initrd.image",

    O_WRONLY|O_CREAT, 0700);

          if (fd >= 0) {

               sys_write(fd, (char *)initrd_start,

    initrd_end - initrd_start);

               sys_close(fd);

               free_initrd();

          }

    #else

          printk(KERN_INFO "Unpacking initramfs...\n");

          err = unpack_to_rootfs((char *)initrd_start,

                    initrd_end - initrd_start);

          if (err)

               printk(KERN_EMERG "Initramfs unpacking failed: %s\n", err);

          free_initrd();

    #endif

          return 0;

    }

In order to know whereinitrd_startis initialized, I looked into the 
other sources and I notice it is initialized in arch/arm/mm.init.c, 
function arm_memblock_init, with the variable phys_initrd_start :

/* Now convert initrd to virtual addresses */

   initrd_start = __phys_to_virt(phys_initrd_start);

   initrd_end = initrd_start + phys_initrd_size;

phys_initrd_start is initialized in the same file arch/arm/mm.init.c, in 
functions early_initrd, parse_tag_initrd, parse_tag_initrd2 and 
early_init_dt_setup_initrd_arch

I used printk in these functions, but it appears that none of them are 
executed, so phys_initrd_start is not initialized, and obviously 
initrd_start not too.

So, do I have to call early_initrd by myself in my board setup code, or 
do I miss some configuration in my kernel ?

Below is the beginning of my .config :

    #

    # Automatically generated make config: don't edit

    # Linux/arm 3.0.35 Kernel Configuration

    #

    CONFIG_ARM=y

    CONFIG_HAVE_PWM=y

    CONFIG_SYS_SUPPORTS_APM_EMULATION=y

    CONFIG_HAVE_SCHED_CLOCK=y

    CONFIG_GENERIC_GPIO=y

    # CONFIG_ARCH_USES_GETTIMEOFFSET is not set

    CONFIG_GENERIC_CLOCKEVENTS=y

    CONFIG_KTIME_SCALAR=y

    CONFIG_HAVE_PROC_CPU=y

    CONFIG_STACKTRACE_SUPPORT=y

    CONFIG_HAVE_LATENCYTOP_SUPPORT=y

    CONFIG_LOCKDEP_SUPPORT=y

    CONFIG_TRACE_IRQFLAGS_SUPPORT=y

    CONFIG_HARDIRQS_SW_RESEND=y

    CONFIG_GENERIC_IRQ_PROBE=y

    CONFIG_RWSEM_GENERIC_SPINLOCK=y

    CONFIG_ARCH_HAS_CPUFREQ=y

    CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y

    CONFIG_GENERIC_HWEIGHT=y

    CONFIG_GENERIC_CALIBRATE_DELAY=y

    CONFIG_ZONE_DMA=y

    CONFIG_NEED_DMA_MAP_STATE=y

    CONFIG_VECTORS_BASE=0xffff0000

    # CONFIG_ARM_PATCH_PHYS_VIRT is not set

    CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

    CONFIG_HAVE_IRQ_WORK=y

    CONFIG_IRQ_WORK=y

    #

    # General setup

    #

    CONFIG_EXPERIMENTAL=y

    CONFIG_BROKEN_ON_SMP=y

    CONFIG_INIT_ENV_ARG_LIMIT=32

    CONFIG_CROSS_COMPILE="arm-oe-linux-gnueabi-"

    CONFIG_LOCALVERSION="MasterLight_1A"

    # CONFIG_LOCALVERSION_AUTO is not set

    CONFIG_HAVE_KERNEL_GZIP=y

    CONFIG_HAVE_KERNEL_LZMA=y

    CONFIG_HAVE_KERNEL_LZO=y

    CONFIG_KERNEL_GZIP=y

    # CONFIG_KERNEL_LZMA is not set

    # CONFIG_KERNEL_LZO is not set

    CONFIG_DEFAULT_HOSTNAME="SELA"

    CONFIG_SWAP=y

    CONFIG_SYSVIPC=y

    CONFIG_SYSVIPC_SYSCTL=y

    CONFIG_POSIX_MQUEUE=y

    CONFIG_POSIX_MQUEUE_SYSCTL=y

    CONFIG_BSD_PROCESS_ACCT=y

    CONFIG_BSD_PROCESS_ACCT_V3=y

    # CONFIG_FHANDLE is not set

    CONFIG_TASKSTATS=y

    CONFIG_TASK_DELAY_ACCT=y

    CONFIG_TASK_XACCT=y

    CONFIG_TASK_IO_ACCOUNTING=y

    CONFIG_AUDIT=y

    CONFIG_HAVE_GENERIC_HARDIRQS=y

    #

    # IRQ subsystem

    #

    CONFIG_GENERIC_HARDIRQS=y

    CONFIG_HAVE_SPARSE_IRQ=y

    CONFIG_GENERIC_IRQ_SHOW=y

    CONFIG_SPARSE_IRQ=y

    #

    # RCU Subsystem

    #

    CONFIG_TINY_RCU=y

    # CONFIG_PREEMPT_RCU is not set

    # CONFIG_RCU_TRACE is not set

    # CONFIG_TREE_RCU_TRACE is not set

    CONFIG_IKCONFIG=y

    # CONFIG_IKCONFIG_PROC is not set

    CONFIG_LOG_BUF_SHIFT=17

    CONFIG_CGROUPS=y

    # CONFIG_CGROUP_DEBUG is not set

    CONFIG_CGROUP_FREEZER=y

    CONFIG_CGROUP_DEVICE=y

    CONFIG_CPUSETS=y

    CONFIG_PROC_PID_CPUSET=y

    CONFIG_CGROUP_CPUACCT=y

    # CONFIG_RESOURCE_COUNTERS is not set

    # CONFIG_CGROUP_PERF is not set

    CONFIG_CGROUP_SCHED=y

    CONFIG_FAIR_GROUP_SCHED=y

    CONFIG_RT_GROUP_SCHED=y

    # CONFIG_BLK_CGROUP is not set

    CONFIG_NAMESPACES=y

    CONFIG_UTS_NS=y

    CONFIG_IPC_NS=y

    CONFIG_USER_NS=y

    CONFIG_PID_NS=y

    CONFIG_NET_NS=y

    # CONFIG_SCHED_AUTOGROUP is not set

    # CONFIG_SYSFS_DEPRECATED is not set

    CONFIG_RELAY=y

    CONFIG_BLK_DEV_INITRD=y

    CONFIG_INITRAMFS_SOURCE=""

    # CONFIG_RD_GZIP is not set

    CONFIG_RD_BZIP2=y

    CONFIG_RD_LZMA=y

    CONFIG_RD_XZ=y

    CONFIG_RD_LZO=y

    CONFIG_CC_OPTIMIZE_FOR_SIZE=y

    CONFIG_SYSCTL=y

    CONFIG_ANON_INODES=y

    CONFIG_EXPERT=y

    CONFIG_UID16=y

    CONFIG_SYSCTL_SYSCALL=y

    CONFIG_KALLSYMS=y

    CONFIG_KALLSYMS_ALL=y

    CONFIG_HOTPLUG=y

    CONFIG_PRINTK=y

    CONFIG_BUG=y

    CONFIG_ELF_CORE=y

    CONFIG_BASE_FULL=y

    CONFIG_FUTEX=y

    CONFIG_EPOLL=y

    CONFIG_SIGNALFD=y

    CONFIG_TIMERFD=y

    CONFIG_EVENTFD=y

    CONFIG_SHMEM=y

    CONFIG_AIO=y

    CONFIG_EMBEDDED=y

    CONFIG_HAVE_PERF_EVENTS=y

    CONFIG_PERF_USE_VMALLOC=y

    #

    # Kernel Performance Events And Counters

    #

    CONFIG_PERF_EVENTS=y

    CONFIG_PERF_COUNTERS=y

    # CONFIG_DEBUG_PERF_USE_VMALLOC is not set

    CONFIG_VM_EVENT_COUNTERS=y

    CONFIG_SLUB_DEBUG=y

    # CONFIG_COMPAT_BRK is not set

    # CONFIG_SLAB is not set

    CONFIG_SLUB=y

    # CONFIG_SLOB is not set

    CONFIG_PROFILING=y

    CONFIG_TRACEPOINTS=y

    CONFIG_OPROFILE=m

    CONFIG_HAVE_OPROFILE=y

    CONFIG_KPROBES=y

    CONFIG_KRETPROBES=y

    CONFIG_HAVE_KPROBES=y

    CONFIG_HAVE_KRETPROBES=y

    CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y

    CONFIG_HAVE_CLK=y

    CONFIG_HAVE_DMA_API_DEBUG=y

    CONFIG_HAVE_HW_BREAKPOINT=y

    #

    # GCOV-based kernel profiling

    #

    # CONFIG_GCOV_KERNEL is not set

    CONFIG_HAVE_GENERIC_DMA_COHERENT=y

    CONFIG_SLABINFO=y

    CONFIG_RT_MUTEXES=y

    CONFIG_BASE_SMALL=0

    CONFIG_MODULES=y

    # CONFIG_MODULE_FORCE_LOAD is not set

    CONFIG_MODULE_UNLOAD=y

    # CONFIG_MODULE_FORCE_UNLOAD is not set

    CONFIG_MODVERSIONS=y

    CONFIG_MODULE_SRCVERSION_ALL=y

    CONFIG_BLOCK=y

    CONFIG_LBDAF=y

    CONFIG_BLK_DEV_BSG=y

    CONFIG_BLK_DEV_INTEGRITY=y

    #

    # IO Schedulers

    #

    CONFIG_IOSCHED_NOOP=y

    CONFIG_IOSCHED_DEADLINE=y

    CONFIG_IOSCHED_CFQ=y

    # CONFIG_DEFAULT_DEADLINE is not set

    CONFIG_DEFAULT_CFQ=y

    # CONFIG_DEFAULT_NOOP is not set

    CONFIG_DEFAULT_IOSCHED="cfq"

    # CONFIG_INLINE_SPIN_TRYLOCK is not set

    # CONFIG_INLINE_SPIN_TRYLOCK_BH is not set

    # CONFIG_INLINE_SPIN_LOCK is not set

    # CONFIG_INLINE_SPIN_LOCK_BH is not set

    # CONFIG_INLINE_SPIN_LOCK_IRQ is not set

    # CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set

    CONFIG_INLINE_SPIN_UNLOCK=y

    # CONFIG_INLINE_SPIN_UNLOCK_BH is not set

    CONFIG_INLINE_SPIN_UNLOCK_IRQ=y

    # CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set

    # CONFIG_INLINE_READ_TRYLOCK is not set

    # CONFIG_INLINE_READ_LOCK is not set

    # CONFIG_INLINE_READ_LOCK_BH is not set

    # CONFIG_INLINE_READ_LOCK_IRQ is not set

    # CONFIG_INLINE_READ_LOCK_IRQSAVE is not set

    CONFIG_INLINE_READ_UNLOCK=y

    # CONFIG_INLINE_READ_UNLOCK_BH is not set

    CONFIG_INLINE_READ_UNLOCK_IRQ=y

    # CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set

    # CONFIG_INLINE_WRITE_TRYLOCK is not set

    # CONFIG_INLINE_WRITE_LOCK is not set

    # CONFIG_INLINE_WRITE_LOCK_BH is not set

    # CONFIG_INLINE_WRITE_LOCK_IRQ is not set

    # CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set

    CONFIG_INLINE_WRITE_UNLOCK=y

    # CONFIG_INLINE_WRITE_UNLOCK_BH is not set

    CONFIG_INLINE_WRITE_UNLOCK_IRQ=y

    # CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set

    # CONFIG_MUTEX_SPIN_ON_OWNER is not set

    CONFIG_FREEZER=y

    #

    # System Type

    #

    CONFIG_MMU=y

    # CONFIG_ARCH_INTEGRATOR is not set

    # CONFIG_ARCH_REALVIEW is not set

    # CONFIG_ARCH_VERSATILE is not set

    # CONFIG_ARCH_VEXPRESS is not set

    # CONFIG_ARCH_AT91 is not set

    # CONFIG_ARCH_BCMRING is not set

    # CONFIG_ARCH_CLPS711X is not set

    # CONFIG_ARCH_CNS3XXX is not set

    # CONFIG_ARCH_GEMINI is not set

    # CONFIG_ARCH_EBSA110 is not set

    # CONFIG_ARCH_EP93XX is not set

    # CONFIG_ARCH_FOOTBRIDGE is not set

    CONFIG_ARCH_MXC=y

    # CONFIG_ARCH_MXS is not set

    # CONFIG_ARCH_NETX is not set

    # CONFIG_ARCH_H720X is not set

    # CONFIG_ARCH_IOP13XX is not set

    # CONFIG_ARCH_IOP32X is not set

    # CONFIG_ARCH_IOP33X is not set

    # CONFIG_ARCH_IXP23XX is not set

    # CONFIG_ARCH_IXP2000 is not set

    # CONFIG_ARCH_IXP4XX is not set

    # CONFIG_ARCH_DOVE is not set

    # CONFIG_ARCH_KIRKWOOD is not set

    # CONFIG_ARCH_LOKI is not set

    # CONFIG_ARCH_LPC32XX is not set

    # CONFIG_ARCH_MV78XX0 is not set

    # CONFIG_ARCH_ORION5X is not set

    # CONFIG_ARCH_MMP is not set

    # CONFIG_ARCH_KS8695 is not set

    # CONFIG_ARCH_W90X900 is not set

    # CONFIG_ARCH_NUC93X is not set

    # CONFIG_ARCH_TEGRA is not set

    # CONFIG_ARCH_PNX4008 is not set

    # CONFIG_ARCH_PXA is not set

    # CONFIG_ARCH_MSM is not set

    # CONFIG_ARCH_SHMOBILE is not set

    # CONFIG_ARCH_RPC is not set

    # CONFIG_ARCH_SA1100 is not set

    # CONFIG_ARCH_S3C2410 is not set

    # CONFIG_ARCH_S3C64XX is not set

    # CONFIG_ARCH_S5P64X0 is not set

    # CONFIG_ARCH_S5PC100 is not set

    # CONFIG_ARCH_S5PV210 is not set

    # CONFIG_ARCH_EXYNOS4 is not set

    # CONFIG_ARCH_SHARK is not set

    # CONFIG_ARCH_TCC_926 is not set

    # CONFIG_ARCH_U300 is not set

    # CONFIG_ARCH_U8500 is not set

    # CONFIG_ARCH_NOMADIK is not set

    # CONFIG_ARCH_DAVINCI is not set

    # CONFIG_ARCH_OMAP is not set

    # CONFIG_PLAT_SPEAR is not set

    # CONFIG_ARCH_VT8500 is not set

    CONFIG_GPIO_PCA953X=m

    # CONFIG_KEYBOARD_GPIO_POLLED is not set

    CONFIG_IMX_HAVE_PLATFORM_DMA=y

    CONFIG_IMX_HAVE_PLATFORM_FEC=y

    CONFIG_IMX_HAVE_PLATFORM_FLEXCAN=y

    CONFIG_IMX_HAVE_PLATFORM_FSL_USB2_UDC=y

    CONFIG_IMX_HAVE_PLATFORM_GPMI_NFC=y

    CONFIG_IMX_HAVE_PLATFORM_IMX2_WDT=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_SNVS_RTC=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_CAAM=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_I2C=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_SSI=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_UART=y

    CONFIG_IMX_HAVE_PLATFORM_MXC_EHCI=y

    CONFIG_IMX_HAVE_PLATFORM_MXC_PWM=y

    CONFIG_IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX=y

    CONFIG_IMX_HAVE_PLATFORM_SPI_IMX=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_IPUV3=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_VPU=y

    CONFIG_IMX_HAVE_PLATFORM_AHCI=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_OCOTP=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_VIIM=y

    CONFIG_IMX_HAVE_PLATFORM_LDB=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_SPDIF=y

    CONFIG_IMX_HAVE_PLATFORM_VIV_GPU=y

    CONFIG_IMX_HAVE_PLATFORM_MXC_HDMI=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_ANATOP_THERMAL=y

    CONFIG_IMX_HAVE_PLATFORM_FSL_OTG=y

    CONFIG_IMX_HAVE_PLATFORM_FSL_USB_WAKEUP=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_PM=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_ASRC=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_VDOA=y

    CONFIG_IMX_HAVE_PLATFORM_IMX_PCIE=y

    #

    # Freescale MXC Implementations

    #

    # CONFIG_ARCH_MX1 is not set

    # CONFIG_ARCH_MX2 is not set

    # CONFIG_ARCH_MX25 is not set

    # CONFIG_ARCH_MX3 is not set

    # CONFIG_ARCH_MX503 is not set

    # CONFIG_ARCH_MX51 is not set

    CONFIG_ARCH_MX6=y

    CONFIG_ARCH_MX6Q=y

    CONFIG_FORCE_MAX_ZONEORDER=13

    CONFIG_SOC_IMX6Q=y

    # CONFIG_MACH_MX6Q_ARM2 is not set

    # CONFIG_MACH_MX6SL_ARM2 is not set

    # CONFIG_MACH_MX6SL_EVK is not set

    # CONFIG_MACH_MX6Q_SABRELITE is not set

    # CONFIG_MACH_MX6Q_SABRESD is not set

    # CONFIG_MACH_MX6Q_SABREAUTO is not set

    CONFIG_MACH_MX6SDL_MASTERLIGHT=y

I paste here my u-boot + kernel log too :

    U-Boot 2009.08 (janv. 16 2014 - 11:20:55)

    CPU: Freescale i.MX6 family TO1.1 at 792 MHz

    Temperature:   41 C, calibration data 0x5744e269

    mx6q pll1: 792MHz

    mx6q pll2: 528MHz

    mx6q pll3: 480MHz

    mx6q pll8: 50MHz

    ipg clock     : 66000000Hz

    ipg per clock : 66000000Hz

    uart clock    : 80000000Hz

    cspi clock    : 60000000Hz

    ahb clock     : 132000000Hz

    axi clock   : 198000000Hz

    emi_slow clock: 99000000Hz

    ddr clock     : 396000000Hz

    usdhc1 clock  : 198000000Hz

    usdhc2 clock  : 198000000Hz

    usdhc3 clock  : 198000000Hz

    usdhc4 clock  : 198000000Hz

    nfc clock     : 24000000Hz

    Board: i.MX6DL/Solo-MASTERLIGHT: unknown-board Board: 0x61011 [WDOG ]

    Boot Device: MMC

    I2C:   ready

    DRAM:  256 MB

    MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3

    *** Warning - bad CRC or MMC, using default environment

    In:    serial

    Out:   serial

    Err:   serial

    Net:   got MAC address from IIM: 00:00:00:00:00:00

    FEC0 [PRIME]

    Hit any key to stop autoboot:  0

    FEC: Link is down 0

    *** ERROR: `ethaddr' not set

    FEC: Link is down 0

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

        Image Name: Linux-3.0.35MasterLight_1A

        Image Type:   ARM Linux Kernel Image (uncompressed)

        Data Size:    3843800 Bytes =  3.7 MB

        Load Address: 10008000

        Entry Point:  10008000

        Verifying Checksum ... OK

        Loading Kernel Image ... OK

    OK

    Starting kernel ...

    [    0.000000] Initializing cgroup subsys cpuset

    [    0.000000] Initializing cgroup subsys cpu

    [    0.000000] Linux version 3.0.35MasterLight_1A (dacnis at VM-CCF)
    (gcc version 4.7.2 (GCC) ) #61 Thu Jan 16 10:11:15 CET 2014

    [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7),
    cr=10c53c7d

    [    0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing
    instruction cache

    [    0.000000] Machine: Freescale i.MX 6Solo MasterLight Board

    [    0.000000] PASSE mdesc->fixup

    [    0.000000] PASSE tags->hdr.tag == ATAG_CORE

    [    0.000000] phys_initrd_size : 0

    [    0.000000] MX6Q_SABRESD_RESERVE START

    [    0.000000] MX6Q_SABRESD_RESERVE END

    [    0.000000] Memory policy: ECC disabled, Data cache writeback

    [    0.000000] CPU identified as i.MX6DL/SOLO, silicon rev 1.1

    [    0.000000] Built 1 zonelists in Zone order, mobility grouping
    on.  Total pages: 65024

    [    0.000000] Kernel command line: console=ttymxc0,115200n8
    enable_wait_mode=off rootfstype=ramfs

    [    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)

    [    0.000000] Dentry cache hash table entries: 32768 (order: 5,
    131072 bytes)

    [    0.000000] Inode-cache hash table entries: 16384 (order: 4,
    65536 bytes)

    [    0.000000] Memory: 256MB = 256MB total

    [    0.000000] Memory: 251480k/251480k available, 10664k reserved,
    0K highmem

    [    0.000000] Virtual kernel memory layout:

    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)

    [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

    [    0.000000]     DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)

    [    0.000000]     vmalloc : 0xd0800000 - 0xf2000000   ( 536 MB)

    [    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)

    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)

    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)

    [    0.000000]       .init : 0xc0008000 - 0xc004c000   ( 272 kB)

    [    0.000000]       .text : 0xc004c000 - 0xc076d000   (7300 kB)

    [    0.000000]       .data : 0xc076e000 - 0xc07ad210   ( 253 kB)

    [    0.000000]        .bss : 0xc07ad234 - 0xc082cd10   ( 511 kB)

    [    0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3,
    MinObjects=0, CPUs=1, Nodes=1

    [    0.000000] NR_IRQS:624 nr_irqs:624 624

    [    0.000000] MXC GPIO hardware

    [    0.000000] sched_clock: 32 bits at 3000kHz, resolution 333ns,
    wraps every 1431655ms

    [    0.000000] Set periph_clk's parent to pll2_pfd_400M!

    [    0.000000] arm_max_freq=800MHz

    [    0.000000] MXC_Early serial console at MMIO 0x21f4000 (options
    '115200n8')

    [    0.000000] bootconsole [ttymxc0] enabled

    [    0.000000] RETOUR early_console_setup(UART5_BASE_ADDR, uart_clk)

    [    0.000000] Console: colour dummy device 80x30

    [    0.235804] Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)

    [    0.324129] pid_max: default: 32768 minimum: 301

    [    0.329098] Mount-cache hash table entries: 512

    [    0.334105] Initializing cgroup subsys cpuacct

    [    0.338607] Initializing cgroup subsys devices

    [    0.343073] Initializing cgroup subsys freezer

    [    0.347572] Initializing cgroup subsys net_cls

    [    0.352155] CPU: Testing write buffer coherency: ok

    [    0.357116] ftrace: allocating 21463 entries in 64 pages

    [    0.383914] PASSE 1

    [    0.386027] PASSE 2

    [    0.388223] PASSE 3

    [    0.390334] PASSE 4

    [    0.392499] PASSE 5

    [    0.394638] PASSE 6

    [    0.396750] PASSE 7

    [    0.398859] PASSE 8

    [    0.400965] PASSE 9

    [    0.403072] PASSE 10

    [    0.405283] PASSE 11

    [    0.407516] hw perfevents: enabled with ARMv7 Cortex-A9 PMU
    driver, 7 counters available

    [    0.416679] devtmpfs: initialized

    [    0.435880] print_constraints: dummy:

    [    0.439835] NET: Registered protocol family 16

    [    0.445954] print_constraints: vddpu: 725 <--> 1300 mV at 700 mV
    fast normal

    [    0.453303] print_constraints: vddcore: 725 <--> 1300 mV at 1150
    mV fast normal

    [    0.460969] print_constraints: vddsoc: 725 <--> 1300 mV at 1200
    mV fast normal

    [    0.468485] print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400
    mV fast normal

    [    0.476171] print_constraints: vdd1p1: 800 <--> 1400 mV at 1100
    mV fast normal

    [    0.483684] print_constraints: vdd3p0: 2625 <--> 3400 mV at 3000
    mV fast normal

    [    0.491582] MX6_SABRESD_BOARD_INIT START

    [    0.496008] MX6_SABRESD_BOARD_INIT END

    [    0.499890] hw-breakpoint: found 6 breakpoint and 1 watchpoint
    registers.

    [    0.506742] hw-breakpoint: 1 breakpoint(s) reserved for
    watchpoint single-step.

    [    0.514084] hw-breakpoint: maximum watchpoint size is 4 bytes.

    [    0.519977] L310 cache controller enabled

    [    0.524010] l2x0: 16 ways, CACHE_ID 0x410000c8, AUX_CTRL
    0x02050000, Cache size: 524288 B

    [    0.537036] bio: create slab <bio-0> at 0

    [    0.541886] SCSI subsystem initialized

    [    0.545985] usbcore: registered new interface driver usbfs

    [    0.551537] usbcore: registered new interface driver hub

    [    0.556980] usbcore: registered new device driver usb

    [    0.562978] Bluetooth: Core ver 2.16

    [    0.566611] NET: Registered protocol family 31

    [    0.571088] Bluetooth: HCI device and connection manager initialized

    [    0.577465] Bluetooth: HCI socket layer initialized

    [    0.583263] Switching to clocksource mxc_timer1

    [    0.592476] cfg80211: Calling CRDA to update world regulatory domain

    [    0.608367] NET: Registered protocol family 2

    [    0.612936] IP route cache hash table entries: 2048 (order: 1,
    8192 bytes)

    [    0.620462] TCP established hash table entries: 8192 (order: 4,
    65536 bytes)

    [    0.627671] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)

    [    0.634233] TCP: Hash tables configured (established 8192 bind 8192)

    [    0.640620] TCP reno registered

    [    0.643779] UDP hash table entries: 256 (order: 0, 4096 bytes)

    [    0.649653] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)

    [    0.656382] NET: Registered protocol family 1

    [    0.661089] RPC: Registered named UNIX socket transport module.

    [    0.667030] RPC: Registered udp transport module.

    [    0.671775] RPC: Registered tcp transport module.

    [    0.676496] RPC: Registered tcp NFSv4.1 backchannel transport module.

    [    0.683126] START INITRAMTFS : c002dd04 ; SIZE INITRAMTFS : 512

    [    0.689176] INITRD_START : 0

    [    0.692685] IMX usb wakeup probe

    [    0.696220] Static Power Management for Freescale i.MX6

    [    0.701497] wait mode is disabled for i.MX6

    [    0.705781] cpaddr = d0820000 suspend_iram_base=d0818000

    [    0.711240] PM driver module loaded

    [    0.715203] audit: initializing netlink socket (disabled)

    [    0.720668] type=2000 audit(0.430:1): initialized

    [    0.842383] VFS: Disk quotas dquot_6.5.2

    [    0.846567] Dquot-cache hash table entries: 1024 (order 0, 4096
    bytes)

    [    0.857462] Installing knfsd (copyright (C) 1996okir at monad.swb.de
    <mailto:okir at monad.swb.de>).

    [    0.864814] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.

    [    0.871676] ROMFS MTD (C) 2007 Red Hat, Inc.

    [    0.876113] fuse init (API version 7.16)

    [    0.880947] JFS: nTxBlock = 1964, nTxLock = 15717

    [    0.888115] msgmni has been set to 491

    [    0.893471] Block layer SCSI generic (bsg) driver version 0.4
    loaded (major 253)

    [    0.900932] io scheduler noop registered

    [    0.904871] io scheduler deadline registered

    [    0.909349] io scheduler cfq registered (default)

    [    0.914390] imx-sdma imx-sdma: loaded firmware 1.1

    [    0.922035] imx-sdma imx-sdma: initialized

    [    0.926461] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled

    [    0.933599] Serial: IMX driver

    [    0.939365] loop: module loaded

    [    0.942811] at24 2-0053: 2048 byte at24 EEPROM, writable, 4
    bytes/write

    [    0.949727] Loading iSCSI transport class v2.0-870.

    [    0.957274] Fixed MDIO Bus: probed

    [    0.960921] FEC Ethernet Driver

    [    0.964118] PPP generic driver version 2.4.2

    [    0.968577] tun: Universal TUN/TAP device driver, 1.6

    [    0.973646] tun: (C) 1999-2004 Max Krasnyansky <maxk at qualcomm.com
    <mailto:maxk at qualcomm.com>>

    [    0.980274] usbcore: registered new interface driver i2400m_usb

    [    0.986631] usbcore: registered new interface driver usbserial

    [    0.992548] USB Serial support registered for generic

    [    0.997682] usbcore: registered new interface driver
    usbserial_generic

    [    1.004246] usbserial: USB Serial Driver core

    [    1.008667] USB Serial support registered for Edgeport 2 port adapter

    [    1.015166] USB Serial support registered for Edgeport 4 port adapter

    [    1.021679] USB Serial support registered for Edgeport 8 port adapter

    [    1.028191] USB Serial support registered for EPiC device

    [    1.033665] usbcore: registered new interface driver io_edgeport

    [    1.039706] io_edgeport: v2.7:Edgeport USB Serial Driver

    [    1.045077] USB Serial support registered for Edgeport TI 1 port
    adapter

    [    1.051861] USB Serial support registered for Edgeport TI 2 port
    adapter

    [    1.058653] usbcore: registered new interface driver io_ti

    [    1.064157] io_ti: v0.7mode043006:Edgeport USB Serial Driver

    [    1.069886] USB Serial support registered for FTDI USB Serial Device

    [    1.076318] usbcore: registered new interface driver ftdi_sio

    [    1.082095] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver

    [    1.088188] mousedev: PS/2 mouse device common for all mice

    [    1.094071] PASSE 12

    [    1.096275] PASSE 13

    [    1.100686] rtc-ds1307 2-0068: rtc core: registered ds1339 as rtc0

    [    1.107548] snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as
    rtc1

    [    1.114233] Bluetooth: Virtual HCI driver ver 1.3

    [    1.119097] Bluetooth: HCI UART driver ver 2.2

    [    1.123557] Bluetooth: HCI H4 protocol initialized

    [    1.128379] Bluetooth: HCI BCSP protocol initialized

    [    1.133360] Bluetooth: HCILL protocol initialized

    [    1.138091] Bluetooth: Broadcom Blutonium firmware driver ver 1.2

    [    1.144270] usbcore: registered new interface driver bcm203x

    [    1.149965] Bluetooth: Digianswer Bluetooth USB driver ver 0.10

    [    1.155963] usbcore: registered new interface driver bpa10x

    [    1.161568] Bluetooth: BlueFRITZ! USB driver ver 1.2

    [    1.166628] usbcore: registered new interface driver bfusb

    [    1.172148] Bluetooth: Generic Bluetooth USB driver ver 0.6

    [    1.177800] usbcore: registered new interface driver btusb

    [    1.183318] Bluetooth: Generic Bluetooth SDIO driver ver 0.1

    [    1.189078] cpuidle: using governor ladder

    [    1.193189] cpuidle: using governor menu

    [    1.197207] sdhci: Secure Digital Host Controller Interface driver

    [    1.203423] sdhci: Copyright(c) Pierre Ossman

    [    1.207935] mmc0: no vmmc regulator found

    [    1.212124] mmc0: SDHCI controller on platform
    [sdhci-esdhc-imx.3] using ADMA

    [    1.220591] TCP cubic registered

    [    1.224743] NET: Registered protocol family 10

    [    1.231307] NET: Registered protocol family 17

    [    1.235847] can: controller area network core (rev 20090105 abi 8)

    [    1.242197] NET: Registered protocol family 29

    [    1.246773] NET: Registered protocol family 33

    [    1.255944] RxRPC: Registered security type 2 'rxkad'

    [    1.261149] Registering the dns_resolver key type

    [    1.265964] Bus freq driver module loaded

    [    1.270015] Bus freq driver Enabled

    [    1.283473] DVFS driver module loaded

    [    1.287554] registered taskstats version 1

    [    1.304273] rtc-ds1307 2-0068: setting system clock to 2000-01-29
    01:30:29 UTC (949109429)

My kernel hangs after the last line, instead of doing "Freeing init 
memory: ..." but I don't know if it comes from the same problem or not...

Anyway, can you tell me if my initramfs problem comes from 
missconfiguration ?

Do you have any idea where my mistakes are ?

I searched in linux code, on Internet, but I don't see any solution...

Thanks a lot !

Regards,



More information about the U-Boot mailing list