xref: /OK3568_Linux_fs/kernel/drivers/mtd/spi-nor/xmc.c (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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 xmc_parts[] = {
12 	/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */
13 	{ "XM25QH32A", INFO(0x207016, 0, 64 * 1024, 64,
14 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
15 	{ "XM25QH64A", INFO(0x207017, 0, 64 * 1024, 128,
16 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
17 	{ "XM25QH64C", INFO(0x204017, 0, 64 * 1024, 128,
18 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
19 	{ "XM25QU64C", INFO(0x204117, 0, 64 * 1024, 128,
20 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
21 	{ "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256,
22 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
23 	{ "XM25QH128B", INFO(0x206018, 0, 64 * 1024, 256,
24 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
25 	{ "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256,
26 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
27 	{ "XM25QU128C", INFO(0x204118, 0, 64 * 1024, 256,
28 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
29 };
30 
31 const struct spi_nor_manufacturer spi_nor_xmc = {
32 	.name = "xmc",
33 	.parts = xmc_parts,
34 	.nparts = ARRAY_SIZE(xmc_parts),
35 };
36