This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

am335x GPEVM从SD卡烧写到Nand的问题

Other Parts Discussed in Thread: TPS65910

我按照文档processors.wiki.ti.com/.../Linux_Core_U-Boot_User's_Guide上面顺序执行命令

U-Boot # mmc rescan
U-Boot # nand erase.chip
U-Boot # load mmc 0 0x81000000 MLO
U-Boot # nand write 0x81000000 NAND.SPL
U-Boot # nand write 0x81000000 NAND.SPL.backup1
U-Boot # nand write 0x81000000 NAND.SPL.backup2
U-Boot # nand write 0x81000000 NAND.SPL.backup3
U-Boot # load mmc 0 0x81000000 u-boot.img
U-Boot # nand write 0x81000000 NAND.u-boot
U-Boot # load mmc 0 0x81000000 zImage
U-Boot # nand write 0x81000000 NAND.kernel
U-Boot # run findfdt
U-Boot # load mmc 0 0x81000000 $fdtfile
U-Boot # nand write 0x81000000 NAND.u-boot-spl-os
U-Boot # saveenv

在到U-Boot # load mmc 0 0x81000000 zImage  就出现问题

reading zImage                                                                  
** Unable to read file zImage **

请问各位前辈,这个问题应该怎么解决,还有一点不明白的是,写到nand里面的内核镜像文件和文件系统是不是用的就是SD卡里面的,还需要其他的setenv么?

  • 补充一下,用的是SDK07.00

  • 如果是SDK07的话,因为是3.12的内核,要把zImage和dts写到文件系统的boot文件夹里

  • 感谢您的回复,zImage和dts是在文件系统的boot文件夹里,那在写到nand的时候应该怎么做?

  • 应该是烧写完U-boot之后,直接去烧写带zImage和dts的文件系统到下一个分区

  • 感谢您的回复,请问要怎么烧写文件系统呢,我在文档上面没有找到

  • 把文件系统打包以后,比如做成ubi文件系统,然后直接用Uboot的烧写命令烧写就可以了啊

  • 写nand主要是写文件系统

    然后是更新文件系统中boot目录下的文件

  • 一样的处理模式,只是地址空间不一样。

    device nand0 <nand0>, # parts = 8
     #: name                size            offset          mask_flags
     0: NAND.SPL            0x00020000      0x00000000      0
     1: NAND.SPL.backup1    0x00020000      0x00020000      0
     2: NAND.SPL.backup2    0x00020000      0x00040000      0
     3: NAND.SPL.backup3    0x00020000      0x00060000      0
     4: NAND.u-boot         0x001e0000      0x00080000      0
     5: NAND.u-boot-env     0x00020000      0x00260000      0
     6: NAND.kernel         0x00500000      0x00280000      0
     7: NAND.file-system 0x0f880000 0x00780000 0
    可以参考:http://processors.wiki.ti.com/index.php/Linux_Core_U-Boot_User%27s_Guide#Using_NAND
  • 你的sd卡上有zImage吗?

  • 感谢您的回复,确实是没有放在./boot下面,而是在./rootfs/boot,现在可以烧进去了,还想请教一下,u-boot从nand启动,需要改代码吗,setenv要设置哪些参数,要不要指定什么编译选项?还有内核,要不要修改?      (am335x GPEVM      SDK07.00)

  • 忘了贴打印信息,到这就停了 希望您能详细一点,感谢

    U-Boot 2013.10-00189-g78d8ebd (Dec 26 2014 - 17:29:38)

    I2C:   ready
    DRAM:  1 GiB
    NAND:  256 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    Net:   cpsw, usb_ether
    Hit any key to stop autoboot:  0
    Card did not respond to voltage select!
    mmc0(part 0) is current device
    Scanning mmc 0...
    Card did not respond to voltage select!
    ** Bad device mmc 0 **
    Card did not respond to voltage select!
    mmc0(part 0) is current device
    Card did not respond to voltage select!
    Card did not respond to voltage select!
    mmc1(part 0) is current device
    Card did not respond to voltage select!                                         
    Booting from nand ...                                                           
                                                                                    
    NAND read: device 0 offset 0x80000, size 0x40000                                
     262144 bytes read: OK                                                          
                                                                                    
    NAND read: device 0 offset 0x200000, size 0x800000                              
     8388608 bytes read: OK                                                         
    Kernel image @ 0x80200000 [ 0x000000 - 0x3ed558 ]                               
    ## Flattened Device Tree blob at 80f80000                                       
       Booting using the fdt blob at 0x80f80000                                     
       Loading Device Tree to 9fff2000, end 9ffff25b ... OK                         
                                                                                    
    Starting kernel ...                                                             
                                                                                    
    [    0.000000] Booting Linux on physical CPU 0x0                                
    [    0.000000] Linux version 3.12.10-ti2013.12.01 (kid@kid-System-Product-Name)5
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d  
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
    [    0.000000] Machine: Generic AM33XX (Flattened Device Tree), model: TI AM335M
    [    0.000000] cma: CMA: reserved 24 MiB at ae000000                            
    [    0.000000] Memory policy: ECC disabled, Data cache writeback                
    [    0.000000] CPU: All CPU(s) started in SVC mode.                             
    [    0.000000] AM335X ES2.1 (sgx neon )                                         
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pa6
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=ubi0:rootfs rw 1
    [    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)             
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)   
    [    0.000000] Memory: 1003124K/1045504K available (5555K kernel code, 559K rwd)
    [    0.000000] Virtual kernel memory layout:                                    
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                
    [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)                
    [    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)                
    [    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)                
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                
    [    0.000000]       .text : 0xc0008000 - 0xc074a04c   (7433 kB)                
    [    0.000000]       .init : 0xc074b000 - 0xc07a15f0   ( 346 kB)                
    [    0.000000]       .data : 0xc07a2000 - 0xc082ddd8   ( 560 kB)                
    [    0.000000]        .bss : 0xc082ddd8 - 0xc0866400   ( 226 kB)                
    [    0.000000] NR_IRQS:16 nr_irqs:16 16                                         
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrus
    [    0.000000] Total of 128 interrupts on 1 active controller                   
    [    0.000000] OMAP clockevent source: timer2 at 19200000 Hz                    
    [    0.000000] sched_clock: 32 bits at 19MHz, resolution 52ns, wraps every 2236s
    [    0.000000] OMAP clocksource: timer1 at 19200000 Hz                          
    [    0.000000] Console: colour dummy device 80x30                               
    [    0.000333] Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)          
    [    0.049710] pid_max: default: 32768 minimum: 301                             
    [    0.049818] Security Framework initialized                                   
    [    0.049874] Mount-cache hash table entries: 512                              
    [    0.058910] CPU: Testing write buffer coherency: ok                          
    [    0.059378] Setting up static identity map for 0xc0572e68 - 0xc0572ed8       
    [    0.060416] devtmpfs: initialized                                            
    [    0.062128] VFP support v0.3: implementor 41 architecture 3 part 30 variant 3
    [    0.125935] omap_hwmod: debugss: _wait_target_disable failed                 
    [    0.126723] pinctrl core: initialized pinctrl subsystem                      
    [    0.127625] regulator-dummy: no parameters                                   
    [    0.130351] NET: Registered protocol family 16                               
    [    0.132588] DMA: preallocated 256 KiB pool for atomic coherent allocations   
    [    0.135221] cpuidle: using governor ladder                                   
    [    0.135238] cpuidle: using governor menu                                     
    [    0.143217] platform mpu.1: FIXME: clock-name 'fck' DOES NOT exist in dt!    
    [    0.144306] platform 49000000.edma: FIXME: clock-name 'fck' DOES NOT exist i!
    [    0.145560] OMAP GPIO hardware version 0.1                                   
    [    0.154718] omap-gpmc 50000000.gpmc: could not find pctldev for node /pinmuxe
    [    0.154753] platform 50000000.gpmc: Driver omap-gpmc requests probe deferral
    [    0.155125] platform 56000000.sgx: FIXME: clock-name 'fck' DOES NOT exist in!
    [    0.158953] DSS not supported on this SoC                                    
    [    0.158974] No ATAGs?                                                        
    [    0.158986] hw-breakpoint: debug architecture 0x4 unsupported.               
    [    0.181737] bio: create slab <bio-0> at 0                                    
    [    0.195733] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver     
    [    0.196658] vbat: 5000 mV                                                    
    [    0.197061] lis3_reg: no parameters                                          
    [    0.197512] wlan-en-regulator: 1800 mV                                       
    [    0.200681] vgaarb: loaded                                                   
    [    0.201965] SCSI subsystem initialized                                       
    [    0.203289] usbcore: registered new interface driver usbfs                   
    [    0.203465] usbcore: registered new interface driver hub                     
    [    0.203663] usbcore: registered new device driver usb                        
    [    0.204660] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@4e
    [    0.204691] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral   
    [    0.204718] omap_i2c 4802a000.i2c: could not find pctldev for node /pinmux@4e
    [    0.204733] platform 4802a000.i2c: Driver omap_i2c requests probe deferral   
    [    0.204981] media: Linux media interface: v0.10                              
    [    0.205154] Linux video capture interface: v2.00                             
    [    0.205412] pps_core: LinuxPPS API ver. 1 registered                         
    [    0.205422] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giom>
    [    0.205549] PTP clock support registered                                     
    [    0.208093] Switched to clocksource timer1                                   
    [    0.226022] NET: Registered protocol family 2                                
    [    0.226715] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
    [    0.226867] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)        
    [    0.226951] TCP: Hash tables configured (established 8192 bind 8192)         
    [    0.227071] TCP: reno registered                                             
    [    0.227087] UDP hash table entries: 512 (order: 1, 8192 bytes)               
    [    0.227115] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)          
    [    0.227328] NET: Registered protocol family 1                                
    [    0.227758] RPC: Registered named UNIX socket transport module.              
    [    0.227770] RPC: Registered udp transport module.                            
    [    0.227777] RPC: Registered tcp transport module.                            
    [    0.227783] RPC: Registered tcp NFSv4.1 backchannel transport module.        
    [    0.228886] NetWinder Floating Point Emulator V0.97 (double precision)       
    [    0.229618] PM: Loading am335x-pm-firmware.binbounce pool size: 64 pages     
    [    0.374371] VFS: Disk quotas dquot_6.5.2                                     
    [    0.374443] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)       
    [    0.375094] NFS: Registering the id_resolver key type                        
    [    0.375196] Key type id_resolver registered                                  
    [    0.375205] Key type id_legacy registered                                    
    [    0.375253] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.  
    [    0.375449] msgmni has been set to 1485                                      
    [    0.376998] NET: Registered protocol family 38                               
    [    0.377043] io scheduler noop registered                                     
    [    0.377052] io scheduler deadline registered                                 
    [    0.377085] io scheduler cfq registered (default)                            
    [    0.379451] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.432160] Console: switching to colour frame buffer device 100x30          
    [    0.439238] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled          
    [    0.442191] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud =0
    [    1.255842] console [ttyO0] enabled                                          
    [    1.261397] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud =1
    [    1.275023] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20      
    [    1.293524] brd: module loaded                                               
    [    1.302687] loop: module loaded                                              
    [    1.307237] (stk) :sysfs entries created                                     
    [    1.312566] (stk) : debugfs entries created                                  
    [    1.322747] mtdoops: mtd device (mtddev=name/number) must be supplied        
    [    1.335406] usbcore: registered new interface driver asix                    
    [    1.342781] usbcore: registered new interface driver ax88179_178a            
    [    1.350982] usbcore: registered new interface driver cdc_ether               
    [    1.358816] usbcore: registered new interface driver r815x                   
    [    1.366215] usbcore: registered new interface driver smsc95xx                
    [    1.373907] usbcore: registered new interface driver net1080                 
    [    1.381511] usbcore: registered new interface driver cdc_subset              
    [    1.389462] usbcore: registered new interface driver zaurus                  
    [    1.397038] usbcore: registered new interface driver cdc_ncm                 
    [    1.405011] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver       
    [    1.413628] ehci-pci: EHCI PCI platform driver                               
    [    1.419681] ehci-omap: OMAP-EHCI Host Controller driver                      
    [    1.427472] usbcore: registered new interface driver cdc_wdm                 
    [    1.435141] usbcore: registered new interface driver usb-storage             
    [    1.444138] mousedev: PS/2 mouse device common for all mice                  
    [    1.452773] input: matrix_keypad.7 as /devices/matrix_keypad.7/input/input0  
    [    1.464101] input: ti-tsc as /devices/ocp.2/44e0d000.tscadc/TI-am335x-tsc/in1
    [    1.476765] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [    1.486994] i2c /dev entries driver                                          
    [    1.492216] Driver for 1-wire Dallas network protocol.                       
    [    1.501421] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec   
    [    1.512522] edma-dma-engine edma-dma-engine.0: allocated channel for 0:25    
    [    1.521609] edma-dma-engine edma-dma-engine.0: allocated channel for 0:24    
    [    1.530625] omap_hsmmc 48060000.mmc: unable to get vmmc regulator -517       
    [    1.539251] edma-dma-engine edma-dma-engine.0: freeing channel for 24        
    [    1.547721] edma-dma-engine edma-dma-engine.0: freeing channel for 25        
    [    1.556325] platform 48060000.mmc: Driver omap_hsmmc requests probe deferral
    [    1.565891] edma-dma-engine edma-dma-engine.0: allocated channel for 0:13    
    [    1.574862] edma-dma-engine edma-dma-engine.0: allocated channel for 0:12    
    [    1.657769] omap_hwmod: gpio1: _wait_target_disable failed                   
    [    1.689125] ledtrig-cpu: registered to indicate activity on CPUs             
    [    1.700551] edma-dma-engine edma-dma-engine.0: allocated channel for 0:36    
    [    1.709629] omap-sham 53100000.sham: hw accel on OMAP rev 4.3                
    [    1.718727] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2                
    [    1.726314] edma-dma-engine edma-dma-engine.0: allocated channel for 0:5     
    [    1.735239] edma-dma-engine edma-dma-engine.0: allocated channel for 0:6     
    [    1.746780] usbcore: registered new interface driver usbhid                  
    [    1.754149] usbhid: USB HID core driver                                      
    [    1.761569] oprofile: no performance counters                                
    [    1.767730] oprofile: using timer interrupt.                                 
    [    1.773740] TCP: cubic registered                                            
    [    1.778119] Initializing XFRM netlink socket                                 
    [    1.783756] NET: Registered protocol family 17                               
    [    1.789666] NET: Registered protocol family 15                               
    [    1.795555] 8021q: 802.1Q VLAN Support v1.8                                  
    [    1.801160] Key type dns_resolver registered                                 
    [    1.807471] cpu cpu0: cpu0 regulator not ready, retry                        
    [    1.814242] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe defel
    [    1.824594] ThumbEE CPU extension supported.                                 
    [    1.832278] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.839126] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.848226] No NAND device found                                             
    [    1.854564] tps65910 0-002d: No interrupt support, no core IRQ               
    [    1.864390] vrtc: 1800 mV                                                    
    [    1.868237] vrtc: supplied by vbat                                           
    [    1.873943] vio: at 1500 mV                                                  
    [    1.877797] vio: supplied by vbat                                            
    [    1.883669] vdd_mpu: 912 <--> 1375 mV at 1325 mV                             
    [    1.889951] vdd_mpu: supplied by vbat                                        
    [    1.896102] vdd_core: 912 <--> 1150 mV at 1137 mV                            
    [    1.902480] vdd_core: supplied by vbat                                       
    [    1.908565] vdd3: 5000 mV                                                    
    [    1.913230] vdig1: at 1800 mV                                                
    [    1.917305] vdig1: supplied by vbat                                          
    [    1.923071] vdig2: at 1800 mV                                                
    [    1.927149] vdig2: supplied by vbat                                          
    [    1.932910] vpll: at 1800 mV                                                 
    [    1.936866] vpll: supplied by vbat                                           
    [    1.942487] vdac: at 1800 mV                                                 
    [    1.946447] vdac: supplied by vbat                                           
    [    1.952113] vaux1: at 1800 mV                                                
    [    1.956178] vaux1: supplied by vbat                                          
    [    1.961962] vaux2: at 3300 mV                                                
    [    1.966031] vaux2: supplied by vbat                                          
    [    1.971779] vaux33: at 3300 mV                                               
    [    1.975974] vaux33: supplied by vbat                                         
    [    1.981857] vmmc: 1800 <--> 3300 mV at 3300 mV                               
    [    1.987867] vmmc: supplied by vbat                                           
    [    1.993190] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz                  
    [    2.003788] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz                  
    [    2.012272] edma-dma-engine edma-dma-engine.0: allocated channel for 0:25    
    [    2.021274] edma-dma-engine edma-dma-engine.0: allocated channel for 0:24    
    [    2.070778] UBI error: ubi_init: cannot open mtd NAND.file-system, error -2  
    [    2.138141] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6            
    [    2.146164] davinci_mdio 4a101000.mdio: detected phy mask fffffffe           
    [    2.155066] libphy: 4a101000.mdio: probed                                    
    [    2.160376] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, drit
    [    2.173370] Detected MACID = c4:ed:ba:88:43:7c                               
    [    2.181778] input: volume_keys.8 as /devices/volume_keys.8/input/input2      
    [    2.191348] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:)
    [    2.206541] UBIFS error (pid 1): ubifs_mount: cannot open "ubi0:rootfs", err9
    [    2.216585] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0)9
    [    2.227114] Please append a correct "root=" boot option; here are the availa:
    [    2.238144] Kernel panic - not syncing: VFS: Unable to mount root fs on unkn)

  • 这个说明内核应景正常运行起来了,但是文件系统没有挂载上。

    我看你的打印信息是Ubi文件系统,不知道有没有参考下面的文档正确制作UBI文件系统:

    http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/59921.aspx

  • 感谢您的回复,我已经按照您提供的文档来制作ubi.img,还是启动不了,后来换成您挂在网站上的ubi.img,还是出现问题,打印信息如下,能给我分析讲解一下吗?

    U-Boot 2013.10-00189-g78d8ebd-dirty (Mar 06 2015 - 10:55:21)                    
                                                                                    
    I2C:   ready                                                                    
    DRAM:  1 GiB                                                                    
    NAND:  256 MiB                                                                  
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    nand: error: uncorrectable ECC errors                                           
    NAND read from offset 1e0000 failed -74                                         
    *** Warning - some problems detected reading environment; recovered successfully
    *** Warning - bad CRC, using default environment                                
                                                                                    
    Net:   <ethaddr> not set. Validating first E-fuse MAC                           
    cpsw, usb_ether                                                                 
    Hit any key to stop autoboot:  0                                                
    Card did not respond to voltage select!                                         
    mmc0(part 0) is current device                                                  
    Scanning mmc 0...                                                               
    Card did not respond to voltage select!                                         
    ** Bad device mmc 0 **                                                          
    Card did not respond to voltage select!                                         
    mmc0(part 0) is current device                                                  
    Card did not respond to voltage select!                                         
    Card did not respond to voltage select!                                         
    mmc1(part 0) is current device                                                  
    Card did not respond to voltage select!                                         
    Booting from nand ...                                                           
                                                                                    
    NAND read: device 0 offset 0x80000, size 0x40000                                
     262144 bytes read: OK                                                          
                                                                                    
    NAND read: device 0 offset 0x200000, size 0x800000                              
     8388608 bytes read: OK                                                         
    Kernel image @ 0x80200000 [ 0x000000 - 0x3ed470 ]                               
    ## Flattened Device Tree blob at 80f80000                                       
       Booting using the fdt blob at 0x80f80000                                     
       Loading Device Tree to 9fff2000, end 9ffff25b ... OK                         
                                                                                    
    Starting kernel ...                                                             
                                                                                    
    [    0.000000] Booting Linux on physical CPU 0x0                                
    [    0.000000] Linux version 3.12.10-ti2013.12.01 (jenkins@sdit-build02) (gcc v4
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d  
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
    [    0.000000] Machine: Generic AM33XX (Flattened Device Tree), model: TI AM335M
    [    0.000000] cma: CMA: reserved 24 MiB at ae000000                            
    [    0.000000] Memory policy: ECC disabled, Data cache writeback                
    [    0.000000] CPU: All CPU(s) started in SVC mode.                             
    [    0.000000] AM335X ES2.1 (sgx neon )                                         
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pa6
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=ubi0:rootfs rw 1
    [    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)             
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)   
    [    0.000000] Memory: 1003124K/1045504K available (5555K kernel code, 559K rwd)
    [    0.000000] Virtual kernel memory layout:                                    
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)                
    [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)                
    [    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)                
    [    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)                
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)                
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)                
    [    0.000000]       .text : 0xc0008000 - 0xc074a04c   (7433 kB)                
    [    0.000000]       .init : 0xc074b000 - 0xc07a15f0   ( 346 kB)                
    [    0.000000]       .data : 0xc07a2000 - 0xc082ddd8   ( 560 kB)                
    [    0.000000]        .bss : 0xc082ddd8 - 0xc0866400   ( 226 kB)                
    [    0.000000] NR_IRQS:16 nr_irqs:16 16                                         
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrus
    [    0.000000] Total of 128 interrupts on 1 active controller                   
    [    0.000000] OMAP clockevent source: timer2 at 19200000 Hz                    
    [    0.000000] sched_clock: 32 bits at 19MHz, resolution 52ns, wraps every 2236s
    [    0.000000] OMAP clocksource: timer1 at 19200000 Hz                          
    [    0.000000] Console: colour dummy device 80x30                               
    [    0.000329] Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)          
    [    0.049710] pid_max: default: 32768 minimum: 301                             
    [    0.049826] Security Framework initialized                                   
    [    0.049881] Mount-cache hash table entries: 512                              
    [    0.058922] CPU: Testing write buffer coherency: ok                          
    [    0.059392] Setting up static identity map for 0xc0572e68 - 0xc0572ed8       
    [    0.060417] devtmpfs: initialized                                            
    [    0.062130] VFP support v0.3: implementor 41 architecture 3 part 30 variant 3
    [    0.125912] omap_hwmod: debugss: _wait_target_disable failed                 
    [    0.126716] pinctrl core: initialized pinctrl subsystem                      
    [    0.127598] regulator-dummy: no parameters                                   
    [    0.130324] NET: Registered protocol family 16                               
    [    0.132590] DMA: preallocated 256 KiB pool for atomic coherent allocations   
    [    0.135199] cpuidle: using governor ladder                                   
    [    0.135217] cpuidle: using governor menu                                     
    [    0.143209] platform mpu.1: FIXME: clock-name 'fck' DOES NOT exist in dt!    
    [    0.144318] platform 49000000.edma: FIXME: clock-name 'fck' DOES NOT exist i!
    [    0.145588] OMAP GPIO hardware version 0.1                                   
    [    0.154762] omap-gpmc 50000000.gpmc: could not find pctldev for node /pinmuxe
    [    0.154796] platform 50000000.gpmc: Driver omap-gpmc requests probe deferral
    [    0.155163] platform 56000000.sgx: FIXME: clock-name 'fck' DOES NOT exist in!
    [    0.158992] DSS not supported on this SoC                                    
    [    0.159012] No ATAGs?                                                        
    [    0.159023] hw-breakpoint: debug architecture 0x4 unsupported.               
    [    0.181747] bio: create slab <bio-0> at 0                                    
    [    0.195782] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver     
    [    0.196694] vbat: 5000 mV                                                    
    [    0.197087] lis3_reg: no parameters                                          
    [    0.197535] wlan-en-regulator: 1800 mV                                       
    [    0.200695] vgaarb: loaded                                                   
    [    0.201993] SCSI subsystem initialized                                       
    [    0.203316] usbcore: registered new interface driver usbfs                   
    [    0.203488] usbcore: registered new interface driver hub                     
    [    0.203690] usbcore: registered new device driver usb                        
    [    0.204678] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@4e
    [    0.204707] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral   
    [    0.204734] omap_i2c 4802a000.i2c: could not find pctldev for node /pinmux@4e
    [    0.204750] platform 4802a000.i2c: Driver omap_i2c requests probe deferral   
    [    0.205002] media: Linux media interface: v0.10                              
    [    0.205172] Linux video capture interface: v2.00                             
    [    0.205438] pps_core: LinuxPPS API ver. 1 registered                         
    [    0.205447] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giom>
    [    0.205572] PTP clock support registered                                     
    [    0.208132] Switched to clocksource timer1                                   
    [    0.226052] NET: Registered protocol family 2                                
    [    0.226737] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
    [    0.226888] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)        
    [    0.226972] TCP: Hash tables configured (established 8192 bind 8192)         
    [    0.227095] TCP: reno registered                                             
    [    0.227110] UDP hash table entries: 512 (order: 1, 8192 bytes)               
    [    0.227138] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)          
    [    0.227355] NET: Registered protocol family 1                                
    [    0.227788] RPC: Registered named UNIX socket transport module.              
    [    0.227800] RPC: Registered udp transport module.                            
    [    0.227806] RPC: Registered tcp transport module.                            
    [    0.227812] RPC: Registered tcp NFSv4.1 backchannel transport module.        
    [    0.228927] NetWinder Floating Point Emulator V0.97 (double precision)       
    [    0.229640] PM: Loading am335x-pm-firmware.binbounce pool size: 64 pages     
    [    0.374345] VFS: Disk quotas dquot_6.5.2                                     
    [    0.374418] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)       
    [    0.375085] NFS: Registering the id_resolver key type                        
    [    0.375182] Key type id_resolver registered                                  
    [    0.375191] Key type id_legacy registered                                    
    [    0.375241] jffs2: version 2.2. (NAND) (SUMMARY)  �© 2001-2006 Red Hat, Inc.
    [    0.375435] msgmni has been set to 1485                                      
    [    0.376993] NET: Registered protocol family 38                               
    [    0.377035] io scheduler noop registered                                     
    [    0.377044] io scheduler deadline registered                                 
    [    0.377076] io scheduler cfq registered (default)                            
    [    0.379428] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.432141] Console: switching to colour frame buffer device 100x30          
    [    0.439200] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled          
    [    0.442165] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud =0
    [    1.255296] console [ttyO0] enabled                                          
    [    1.260844] 48022000.serial: ttyO1 at MMIO 0x48022000 (irq = 89, base_baud =1
    [    1.274470] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20      
    [    1.292939] brd: module loaded                                               
    [    1.302095] loop: module loaded                                              
    [    1.306631] (stk) :sysfs entries created                                     
    [    1.311952] (stk) : debugfs entries created                                  
    [    1.322125] mtdoops: mtd device (mtddev=name/number) must be supplied        
    [    1.334757] usbcore: registered new interface driver asix                    
    [    1.342137] usbcore: registered new interface driver ax88179_178a            
    [    1.350342] usbcore: registered new interface driver cdc_ether               
    [    1.358201] usbcore: registered new interface driver r815x                   
    [    1.365553] usbcore: registered new interface driver smsc95xx                
    [    1.373268] usbcore: registered new interface driver net1080                 
    [    1.380872] usbcore: registered new interface driver cdc_subset              
    [    1.388820] usbcore: registered new interface driver zaurus                  
    [    1.396395] usbcore: registered new interface driver cdc_ncm                 
    [    1.404372] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver       
    [    1.412992] ehci-pci: EHCI PCI platform driver                               
    [    1.419050] ehci-omap: OMAP-EHCI Host Controller driver                      
    [    1.426878] usbcore: registered new interface driver cdc_wdm                 
    [    1.434553] usbcore: registered new interface driver usb-storage             
    [    1.443579] mousedev: PS/2 mouse device common for all mice                  
    [    1.452221] input: matrix_keypad.7 as /devices/matrix_keypad.7/input/input0  
    [    1.463573] input: ti-tsc as /devices/ocp.2/44e0d000.tscadc/TI-am335x-tsc/in1
    [    1.476188] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [    1.486402] i2c /dev entries driver                                          
    [    1.491624] Driver for 1-wire Dallas network protocol.                       
    [    1.500831] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec   
    [    1.511954] edma-dma-engine edma-dma-engine.0: allocated channel for 0:25    
    [    1.521046] edma-dma-engine edma-dma-engine.0: allocated channel for 0:24    
    [    1.530062] omap_hsmmc 48060000.mmc: unable to get vmmc regulator -517       
    [    1.538686] edma-dma-engine edma-dma-engine.0: freeing channel for 24        
    [    1.547156] edma-dma-engine edma-dma-engine.0: freeing channel for 25        
    [    1.555763] platform 48060000.mmc: Driver omap_hsmmc requests probe deferral
    [    1.565333] edma-dma-engine edma-dma-engine.0: allocated channel for 0:13    
    [    1.574306] edma-dma-engine edma-dma-engine.0: allocated channel for 0:12    
    [    1.657190] omap_hwmod: gpio1: _wait_target_disable failed                   
    [    1.689202] ledtrig-cpu: registered to indicate activity on CPUs             
    [    1.700633] edma-dma-engine edma-dma-engine.0: allocated channel for 0:36    
    [    1.709719] omap-sham 53100000.sham: hw accel on OMAP rev 4.3                
    [    1.718820] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2                
    [    1.726413] edma-dma-engine edma-dma-engine.0: allocated channel for 0:5     
    [    1.735340] edma-dma-engine edma-dma-engine.0: allocated channel for 0:6     
    [    1.746861] usbcore: registered new interface driver usbhid                  
    [    1.754230] usbhid: USB HID core driver                                      
    [    1.761685] oprofile: no performance counters                                
    [    1.767845] oprofile: using timer interrupt.                                 
    [    1.773852] TCP: cubic registered                                            
    [    1.778237] Initializing XFRM netlink socket                                 
    [    1.783879] NET: Registered protocol family 17                               
    [    1.789796] NET: Registered protocol family 15                               
    [    1.795686] 8021q: 802.1Q VLAN Support v1.8                                  
    [    1.801295] Key type dns_resolver registered                                 
    [    1.807613] cpu cpu0: cpu0 regulator not ready, retry                        
    [    1.814397] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe defel
    [    1.824741] ThumbEE CPU extension supported.                                 
    [    1.832452] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.839308] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.848406] No NAND device found                                             
    [    1.854749] tps65910 0-002d: No interrupt support, no core IRQ               
    [    1.864540] vrtc: 1800 mV                                                    
    [    1.868445] vrtc: supplied by vbat                                           
    [    1.874201] vio: at 1500 mV                                                  
    [    1.878058] vio: supplied by vbat                                            
    [    1.883819] vdd_mpu: 912 <--> 1375 mV at 1325 mV                             
    [    1.890094] vdd_mpu: supplied by vbat                                        
    [    1.896230] vdd_core: 912 <--> 1150 mV at 1137 mV                            
    [    1.902610] vdd_core: supplied by vbat                                       
    [    1.908685] vdd3: 5000 mV                                                    
    [    1.913337] vdig1: at 1800 mV                                                
    [    1.917416] vdig1: supplied by vbat                                          
    [    1.923178] vdig2: at 1800 mV                                                
    [    1.927253] vdig2: supplied by vbat                                          
    [    1.933012] vpll: at 1800 mV                                                 
    [    1.936968] vpll: supplied by vbat                                           
    [    1.942597] vdac: at 1800 mV                                                 
    [    1.946555] vdac: supplied by vbat                                           
    [    1.952206] vaux1: at 1800 mV                                                
    [    1.956279] vaux1: supplied by vbat                                          
    [    1.962057] vaux2: at 3300 mV                                                
    [    1.966127] vaux2: supplied by vbat                                          
    [    1.971882] vaux33: at 3300 mV                                               
    [    1.976081] vaux33: supplied by vbat                                         
    [    1.981956] vmmc: 1800 <--> 3300 mV at 3300 mV                               
    [    1.987969] vmmc: supplied by vbat                                           
    [    1.993284] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz                  
    [    2.003846] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz                  
    [    2.012340] edma-dma-engine edma-dma-engine.0: allocated channel for 0:25    
    [    2.021335] edma-dma-engine edma-dma-engine.0: allocated channel for 0:24    
    [    2.070740] UBI error: ubi_init: cannot open mtd NAND.file-system, error -2  
    [    2.138180] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6            
    [    2.146205] davinci_mdio 4a101000.mdio: detected phy mask fffffffe           
    [    2.155131] libphy: 4a101000.mdio: probed                                    
    [    2.160444] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, drit
    [    2.173441] Detected MACID = c4:ed:ba:88:43:7c                               
    [    2.181862] input: volume_keys.8 as /devices/volume_keys.8/input/input2      
    [    2.191436] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:)
    [    2.206621] UBIFS error (pid 1): ubifs_mount: cannot open "ubi0:rootfs", err9
    [    2.216673] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0)9
    [    2.227201] Please append a correct "root=" boot option; here are the availa:
    [    2.238224] Kernel panic - not syncing: VFS: Unable to mount root fs on unkn)

  • 在内核信息里面没有找到nand的设备,你在配置kernel的使用,有配置过NAND吗?参考的是哪个DTS文件?

    建议核查一下,目前你使用的配置文件中,是否有对NAND的配置,可以参考一下:EZSDK_07_00_00_00/linux-3.12.10-ti2013.12.01/arch/arm/boot/dts/am335x-evm.dts配置,里面的nandflash_pins_s0: nandflash_pins_s0 结构体,gpmc结构体,这些都有在你目前板上的DTS中配置过吗?

  • 您好,am335x-evm.dts里面已经默认配置了,跟这个帖子一样

    http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/p/71008/204074.aspx#204074

    说是时序不对,要在device tree配一下时序,可是具体是怎么做的啊?

  • 就是改dts文件中的gpmc结构体,如下所示:相关具体的含义,参考TRM的GPMC章节CONFIG1~6

    PS:下面每行的数字指代的第几行

    430 &gpmc {
    431 status = "okay";
    432 pinctrl-names = "default";
    433 pinctrl-0 = <&nandflash_pins_s0>;
    434 ranges = <0 0 0x08000000 0x10000000>; /* CS0: NAND */
    435 nand@0,0 {
    436 reg = <0 0 0>; /* CS0, offset 0 */
    437 nand-bus-width = <8>;
    438 ti,nand-ecc-opt = "bch8";
    439 gpmc,device-nand = "true";
    440 gpmc,device-width = <1>;
    441 gpmc,sync-clk-ps = <0>;
    442 gpmc,cs-on-ns = <0>;
    443 gpmc,cs-rd-off-ns = <44>;
    444 gpmc,cs-wr-off-ns = <44>;
    445 gpmc,adv-on-ns = <6>;
    446 gpmc,adv-rd-off-ns = <34>;
    447 gpmc,adv-wr-off-ns = <44>;
    448 gpmc,we-on-ns = <0>;
    449 gpmc,we-off-ns = <40>;
    450 gpmc,oe-on-ns = <0>;
    451 gpmc,oe-off-ns = <54>;
    452 gpmc,access-ns = <64>;
    453 gpmc,rd-cycle-ns = <82>;
    454 gpmc,wr-cycle-ns = <82>;
    455 gpmc,wait-on-read = "true";
    456 gpmc,wait-on-write = "true";
    457 gpmc,bus-turnaround-ns = <0>;
    458 gpmc,cycle2cycle-delay-ns = <0>;
    459 gpmc,clk-activation-ns = <0>;
    460 gpmc,wait-monitoring-ns = <0>;
    461 gpmc,wr-access-ns = <40>;
    462 gpmc,wr-data-mux-bus-ns = <0>;
    463
    464 #address-cells = <1>;
    465 #size-cells = <1>;
    466 elm_id = <&elm>;
    467
    468 /* MTD partition table */
    469 partition@0 {
    470 label = "SPL1";
    471 reg = <0x00000000 0x000020000>;

  • "参考TRM的GPMC章节CONFIG1~6",您好,TRM 是什么?是文档吗?有链接吗?

  • AM335x的数据手册,链接如下,里面描述的比较详细:

    http://www.ti.com/lit/ug/spruh73l/spruh73l.pdf

  • 您好,我从SD卡启动的时候,能够识别的NAND并打印分区信息,如下:

    [    1.480924] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.486391] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.493761] ONFI param page 0 valid                                          
    [    1.497471] ONFI flash detected                                              
    [    1.500775] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron MT29F24
    [    1.512752] omap2-nand: detected x8 NAND flash                               
    [    1.517421] nand: using OMAP_ECC_BCH8_CODE_HW ECC scheme                     
    [    1.523022] omap2-nand: using custom ecc layout                              
    [    1.527960] 10 ofpart partitions found on MTD device omap2-nand.0            
    [    1.534360] Creating 10 MTD partitions on "omap2-nand.0":

    但是从NAND启动时,识别了不了NAND,没有打印id和分区信息,文件系统挂载不了,如下:

    [    1.801391] omap-gpmc 50000000.gpmc: GPMC revision 6.0                       
    [    1.808239] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000            
    [    1.817379] No NAND device found

    请问一下为什么会这样,还有SDK07.00里面的默认是这样配置的,有2个

    nandflash_pins_default: nandflash_pins_default {
    pinctrl-single,pins = <
    0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
    0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
    0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
    0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
    0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
    0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
    0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
    0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
    0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
    0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
    0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
    0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
    0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
    0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
    0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
    >;
    };

    nandflash_pins_sleep: nandflash_pins_sleep {
    pinctrl-single,pins = <
    0x0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0xc (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x10 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x14 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x18 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x1c (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x70 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x74 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x7c (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x94 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x98 (PIN_INPUT_PULLDOWN | MUX_MODE7)
    0x9c (PIN_INPUT_PULLDOWN | MUX_MODE7)
    >;
    };

    按照您的改成这样,还是识别不到NAND
    gpmc: gpmc@50000000 {
            status = "okay";
            pinctrl-names = "default", "sleep";
            pinctrl-0 = <&nandflash_pins_default>;
            pinctrl-1 = <&nandflash_pins_sleep>;
            ranges = <0 0 0x08000000 0x10000000>;   /* CS0: NAND */
    nand@0,0 {
            reg = <0 0 0>; /* CS0, offset 0 */
            nand-bus-width = <8>;
            ti,nand-ecc-opt = "bch8";
            gpmc,device-nand = "true";
            gpmc,device-width = <1>;
            gpmc,sync-clk-ps = <0>;
            gpmc,cs-on-ns = <0>;
            gpmc,cs-rd-off-ns = <44>;
            gpmc,cs-wr-off-ns = <44>;
            gpmc,adv-on-ns = <6>;
            gpmc,adv-rd-off-ns = <34>;
            gpmc,adv-wr-off-ns = <44>;
            gpmc,we-on-ns = <0>;
            gpmc,we-off-ns = <40>;
            gpmc,oe-on-ns = <0>;
            gpmc,oe-off-ns = <54>;
            gpmc,access-ns = <64>;
            gpmc,rd-cycle-ns = <82>;
            gpmc,wr-cycle-ns = <82>;
            gpmc,wait-on-read = "true";

  • 上面描述的不是说让你改成我的配置参数,上面我给的配置参数只是个样本(这个是AM335x的评估板上用的NAND flash时序)。你应该根据你使用的NAND flash,对这些时序进行调整,依据是根据你使用的NAND flash手册。

    SD卡启动的时候可以识别出NAND信息,并且可以读入kernel,那这说明你在UBOOT环节配置的是正确的。因为kernel中会重新配置,所以可能在这个环节出了问题。

    最简单的办法是你在uboot的环境下通过md命令,打印出你的NAND时序参数,然后把这个时序参数赋值到kernel的配置中,这样就可以确认是不是这个时序问题了。

  • 感谢您的回复,请问怎么用md命令打印NAND时序参数,还有在kernel里的重新配置是在哪个文件?

  • 你的NAND应该是接在了GPMC_CS0上,所以要查看的时序相关的地址空间偏移量是0x60h~0x78h,GPMC的基地址为0x50000000。所以你就用

    md 0x50000060即可查看对应寄存器的值,具体含义参考AM335x的TRM手册,gpmc的寄存器章节。理解含义了,再对照着上面的DTS文件修改就好了。