Hi Emil, On 04.06.19 10:01, Emil Lenngren wrote: > Hi Miquel, > >> static const struct spinand_info macronix_spinand_table[] = { >> SPINAND_INFO("MX35LF1GE4AB", 0x12, >> - NAND_MEMORG(1, 2048, 64, 64, 1024, 1, 1, 1), >> + NAND_MEMORG(1, 2048, 64, 64, 1024, 40, 1, 1, 1), >> NAND_ECCREQ(4, 512), >> SPINAND_INFO_OP_VARIANTS(&read_cache_variants, >> &write_cache_variants, >> @@ -103,7 +103,7 @@ static const struct spinand_info macronix_spinand_table[] = { >> SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, >> mx35lf1ge4ab_ecc_get_status)), >> SPINAND_INFO("MX35LF2GE4AB", 0x22, >> - NAND_MEMORG(1, 2048, 64, 64, 2048, 2, 1, 1), >> + NAND_MEMORG(1, 2048, 64, 64, 2048, 20, 2, 1, 1), >> NAND_ECCREQ(4, 512), > > Maybe a bit late to the discussion, but shouldn't 20 and 40 be swapped > here, i.e. isn't it the larger flash that has more max bad blocks than > the smaller one? I think Miquel is out of office for some days, so I just checked and you are right, the maximum number of bad blocks should be swapped. Actually there is also a wrong value in the GigaDevice driver: For the GD5F4GQ4xA it should be 80 instead of 40. Would you mind sending a patch with a "Fixes:" tag, that fixes both, the Macronix and the GigaDevice driver? Or should I send one? Thanks, Frieder ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/