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.

Sd card Ext3 vs. NAND jffs2

Other Parts Discussed in Thread: OMAPL138, DM3725

For a long time I am trying to stable our system which uses SD Card as rootfs on evm omapl138.

in order to make the Sd I am using the mksdboot.sh script from the dvsdk which makes two partitions one for uImage and on for rootfs.

We are still getting corruptions once in a while.

now it became even worse after purchasing a new batch of sandisk "ultra 4" 15Mb/s 2GB cards.

the error I am getting after power failure as follow:

>>>>>

 Warning: unable to open an initial console.

udev: starting version 151

mmcblk0: error -84 transferring data, sector 2060006, nr 8, card status 0x900

end_request: I/O error, dev mmcblk0, sector 2060007

Buffer I/O error on device mmcblk0p2, logical block 197257

lost page write due to I/O error on mmcblk0p2

Aborting journal on device mmcblk0p2.

journal commit I/O error

EXT3-fs (mmcblk0p2): error: ext3_journal_start_sb: Detected aborted journal

EXT3-fs (mmcblk0p2): error: remounting filesystem read-only

<<<<<
I am looking for the resone for the issue:
I guess its one of the following:
1. when my system is up it uses "syslogd" to write logs in to files not to memory. can this be the problem ?
2. some times after editing a file or copying a file causes this problem even after "sync".
3. the problem is worse with ultra 4 has maybe the fast write is making it ?
4. we started to implement the NAND solution in the UI expander board to overcome this issue. can someone verify the NAND is more stable solutions when used as jffs2 mtd partition ?
is the a way to overcome this problem with the ext3 ?
Thanks.
Roy
  • freescale提供的解决方法见https://community.freescale.com/thread/277327
    我的imx53的板子上是将linux-2.6.35.3\arch\arm\mach-mx5\mx53_loco.c中

    .max_clk = 50000000,改成.max_clk = 40000000,即:

    static struct mxc_mmc_platform_data mmc3_data = {
        .ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29 | MMC_VDD_29_30
            | MMC_VDD_31_32,
        .caps = MMC_CAP_4_BIT_DATA,
        //.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
        .min_clk = 400000,
        //.max_clk = 50000000,
        .max_clk = 40000000,
        .card_inserted_state = 1,
        .status = sdhc_get_card_det_status,
        .wp_status = 0, /*don't have pin, disable protect*///sdhc_write_protect,
        .clock_mmc = "esdhc_clk",
    };

  • try an industrial grade SLC sd card. I tried ATP and Swissbit, they both work fine.

  • hi all,

    i am using my custom board with DM3725. we did SD card booting it works fine. But now we are going to use standard SD Card (SWISSBIT). before we used Kingstone SD card. now with Swissbit SD card board was not booting. same code what we used before(with kingstone sd card). we dont know what is the difference between those two. please help me.

    but we observed one thing that MMC1_CLK is 24Mhz when we used kingstone, if we use swissbit it is 12Mhz only

    thanks in advance
  • hi,

    the above mentioned MMC1_CLK is correct only that clock difference is because of my firmware only. But that swissbit sd card is not detecting in my custom board and also in beagleboard-xm also. so i tried with another swissbit sd card that is also in same position. i don't know why swissbit sd card is not working. we are using  swiss bit MLC class 6 4GB sd card. please anyone answer my question.. why swissbit mlc, class 6, 4GB sd card is not detecting in beagleboard-xm? 

    thanks in advance

  • Just an update, we have narrowed down the issue to the s-40 and s-40u uSD families of cards from Swissbit which have certain issues which that prevent them from booting. The s-300u and s-200u families of uSD do not have this issue, and boot fine.

    Regards,
    James