summaryrefslogtreecommitdiffstats
path: root/include/linux/mtd/rawnand.h
diff options
context:
space:
mode:
authorMiquel Raynal <miquel.raynal@bootlin.com>2020-05-29 13:12:59 +0200
committerMiquel Raynal <miquel.raynal@bootlin.com>2020-06-26 08:35:04 +0200
commit36017af430e6b2fad0b2ee5476103706160f1379 (patch)
tree0c81f187d910a31603734a6bb9cfa96a03973352 /include/linux/mtd/rawnand.h
parent271de009b7c0c1c15f63491a352ab08835462977 (diff)
downloadlinux-36017af430e6b2fad0b2ee5476103706160f1379.tar.bz2
mtd: rawnand: Declare the nand_manufacturer structure out of nand_chip
Now that struct nand_manufacturer type is free, use it to store the nand_manufacturer_desc and the manufacturer's private data. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Link: https://lore.kernel.org/linux-mtd/20200529111322.7184-6-miquel.raynal@bootlin.com
Diffstat (limited to 'include/linux/mtd/rawnand.h')
-rw-r--r--include/linux/mtd/rawnand.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/include/linux/mtd/rawnand.h b/include/linux/mtd/rawnand.h
index 860d3c1020ef..a3dfa36a9fd5 100644
--- a/include/linux/mtd/rawnand.h
+++ b/include/linux/mtd/rawnand.h
@@ -1044,9 +1044,20 @@ struct nand_chip_ops {
};
/**
+ * struct nand_manufacturer - NAND manufacturer structure
+ * @desc: The manufacturer description
+ * @priv: Private information for the manufacturer driver
+ */
+struct nand_manufacturer {
+ const struct nand_manufacturer_desc *desc;
+ void *priv;
+};
+
+/**
* struct nand_chip - NAND Private Flash Chip Data
* @base: Inherit from the generic NAND device
* @ops: NAND chip operations
+ * @manufacturer: Manufacturer information
* @legacy: All legacy fields/hooks. If you develop a new driver,
* don't even try to use any of these fields/hooks, and if
* you're modifying an existing driver that is using those
@@ -1106,13 +1117,11 @@ struct nand_chip_ops {
* structure which is shared among multiple independent
* devices.
* @priv: [OPTIONAL] pointer to private chip data
- * @manufacturer: [INTERN] Contains manufacturer information
- * @manufacturer.desc: [INTERN] Contains manufacturer's description
- * @manufacturer.priv: [INTERN] Contains manufacturer private information
*/
struct nand_chip {
struct nand_device base;
+ struct nand_manufacturer manufacturer;
struct nand_chip_ops ops;
struct nand_legacy legacy;
@@ -1161,11 +1170,6 @@ struct nand_chip {
struct nand_bbt_descr *badblock_pattern;
void *priv;
-
- struct {
- const struct nand_manufacturer_desc *desc;
- void *priv;
- } manufacturer;
};
extern const struct mtd_ooblayout_ops nand_ooblayout_sp_ops;