[技术问答] 添加32MB的XM25QH256C spinor flash,在加載jffs文件系統時出現大量錯誤

[复制链接]
911|1
 楼主| elephant00 发表于 2023-12-21 15:48 | 显示全部楼层 |阅读模式
jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0xa020 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0xa010 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0xd230 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000000c: 0x5300 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000014: 0x5300 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000018: 0x5300 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000001c: 0xffff instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000020: 0x6000 instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000024: 0x2fff instead

jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000028: 0xe000 instead
riplay 发表于 2023-12-25 09:54 | 显示全部楼层
1.{"XM25QH256C", INFO(0x204019, 0, 64 * 1024, 512, 0) }, 最后一个参数必须是0,不是sect_4k
2.因为size超过16MB,地址需要4byte mode,此时需要注意进入4byte的指令是哪一个种类,是Spansion style还是winbond style, 需要查询对应规格
        printk("set_4byte = %x",JEDEC_MFR(jedec_id));
switch (JEDEC_MFR(jedec_id)) {
case CFI_MFR_MACRONIX:
case 0xEF /* winbond */:
    case CFI_MFR_EON: /* cFeon */
case CFI_MFR_ST: /*XMC 0x20*/
flash->command[0] = enable ? OPCODE_EN4B : OPCODE_EX4B;
return spi_write(flash->spi, flash->command, 1);
default:
/* Spansion style */
flash->command[0] = OPCODE_BRWR;
flash->command[1] = enable << 7;
return spi_write(flash->spi, flash->command, 2);
        }


您需要登录后才可以回帖 登录 | 注册

本版积分规则

1031

主题

3946

帖子

7

粉丝
快速回复 在线客服 返回列表 返回顶部