Armadillo-2x0シリーズの古いカーネルイメージ[1]では、 NANDモジュールの誤認識により、正常に起動できない場合があります[2]。
この現象を回避するには最新のカーネルイメージを使用するか、下記に示す内容(NANDドライバを無効にする)のようにコンフィグレーションし直す必要があります。
Device Drivers ---> Memory Technology Devices (MTD) ---> NAND Flash Device Drivers ---> < > NAND Device Support
NANDモジュールを使用しないときは、必ずNAND用デバイスドライバを無効にしてください。
[1] 誤認識をする可能性のあるカーネルイメージ
Target | 該当するイメージバージョン |
---|---|
Armadillo-220 | v1.06以前 |
Armadillo-230 | v1.04以前 |
Armadillo-240 | v1.05以前 |
[2] 誤認識時のカーネル起動ログ
Uncompressing kernel.................................................................................done. Uncompressing ramdisk.............................................................................................done. Doing console=ttyAM0,115200 Doing mtdparts=armadillo2x0-nor:0x10000(bootloader)ro,0x170000(kernel),0x670000(userland),-(config) Linux version 2.6.12.3-a9-11 (atmark@atde) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 Fri Oct 19 01:29:32 JST 2007 CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T) CPU0: D VIVT write-back cache CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets Machine: Armadillo-230 ATAG_INITRD is deprecated; please update your bootloader. Memory policy: ECC disabled, Data cache writeback Built 1 zonelists Kernel command line: console=ttyAM0,115200 mtdparts=armadillo2x0-nor:0x10000(bootloader)ro,0x170000(kernel),0x670000(userland),-(config) PID hash table entries: 256 (order: 8, 4096 bytes) Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) Memory: 8MB 8MB 16MB = 32MB total Memory: 21404KB available (2162K code, 506K data, 92K init) Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok checking if image is initramfs...it isn't (bad gzip magic numbers); looks like an initrd Freeing initrd memory: 8192K NET: Registered protocol family 16 NetWinder Floating Point Emulator V0.97 (double precision) JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc. Initializing Cryptographic API gpio: Armadillo-2x0 GPIO driver, (C) 2005-2006 Atmark Techno, Inc. led: Armadillo-2x0 LED driver, (C) 2005-2006 Atmark Techno, Inc. ttyAM0 at MMIO 0x808c0000 (irq = 52) is a EP93XX ttyAM1 at MMIO 0x808d0000 (irq = 54) is a EP93XX ttyAM2 at MMIO 0x808e0000 (irq = 55) is a EP93XX io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize loop: loaded (max 8 devices) i2c /dev entries driver i2c-armadillo9: i2c Armadillo-9 driver, (C) 2004-2005 Atmark Techno, Inc. i2c-at24cxx: i2c at24cxx eeprom driver, (C) 2003-2005 Atmark Techno, Inc. eth1: LAN9115 (rev 18153473) at fe700000 IRQ 32 armadillo2x0-nor: Found 1 x16 devices at 0x0 in 16-bit bank Amd/Fujitsu Extended Query Table at 0x0040 armadillo2x0-nor: CFI does not contain boot bank location. Assuming top. number of CFI chips: 1 cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. 4 cmdlinepart partitions found on MTD device armadillo2x0-nor parse_mtd_partitions:4 Creating 4 MTD partitions on "armadillo2x0-nor": 0x00000000-0x00010000 : "bootloader" 0x00010000-0x00180000 : "kernel" 0x00180000-0x007f0000 : "userland" 0x007f0000-0x00800000 : "config" NAND device: Manufacturer ID: 0xd3, Chip ID: 0xd3 (Unknown NAND 1GiB 3,3V 8-bit) No oob scheme defined for oobsize 256 Unable to handle kernel NULL pointer dereference at virtual address 00000000 pgd = c0014000 [00000000] *pgd=00000000 Internal error: Oops: 805 [#1] Modules linked in: CPU: 0 PC is at nand_scan+0x740/0xb34 LR is at 0x1 pc : [<c014ad34>] lr : [<00000001>] Not tainted sp : c02e1f80 ip : 00000000 fp : c02e1fb0 r10: 0000002d r9 : 000000d3 r8 : 000000d3 r7 : c5344400 r6 : c5344568 r5 : c026b678 r4 : 00000001 r3 : 00000000 r2 : 00000000 r1 : 00000bd8 r0 : 0000002c Flags: nZCv IRQs on FIQs on Mode SVC_32 Segment kernel Control: C000317F Table: C0014000 DAC: 00000017 Process swapper (pid: 1, stack limit = 0xc02e0248) Stack: (0xc02e1f80 to 0xc02e2000) 1f80: c0235e1c 00000001 c5344568 c5344400 c6052000 c02c1274 00000000 00000000 1fa0: 00000000 c02e1fd4 c02e1fb4 c0027f34 c014a604 00000000 c002cff4 00000000 1fc0: c02e0000 c02e0000 c02e1ff4 c02e1fd8 c002f0c0 c0027e2c 00000000 00000000 1fe0: 00000000 00000000 00000000 c02e1ff8 c00493c8 c002f038 c02e1ff8 c02e1ff8 Backtrace: [<c014a5f4>] (nand_scan+0x0/0xb34) from [<c0027f34>] (armadillo2x0_init+0x118/0x1dc) [<c0027e1c>] (armadillo2x0_init+0x0/0x1dc) from [<c002f0c0>] (init+0x98/0x1d8) r7 = C02E0000 r6 = C02E0000 r5 = 00000000 r4 = C002CFF4 [<c002f028>] (init+0x0/0x1d8) from [<c00493c8>] (do_exit+0x0/0xa9c) r7 = 00000000 r6 = 00000000 r5 = 00000000 r4 = 00000000 Code: 0a000003 e59f03a8 ebfbf18a e3a03000 (e5833000) <0>Kernel panic - not syncing: Attempted to kill init!