diff options
Diffstat (limited to 'drivers/mtd/nand/spi/macronix.c')
| -rw-r--r-- | drivers/mtd/nand/spi/macronix.c | 30 | 
1 files changed, 6 insertions, 24 deletions
diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/spi/macronix.c index 21def3f8fb36..0f900f3aa21a 100644 --- a/drivers/mtd/nand/spi/macronix.c +++ b/drivers/mtd/nand/spi/macronix.c @@ -99,7 +99,8 @@ static int mx35lf1ge4ab_ecc_get_status(struct spinand_device *spinand,  }  static const struct spinand_info macronix_spinand_table[] = { -	SPINAND_INFO("MX35LF1GE4AB", 0x12, +	SPINAND_INFO("MX35LF1GE4AB", +		     SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x12),  		     NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),  		     NAND_ECCREQ(4, 512),  		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants, @@ -108,7 +109,8 @@ static const struct spinand_info macronix_spinand_table[] = {  		     SPINAND_HAS_QE_BIT,  		     SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,  				     mx35lf1ge4ab_ecc_get_status)), -	SPINAND_INFO("MX35LF2GE4AB", 0x22, +	SPINAND_INFO("MX35LF2GE4AB", +		     SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0x22),  		     NAND_MEMORG(1, 2048, 64, 64, 2048, 40, 2, 1, 1),  		     NAND_ECCREQ(4, 512),  		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants, @@ -118,33 +120,13 @@ static const struct spinand_info macronix_spinand_table[] = {  		     SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)),  }; -static int macronix_spinand_detect(struct spinand_device *spinand) -{ -	u8 *id = spinand->id.data; -	int ret; - -	/* -	 * Macronix SPI NAND read ID needs a dummy byte, so the first byte in -	 * raw_id is garbage. -	 */ -	if (id[1] != SPINAND_MFR_MACRONIX) -		return 0; - -	ret = spinand_match_and_init(spinand, macronix_spinand_table, -				     ARRAY_SIZE(macronix_spinand_table), -				     id[2]); -	if (ret) -		return ret; - -	return 1; -} -  static const struct spinand_manufacturer_ops macronix_spinand_manuf_ops = { -	.detect = macronix_spinand_detect,  };  const struct spinand_manufacturer macronix_spinand_manufacturer = {  	.id = SPINAND_MFR_MACRONIX,  	.name = "Macronix", +	.chips = macronix_spinand_table, +	.nchips = ARRAY_SIZE(macronix_spinand_table),  	.ops = ¯onix_spinand_manuf_ops,  };  |