AnsweredAssumed Answered

jffs2_scan_eraseblock() on re-imaging P1020WLAN

Question asked by arashaz. on Jun 21, 2013
Latest reply on Jul 8, 2013 by arashaz.

  Hello,

I am working on a P1020WLAN-compatible board with only one NOR flash to boot it with a Linux image. Using LTIB, I build the image and put
three files UImage, .dtb file and root.squashfs in the flash, in the addresses determined by Freescale. I follow the instruction provided by Freescale (erasing the NOR flash , TFTP and then cp.b). When I boot the board and the kernel tries to switch to jfss2 mode, we encounter the famous errors of  jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at …. 0xdead instead.

 

If instead of my own root.squashfs, I use the original  root.squashfs file provided in the USB disk by Freescale for P1020WLAN (keeping the UImage and .dtb and only re-programming the root.squashfs file in the same address), it works well with no problem.  Note that using unsquashfs  -s tool, I compared both files and all details except the size are  the same (block size, version, compression, …).  I thought may be something is wrong with my LTIB. So, I decompressed the original root.squashfs file and just recompressed it with no change using mksquashfs4. It did not work on the board (the same jfss2 problem). I tried different switches (-nopad, -b 65536 , …), but none of them worked.

U-boot bootargs are the same as P1020WLAN and naturally the same for all squashfs files that I tried.  All the files have almost the
same size between 23 to 26 MB, so the space erased in the flash and assigned to the file is enough.

Note that  I can build a RamDisk image using LTIB and boot the board in RAM. So the board is OK. The flash is also OK because it works well with the original root.squashfs. So, I do not know what could be wrong .    I appreciate if you could kindly advise me.

 

The details are as follow:

  NOR Flash is S29GL512P . In U-boot, we can see:

  Bank # 1: CFI conformant FLASH (16 x 16)  Size: 64 MB in 512 Sectors           

  AMD Standard command set, Manufacturer ID: 0x89, Device ID: 0x227E           

  Erase timeout: 4096 ms, write timeout: 2 ms                                  

  Buffer write timeout: 5 ms, buffer size: 1024 bytes                          

 

 

U-boot bootargs:

  bootargs=root=/dev/mtdblock1 rw console=ttyS0,115200
init=/etc/preinit cache-sram-size=0x10000

 

 

 

 

 

 

 

Outcomes