具体是这样的,用的是飞凌的开发板:
芯片 iMX6UL, 
NAND flash 256M
DDR 256M
设备树 imx6ul-14x14-evk-gpmi-7.dtb 原有的u-boot+zImage+logo+dtbs+rootfs是没问题的,但是内核是3.14的。现在我想用4.1的内核来替换3.14的内核,
设备树没有变(因为开发板本身没变),
uboot没有变,
logo文件没有变,
文件系统没有变,
然后在4.1内核中编译yaffs2文件系统,然后通过 mfgtools工具烧录进去。
然后重新上电启动出现: devtmpfs: error mounting -2 这个错误。(在网上搜了好多资料,解决不了)详细打印信息如下:U-Boot 2015.04-g3989e3c (Dec 14 2017 - 19:04:37)
                                                
CPU:   Freescale i.MX6UL rev1.1 at 396 MHz
CPU:   Temperature 39 C                   
Reset cause: POR       
Board: MX6UL 14x14 EVK
I2C:   ready          
DRAM:  256 MiB
NAND:  256 MiB
MMC:   FSL_SDHC: 0
*** Warning - bad CRC, using default environment
                                                
Display: TFT70AB (800x480)
Video: 800x480x24         
                 
NAND read: device 0 offset 0x400000, size 0x80000
524288 bytes read: OK                           
                      
NAND read: device 0 offset 0x400000, size 0x80000
524288 bytes read: OK                           
display bmp cfb_console.c
In:    serial             
Out:   serial
Err:   serial
Net:   FEC0  
Error: FEC0 address not set.
                            
Normal Boot
Hit any key to stop autoboot:  0 
nand boot..........              
                   
NAND read: device 0 offset 0xa00000, size 0x800000
8388608 bytes read: OK                           
                       
NAND read: device 0 offset 0x700000, size 0x40000
262144 bytes read: OK                           
Kernel image @ 0x80800000 [ 0x000000 - 0x55e8f8 ]
## Flattened Device Tree blob at 83000000        
   Booting using the fdt blob at 0x83000000
   Using Device Tree in place at 83000000, end 8300c7c5
                                                       
Starting kernel ...
                   
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.1.15 (root@Ding) (gcc version 4.6.2 20110630 (prerelease) (Freescale MAD -- Linaro 2011.07 -- Built at 2011/08/10 09:20) ) #2 SMP PREEMPT Fri Aug 10 20:14:33 CST 2018
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Freescale i.MX6 UltraLite 14x14 EVK Board
[    0.000000] cma: Reserved 64 MiB at 0x8c000000
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] PERCPU: Embedded 12 pages/cpu @8bdb1000 s16768 r8192 d24192 u49152
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
[    0.000000] Kernel command line: console=ttymxc0,115200 cma=64M root=/dev/mtdblock5 rootfstype=yaffs2,calibrate=y
[    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: 183512K/262144K available (6957K kernel code, 319K rwdata, 2364K rodata, 404K init, 424K bss, 13096K reserved, 65536K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0x90800000 - 0xff000000   (1768 MB)
[    0.000000]     lowmem  : 0x80000000 - 0x90000000   ( 256 MB)
[    0.000000]     pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
[    0.000000]     modules : 0x7f000000 - 0x7fe00000   (  14 MB)
[    0.000000]       .text : 0x80008000 - 0x80922a30   (9323 kB)
[    0.000000]       .init : 0x80923000 - 0x80988000   ( 404 kB)
[    0.000000]       .data : 0x80988000 - 0x809d7e80   ( 320 kB)
[    0.000000]        .bss : 0x809da000 - 0x80a44368   ( 425 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Additional per-CPU info printed with stalls.
[    0.000000]  RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: CPU: 0 PID: 0 at arch/arm/mach-imx/gpc.c:608 imx_gpc_check_dt+0x4c/0x84()
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.15 #2
[    0.000000] Hardware name: Freescale i.MX6 Ultralite (Device Tree)
[    0.000000] [<80016b64>] (unwind_backtrace) from [<80012878>] (show_stack+0x10/0x14)
[    0.000000] [<80012878>] (show_stack) from [<8069511c>] (dump_stack+0x74/0xd0)
[    0.000000] [<8069511c>] (dump_stack) from [<80038e54>] (warn_slowpath_common+0x78/0xb0)
[    0.000000] [<80038e54>] (warn_slowpath_common) from [<80038ea8>] (warn_slowpath_null+0x1c/0x24)
[    0.000000] [<80038ea8>] (warn_slowpath_null) from [<809310ec>] (imx_gpc_check_dt+0x4c/0x84)
[    0.000000] [<809310ec>] (imx_gpc_check_dt) from [<80944624>] (imx6ul_init_irq+0x8/0x18)
[    0.000000] [<80944624>] (imx6ul_init_irq) from [<80926368>] (init_IRQ+0x28/0x80)
[    0.000000] [<80926368>] (init_IRQ) from [<80923aa8>] (start_kernel+0x21c/0x3b0)
[    0.000000] [<80923aa8>] (start_kernel) from [<8000807c>] (0x8000807c)
[    0.000000] ---[ end trace cb88537fdc8fa200 ]---
[    0.000000] Outdated DT detected, suspend/resume will NOT work
[    0.000000] mxc_clocksource_init 24000000
[    0.000000] Switching to timer-based delay loop, resolution 41ns
[    0.000016] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.000055] clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.002800] Console: colour dummy device 80x30
[    0.002841] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.002876] pid_max: default: 32768 minimum: 301
[    0.003097] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.003124] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.004488] CPU: Testing write buffer coherency: ok
[    0.004988] /cpus/cpu@0 missing clock-frequency property
[    0.005031] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.005138] Setting up static identity map for 0x80008280 - 0x800082f0
[    0.041232] Brought up 1 CPUs
[    0.041268] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[    0.041288] CPU: All CPU(s) started in SVC mode.
[    0.042375] devtmpfs: initialized
[    0.060255] device-tree: Duplicate name in lcdif@021c8000, renamed to "display#1"
[    0.065649] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.066522] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.072084] pinctrl core: initialized pinctrl subsystem
[    0.074835] NET: Registered protocol family 16
[    0.093211] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.120904] cpuidle: using governor ladder
[    0.150971] cpuidle: using governor menu
[    0.199763] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.199801] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.204369] imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
[    0.259258] mxs-dma 1804000.dma-apbh: initialized
[    0.265115] SCSI subsystem initialized
[    0.266509] usbcore: registered new interface driver usbfs
[    0.266698] usbcore: registered new interface driver hub
[    0.266922] usbcore: registered new device driver usb
[    0.270517] i2c i2c-0: IMX I2C adapter registered
[    0.270563] i2c i2c-0: can't use DMA
[    0.272203] i2c i2c-1: IMX I2C adapter registered
[    0.272247] i2c i2c-1: can't use DMA
[    0.272556] Linux video capture interface: v2.00
[    0.272765] pps_core: LinuxPPS API ver. 1 registered
[    0.272786] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    0.272864] PTP clock support registered
[    0.275797] Advanced Linux Sound Architecture Driver Initialized.
[    0.280005] Switched to clocksource mxc_timer1
[    0.306744] NET: Registered protocol family 2
[    0.308346] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.308443] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    0.308536] TCP: Hash tables configured (established 2048 bind 2048)
[    0.308675] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.308737] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.309140] NET: Registered protocol family 1
[    0.309865] RPC: Registered named UNIX socket transport module.
[    0.309898] RPC: Registered udp transport module.
[    0.309916] RPC: Registered tcp transport module.
[    0.309934] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.313434] imx rpmsg driver is registered.
[    0.315686] Bus freq driver module loaded
[    0.317895] futex hash table entries: 256 (order: 2, 16384 bytes)
[    0.335498] VFS: Disk quotas dquot_6.6.0
[    0.335992] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.341960] NFS: Registering the id_resolver key type
[    0.342063] Key type id_resolver registered
[    0.342084] Key type id_legacy registered
[    0.342304] jffs2: version 2.2. (NAND) 2001-2006 Red Hat, Inc.
[    0.344206] fuse init (API version 7.23)
[    0.349059] io scheduler noop registered
[    0.349103] io scheduler deadline registered
[    0.349220] io scheduler cfq registered (default)
[    0.350669] imx-weim 21b8000.weim: Driver registered.
[    0.357245] backlight supply power not found, using dummy regulator
[    0.362492] 21c8000.lcdif supply lcd not found, using dummy regulator
[    0.471662] mxsfb 21c8000.lcdif: failed to find mxc display driver 
[    0.490463] Console: switching to colour frame buffer device 100x30
[    0.504982] mxsfb 21c8000.lcdif: initialized
[    0.512362] imx-sdma 20ec000.sdma: no event needs to be remapped

解决方案 »

  1.   

    上面的日志因为字数原因没打完,这里还有:
    [    0.342304] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    [    0.344206] fuse init (API version 7.23)
    [    0.349059] io scheduler noop registered
    [    0.349103] io scheduler deadline registered
    [    0.349220] io scheduler cfq registered (default)
    [    0.350669] imx-weim 21b8000.weim: Driver registered.
    [    0.357245] backlight supply power not found, using dummy regulator
    [    0.362492] 21c8000.lcdif supply lcd not found, using dummy regulator
    [    0.471662] mxsfb 21c8000.lcdif: failed to find mxc display driver 
    [    0.490463] Console: switching to colour frame buffer device 100x30
    [    0.504982] mxsfb 21c8000.lcdif: initialized
    [    0.512362] imx-sdma 20ec000.sdma: no event needs to be remapped
    [    0.512582] imx-sdma 20ec000.sdma: loaded firmware 3.3
    [    0.520332] imx-sdma 20ec000.sdma: initialized
    [    0.522715] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 18, base_baud = 5000000) is a IMX
    [    1.268610] console [ttymxc0] enabled
    [    1.274319] 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 232, base_baud = 5000000) is a IMX
    [    1.284562] 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 233, base_baud = 5000000) is a IMX
    [    1.296247] imx sema4 driver is registered.
    [    1.300766] [drm] Initialized drm 1.1.0 20060810
    [    1.306654] [drm] Initialized vivante 1.0.0 20120216 on minor 0
    [    1.339597] brd: module loaded
    [    1.356305] loop: module loaded
    [    1.376686] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xda
    [    1.383148] nand: Micron MT29F2G08ABAEAWP
    [    1.387197] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
    [    1.395691] gpmi-nand 1806000.gpmi-nand: enable the asynchronous EDO mode 5
    [    1.402791] Scanning device for bad blocks
    [    1.597331] 6 ofpart partitions found on MTD device gpmi-nand
    [    1.603171] Creating 6 MTD partitions on "gpmi-nand":
    [    1.608265] 0x000000000000-0x000000400000 : "boot"
    [    1.615787] 0x000000400000-0x000000600000 : "logo"
    [    1.623299] 0x000000600000-0x000000700000 : "ENV"
    [    1.630597] 0x000000700000-0x000000a00000 : "DTB"
    [    1.637845] 0x000000a00000-0x000001200000 : "kernel"
    [    1.645466] 0x000001200000-0x000010000000 : "rootfs"
    [    1.653605] gpmi-nand 1806000.gpmi-nand: driver registered.
    [    1.662896] 20b4000.ethernet supply phy not found, using dummy regulator
    [    1.671087] pps pps0: new PPS source ptp0
    [    1.676616] fec 20b4000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00
    [    1.686744] fec 20b4000.ethernet (unnamed net_device) (uninitialized): Using random MAC address: 3a:6a:02:19:ba:91
    [    1.698171] libphy: fec_enet_mii_bus: probed
    [    1.706464] fec 20b4000.ethernet eth0: registered PHC device 0
    [    1.714259] 2188000.ethernet supply phy not found, using dummy regulator
    [    1.722397] pps pps1: new PPS source ptp1
    [    1.727982] fec 2188000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00
    [    1.738319] fec 2188000.ethernet (unnamed net_device) (uninitialized): Using random MAC address: 26:e8:33:c8:76:da
    [    1.751241] fec 2188000.ethernet eth1: registered PHC device 1
    [    1.758978] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [    1.765787] ehci-mxc: Freescale On-Chip EHCI Host driver
    [    1.771734] usbcore: registered new interface driver usb-storage
    [    1.780936] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
    [    1.797233] 2184200.usb supply vbus not found, using dummy regulator
    [    1.807718] ci_hdrc ci_hdrc.1: EHCI Host Controller
    [    1.812789] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
    [    1.840147] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
    [    1.847947] hub 1-0:1.0: USB hub found
    [    1.852027] hub 1-0:1.0: 1 port detected
    [    1.858395] Mass Storage Function, version: 2009/09/11
    [    1.863783] LUN: removable file: (no medium)
    [    1.868141] no file given for LUN0
    [    1.871752] g_mass_storage ci_hdrc.0: failed to start g_mass_storage: -22
    [    1.879199] mousedev: PS/2 mouse device common for all mice
    [    1.888279] input: iMX6UL TouchScreen Controller as /devices/platform/soc/2100000.aips-bus/2040000.tsc/input/input0
    [    1.902304] snvs_rtc 20cc034.snvs-rtc-lp: snvs rtc: you use old dts file, please update it
    [    1.911974] snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0
    [    1.920738] i2c /dev entries driver
    [    1.926992] IR NEC protocol handler initialized
    [    1.931687] IR RC5(x/sz) protocol handler initialized
    [    1.936786] IR RC6 protocol handler initialized
    [    1.941408] IR JVC protocol handler initialized
    [    1.945979] IR Sony protocol handler initialized
    [    1.950931] IR SANYO protocol handler initialized
    [    1.955685] IR Sharp protocol handler initialized
    [    1.960495] IR MCE Keyboard/mouse protocol handler initialized
    [    1.966369] IR XMP protocol handler initialized
    [    1.974155] pxp-v4l2 pxp_v4l2: initialized
    [    1.981380] imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)
    [    1.988155] sdhci: Secure Digital Host Controller Interface driver
    [    1.994475] sdhci: Copyright(c) Pierre Ossman
    [    1.998887] sdhci-pltfm: SDHCI platform and OF driver helper
    [    2.007103] /soc/aips-bus@02100000/usdhc@02190000: voltage-ranges unspecified
    [    2.016573] sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found
    [    2.071147] mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
    [    2.096064] usbcore: registered new interface driver usbhid
    [    2.103871] usbhid: USB HID core driver
    [    2.137227] NET: Registered protocol family 10
    [    2.144623] sit: IPv6 over IPv4 tunneling driver
    [    2.153499] NET: Registered protocol family 17
    [    2.158255] Key type dns_resolver registered
    [    2.163247] Failed to disable 696MHz OPP
    [    2.170135] usb 1-1: new high-speed USB device number 2 using ci_hdrc
    [    2.180731] Registering SWP/SWPB emulation handler
    [    2.224390] snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
    [    2.255705] vref-3v3: disabling
    [    2.258901] usb_otg1_vbus: disabling
    [    2.262603] can-3v3: disabling
    [    2.266009] ALSA device list:
    [    2.268997]   No soundcards found.
    [    2.276660] yaffs: dev is 32505861 name is "mtdblock5" ro
    [    2.287458] yaffs: passed flags ""
    [    2.326374] hub 1-1:1.0: USB hub found
    [    2.332036] hub 1-1:1.0: 4 ports detected
    [    2.395719] random: nonblocking pool is initialized
    [    2.620055] usb 1-1.4: new high-speed USB device number 3 using ci_hdrc
    [    9.097586] VFS: Mounted root (yaffs2 filesystem) readonly on device 31:5.
    [    9.104587] devtmpfs: error mounting -2
    [    9.109299] Freeing unused kernel memory: 404K (80923000 - 80988000)
    [    9.115838] Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
    [    9.128991] ---[ end Kernel panic - not syncing: No working init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.