TI中文支持网
TI专业的中文技术问题搜集分享网站

nand write.e 和nand write.yaffs的区别?

nand write.e 和nand write.yaffs有什么区别啊?

xm xm:

回复 kooking:

能不能直接用nand write.e来烧写yaffs文件系统镜像呢?

kooking:

回复 xm xm:

直接用nand write和nand write.e可能也可以烧写成功,但容易产生坏块,用nand write.yaffs烧写更好

xm xm:

回复 kooking:

我昨天晚上用write.e烧写yaffs2文件系统映像到开发板中,出现了下面的错误:

DM6467 EVM > boot

NAND read: device 0 offset 0x500000, size 0x220000 2228224 bytes read: OK## Booting kernel from Legacy Image at 80700000 … Image Name: Linux-2.6.32-rc2-davinci1-g73dbf Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2039444 Bytes = 1.9 MB Load Address: 80008000 Entry Point: 80008000 Verifying Checksum … OK Loading Kernel Image … OKOK

Starting kernel …

Uncompressing Linux…………………………………………………………………………………………………………………… done, booting the kernel.Linux version 2.6.32-rc2-davinci1-g73dbf71-dirty (root@bbs) (gcc version 4.2.0 (MontaVista 4.2.0-16.0.32.0801914 2008-08-30)) #14 PREEMPT Wed Jun 11 09:40:09 CST 2014CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177CPU: VIVT data cache, VIVT instruction cacheMachine: DaVinci DM646x EVMMemory policy: ECC disabled, Data cache writebackDaVinci dm6467_rev3.x variant 0x1Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512Kernel command line: noinitrd root=/dev/mtdblock3 rw rootfstype=yaffs2 init=/linuxrc console=ttyS0,115200PID hash table entries: 512 (order: -1, 2048 bytes)Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)Memory: 128MB = 128MB totalMemory: 125496KB available (3808K code, 329K data, 136K init, 0K highmem)SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1Hierarchical RCU implementation.NR_IRQS:245Console: colour dummy device 80x30Calibrating delay loop… 249.03 BogoMIPS (lpj=1245184)Mount-cache hash table entries: 512CPU: Testing write buffer coherency: okDaVinci: 43 gpio irqsNET: Registered protocol family 16MUX: Setting register STSOMUX_DISABLE PINMUX0 (0x00000000) = 0x00000000 -> 0x00000000MUX: Setting register STSIMUX_DISABLE PINMUX0 (0x00000000) = 0x00000000 -> 0x00000000MUX: Setting register PTSOMUX_DISABLE PINMUX0 (0x00000000) = 0x00000000 -> 0x00000000MUX: Setting register PTSIMUX_DISABLE PINMUX0 (0x00000000) = 0x00000000 -> 0x00000000MUX: initialized CIR_UART2MUX: Setting register CIR_UART2 PINMUX1 (0x00000004) = 0x00000000 -> 0x00000020MUX: initialized UART0_GPIO_36_37_38_8MUX: Setting register UART0_GPIO_36_37_38_8 PINMUX1 (0x00000004) = 0x00000020 -> 0x00000021MUX: initialized UART1_GPIO_25_26MUX: Setting register UART1_GPIO_25_26 PINMUX1 (0x00000004) = 0x00000021 -> 0x00000025MUX: initialized UART2_GPIO_39_40_41_42MUX: Setting register UART2_GPIO_39_40_41_42 PINMUX1 (0x00000004) = 0x00000025 -> 0x00000035bio: create slab <bio-0> at 0SCSI subsystem initializedusbcore: registered new interface driver usbfsusbcore: registered new interface driver hubusbcore: registered new device driver usbvpif vpif: vpif probe successSwitching to clocksource timer0_1musb_hdrc: version 6.0, cppi-dma, host, debug=0musb_hdrc: USB Host mode controller at fec64000 using DMA, IRQ 13musb_hdrc musb_hdrc: MUSB HDRC host drivermusb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1usb usb1: configuration #1 chosen from 1 choicehub 1-0:1.0: USB hub foundhub 1-0:1.0: 1 port detectedNET: Registered protocol family 2IP route cache hash table entries: 1024 (order: 0, 4096 bytes)TCP established hash table entries: 4096 (order: 3, 32768 bytes)TCP bind hash table entries: 4096 (order: 2, 16384 bytes)TCP: Hash tables configured (established 4096 bind 4096)TCP reno registeredNET: Registered protocol family 1RPC: Registered udp transport module.RPC: Registered tcp transport module.RPC: Registered tcp NFSv4.1 backchannel transport module.yaffs Jun 4 2014 09:57:36 Installing.Installing knfsd (copyright (C) 1996 okir@monad.swb.de).JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.msgmni has been set to 245io scheduler noop registeredio scheduler anticipatory registered (default)DMA: DMA_devInit()DMA:install success, major num = 252CIR device registered successfully (Major = 251, Minor = 0)[XKL_GPIO_DRIVER]:dm6467_gpio initializedSerial: 8250/16550 driver, 3 ports, IRQ sharing disabledserial8250.0: ttyS0 at MMIO 0x1c20000 (irq = 40) is a ST16654console [ttyS0] enabledserial8250.0: ttyS1 at MMIO 0x1c20400 (irq = 41) is a ST16650V2serial8250 serial8250.0: unable to register port at index 2 (IO0 MEM1c20800 IRQ42): -22brd: module loadedloop: module loadedat24 1-0050: 32768 byte 24c256 EEPROM (writable)NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit)Scanning device for bad blocksBad eraseblock 252 at 0x0000003f0000Bad eraseblock 256 at 0x000000400000Bad eraseblock 260 at 0x000000410000Creating 4 MTD partitions on "davinci_nand.0":0x000000000000-0x000000020000 : "params"mtd: Giving out device 0 to params0x000000020000-0x000000160000 : "bootloader"mtd: Giving out device 1 to bootloader0x000000500000-0x000000900000 : "kernel"mtd: Giving out device 2 to kernel0x000000900000-0x000004000000 : "filesystem"mtd: Giving out device 3 to filesystemdavinci_nand davinci_nand.0: controller rev. 2.2spi_davinci spi_davinci.0: DaVinci SPI driver in EDMA modeUsing RX channel = 17 , TX channel = 16 and event queue = 3at25 spi0.0: 32 KByte at25640a eeprom, pagesize 64spi_davinci spi_davinci.0: Controller at 0xfec66800PPP generic driver version 2.4.2PPP Deflate Compression module registeredtun: Universal TUN/TAP device driver, 1.6tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>dm9000 Ethernet Driver, V1.31console [netcon0] enablednetconsole: network logging startedInitializing USB Mass Storage driver…usbcore: registered new interface driver usb-storageUSB Mass Storage support registered.usbcore: registered new interface driver usbtestmice: PS/2 mouse device common for all micertc-pcf8563 1-0051: chip found, driver version 0.4.3rtc-pcf8563 1-0051: rtc core: registered rtc-pcf8563 as rtc0i2c /dev entries driverLinux video capture interface: v2.00cs4954 1-0000: chip found @ 0x0 (DaVinci I2C adapter)tvp5158 1-005e: [tvp5158 probe]: chip found @ 0xbc (DaVinci I2C adapter)tvp5158_checkChip ok!Patch is downloading…Patch is downloaded. Soft reset!using default mode PAL!tvp5158_initVideoMode successfully!tvp5158_initAudioMode devId=0 successfully!vpif_capture vpif_capture: registered sub device tvp5158-0tvp5158 1-005f: [tvp5158 probe]: chip found @ 0xbe (DaVinci I2C adapter)tvp5158_checkChip ok!Patch is downloading…Patch is downloaded. Soft reset!using default mode PAL!tvp5158_initVideoMode successfully!tvp5158_initAudioMode devId=1 successfully!vpif_capture vpif_capture: registered sub device tvp5158-1vpif_capture vpif_capture: DM646x VPIF Capture driver initializedwatchdog watchdog: heartbeat 60 secAdvanced Linux Sound Architecture Driver Version 1.0.21.[coolen_debug](cs4341_i2c_probe).[coolen_debug](cs4341_register).[coolen_debug](davinci_mcasp_probe): txnumevt = 0.rxnumevt=0[coolen_debug](davinci_mcasp_probe): playbackCH = 6.[coolen_debug](davinci_mcasp_probe): captureCH = 9.[coolen_debug](davinci_mcasp_probe): txnumevt = 0.rxnumevt=0[coolen_debug](davinci_mcasp_probe): playbackCH = 12.[coolen_debug](davinci_mcasp_probe): captureCH = -1.[coolen_debug](cs4341_probe).[coolen_debug](cs4341_init):gpioRet = 0.gpio value 2[coolen_debug](cs4341_init): cs4341 regList:

CS4341_REG_MODE:0CS4341_REG_MCLKDIV:0CS4341_REG_TMIX:8cCS4341_REG_AVOLUME:0CS4341_REG_BVOLUME:0asoc: cs4341 <-> davinci-i2s mapping ok[coolen_debug](evm_cs4341_init).ALSA device list: #0: DaVinci DM6467 EVM (cs4341)TCP cubic registeredNET: Registered protocol family 17Clocks: disable unused emacClocks: disable unused timer1davinci_emac_probe: using random MAC addr: 1a:77:de:0c:50:9cemac-mii: probedrtc-pcf8563 1-0051: low voltage detected, date/time is not reliable.rtc-pcf8563 1-0051: retrieved date/time is not valid.rtc-pcf8563 1-0051: hctosys: invalid date/timeyaffs: dev is 32505859 name is "mtdblock3"yaffs: passed flags ""yaffs: Attempting MTD mount on 31.3, "mtdblock3"yaffs: auto selecting yaffs1yaffs_read_super: isCheckpointed 0VFS: Mounted root (yaffs2 filesystem) on device 31:3.Freeing init memory: 136KWarning: unable to open an initial console.Failed to execute /linuxrc. Attempting defaults…Kernel panic – not syncing: No init found. Try passing init= option to kernel.Backtrace:[<c002e6d0>] (dump_backtrace+0x0/0x110) from [<c002e814>] (dump_stack+0x18/0x1c)

r6:00000000 r5:c002560c r4:c0409450[<c002e7fc>] (dump_stack+0x0/0x1c) from [<c0040164>] (panic+0x54/0x124)[<c0040110>] (panic+0x0/0x124) from [<c002a578>] (init_post+0xd4/0xfc) r3:c6103f00 r2:c03e4520 r1:000000c0 r0:c038390c[<c002a4a4>] (init_post+0x0/0xfc) from [<c00087cc>] (kernel_init+0xe0/0x110) r4:c0408d00[<c00086ec>] (kernel_init+0x0/0x110) from [<c0043240>] (do_exit+0x0/0x654) r5:00000000 r4:00000000

请问一下,这是因为烧写命令的原因,还是根文件系统本身的原因啊?

kooking:

回复 xm xm:

一般可能是这两种情况:

1.需要使用nand write.yaffs命令烧写

2.mkyaffs2image工具或者制作时的参数为问题

可以先增加u-boot对nand write.yaffs的支持,这个网上的资料很多,如果还有错误,再检查工具。

http://processors.wiki.ti.com/index.php/Put_YAFFS_Image_to_Flash

http://processors.wiki.ti.com/index.php/Create_a_YAFFS_Target_Image

赞(0)
未经允许不得转载:TI中文支持网 » nand write.e 和nand write.yaffs的区别?
分享到: 更多 (0)