From: Julian P. <ju...@wh...> - 2012-07-27 15:21:14
|
Hallo, I'm currently testing an Overo board and want to use UBIFS on NAND. On doing that, I keep encountering the following error message, which is continuously repeated for different offsets/PEBs: [ 169.067535] UBI error: ubi_io_read: error -74 (ECC error) while reading 17 bytes from PEB 2:2303, read 17 bytes [ 169.078308] UBIFS error (pid 102): make_reservation: cannot reserve 4144 bytes in jhead 2, error -74 [ 169.087921] UBIFS error (pid 102): do_writepage: cannot write page 903 of inode 65, error -74 [ 169.096862] UBIFS warning (pid 102): ubifs_ro_mode: switched to read-only mode, error -74 I use linux-omap3-2.6.39 compiled with the default config (+ some additionally activated USB drivers as kernel modules). I tried various methods of getting UBI onto the fourth MTD partition, ranging from creating an UBI image by executing mkfs.ubifs -r rootfs -o rootfs.ubifs -m 2048 -e 129024 -c 4096 followed by ubinize -o rootfs.ubi -p 128KiB -m 2048 -s 512 overo/ubifs.conf where ubifs.conf read like: [ubifs] # Volume mode (other option is static) mode=ubi # Source image image=rootfs.ubifs # Volume ID in UBI image vol_id=0 # Allow for dynamic resize vol_type=dynamic # Volume name vol_name=overo-rootfs # Autoresize volume at first mount vol_flags=autoresize and burning that to flash via uboot by doing # nand erase.part 0x00680000 # fatload mmc 0 ${loadaddr} rootfs.ubi # nand write ${loadaddr} 0x00680000 ${filesize} to using the tools from mtd-utils (ubimkvol). In the last approach, I noticed that no errors occur if the mtd4-partition is wiped clean with the nand erase.part from above, but as soon as I execute ubimkvol -N overo-rootfs -m /dev/ubi0 (which executes successful), mount the new device (which is successful, too) and write data on it, the errors also occur. My approach now would be to try a more recent kernel (I'm currently compiling 3.2). Is anyone using UBIFS successfully on Overo and could point me what I have to change in order to make things work? Thanks for your help, Julian |
From: Julian P. <ju...@wh...> - 2012-08-20 17:37:42
|
Hallo again, I now tested with JFFS2 instead of UBIFS, and am still getting ECC errors like mtd->read(0x8e0 bytes from 0x874) returned ECC error The procedure I used to set up JFFS2 was: mkfs.jffs2 -r rfs -o fs.bin -e 128KiB -s 2048 flash_erase /dev/mtd4 0 0 nandwrite -p /dev/mtd4 fs.bin mount -t jffs2 /dev/mtdblock4 /mnt/root dd if=/dev/zero of=/mnt/root/test.img bs=4096 count=20 After some bytes written, errors like the one above occur. On subsequent mount attempts JFFS2 will refuse to mount the filesystem. Has anyone an idea what causes my problems? Might it also be a hardware error? Thanks, Julian |
From: Julian P. <ju...@wh...> - 2012-08-20 18:20:12
|
On Mon, 20 Aug 2012 19:37:32 +0200, Julian Pietron wrote: > Has anyone an idea what causes my problems? Might it also be a > hardware > error? > After some more testing I can exclude this possibility, as the Gumstix-supplied 2.6.39 kernel from the /2011-08-30-1058 stable images works with UBIFS without problems. Now the question remains what gumstix did different than I did - I also took the 2.6.39 kernel and have - besides of some additional drivers I need compiled as kernel modules and AUFSv2 - exactly the same configuration as they used, and I'm using sakoman's 2.6.39 kernel sources as I think they did. Does anyone know whether they used other sources / additional patches for this release? Thanks, Julian |