xref: /OK3568_Linux_fs/kernel/drivers/mtd/spi-nor/intel.c (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun /*
3*4882a593Smuzhiyun  * Copyright (C) 2005, Intec Automation Inc.
4*4882a593Smuzhiyun  * Copyright (C) 2014, Freescale Semiconductor, Inc.
5*4882a593Smuzhiyun  */
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun #include <linux/mtd/spi-nor.h>
8*4882a593Smuzhiyun 
9*4882a593Smuzhiyun #include "core.h"
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun static const struct flash_info intel_parts[] = {
12*4882a593Smuzhiyun 	/* Intel/Numonyx -- xxxs33b */
13*4882a593Smuzhiyun 	{ "160s33b",  INFO(0x898911, 0, 64 * 1024,  32, 0) },
14*4882a593Smuzhiyun 	{ "320s33b",  INFO(0x898912, 0, 64 * 1024,  64, 0) },
15*4882a593Smuzhiyun 	{ "640s33b",  INFO(0x898913, 0, 64 * 1024, 128, 0) },
16*4882a593Smuzhiyun };
17*4882a593Smuzhiyun 
intel_default_init(struct spi_nor * nor)18*4882a593Smuzhiyun static void intel_default_init(struct spi_nor *nor)
19*4882a593Smuzhiyun {
20*4882a593Smuzhiyun 	nor->flags |= SNOR_F_HAS_LOCK;
21*4882a593Smuzhiyun }
22*4882a593Smuzhiyun 
23*4882a593Smuzhiyun static const struct spi_nor_fixups intel_fixups = {
24*4882a593Smuzhiyun 	.default_init = intel_default_init,
25*4882a593Smuzhiyun };
26*4882a593Smuzhiyun 
27*4882a593Smuzhiyun const struct spi_nor_manufacturer spi_nor_intel = {
28*4882a593Smuzhiyun 	.name = "intel",
29*4882a593Smuzhiyun 	.parts = intel_parts,
30*4882a593Smuzhiyun 	.nparts = ARRAY_SIZE(intel_parts),
31*4882a593Smuzhiyun 	.fixups = &intel_fixups,
32*4882a593Smuzhiyun };
33