1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Copyright (C) 2005, Intec Automation Inc. 4 * Copyright (C) 2014, Freescale Semiconductor, Inc. 5 */ 6 7 #include <linux/mtd/spi-nor.h> 8 9 #include "core.h" 10 11 static const struct flash_info esmt_parts[] = { 12 /* ESMT */ 13 { "f25l32pa", INFO(0x8c2016, 0, 64 * 1024, 64, 14 SECT_4K | SPI_NOR_HAS_LOCK) }, 15 { "f25l32qa", INFO(0x8c4116, 0, 64 * 1024, 64, 16 SECT_4K | SPI_NOR_HAS_LOCK) }, 17 { "f25l64qa", INFO(0x8c4117, 0, 64 * 1024, 128, 18 SECT_4K | SPI_NOR_HAS_LOCK) }, 19 { "en25qh128", 20 INFO(0x1c7018, 0, 64 * 1024, 256, SECT_4K) }, 21 { "en25s64", 22 INFO(0x1c3817, 0, 64 * 1024, 128, SECT_4K) }, 23 { "en25qh256a", 24 INFO(0x1c7019, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, 25 { "en25qx256a", 26 INFO(0x1c7119, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, 27 { "en25qx128a", 28 INFO(0x1c7118, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, 29 }; 30 31 const struct spi_nor_manufacturer spi_nor_esmt = { 32 .name = "esmt", 33 .parts = esmt_parts, 34 .nparts = ARRAY_SIZE(esmt_parts), 35 }; 36