[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20170524234916.16181-2-chris.packham@alliedtelesis.co.nz>
Date: Thu, 25 May 2017 11:49:12 +1200
From: Chris Packham <chris.packham@...iedtelesis.co.nz>
To: linux-mtd@...ts.infradead.org, andrew@...n.ch,
computersforpeace@...il.com, dwmw2@...radead.org,
boris.brezillon@...e-electrons.com, linux-kernel@...r.kernel.org
Cc: Chris Packham <chris.packham@...iedtelesis.co.nz>,
Marek Vasut <marek.vasut@...il.com>,
Richard Weinberger <richard@....at>,
Cyrille Pitchen <cyrille.pitchen@...ev4u.fr>,
Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>, devicetree@...r.kernel.org
Subject: [PATCH v4 1/5] mtd: mchp23k256: Add OF device ID table
This allows registering of this device via a Device Tree.
Signed-off-by: Chris Packham <chris.packham@...iedtelesis.co.nz>
Reviewed-by: Andrew Lunn <andrew@...n.ch>
Tested-by: Andrew Lunn <andrew@...n.ch>
---
Changes in v2:
- collect review/test from Andrew
Changes in v3:
- None
Changes in v4:
- None
.../devicetree/bindings/mtd/microchip,mchp23k256.txt | 18 ++++++++++++++++++
drivers/mtd/devices/mchp23k256.c | 8 ++++++++
2 files changed, 26 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mtd/microchip,mchp23k256.txt
diff --git a/Documentation/devicetree/bindings/mtd/microchip,mchp23k256.txt b/Documentation/devicetree/bindings/mtd/microchip,mchp23k256.txt
new file mode 100644
index 000000000000..25e5ad38b0f0
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/microchip,mchp23k256.txt
@@ -0,0 +1,18 @@
+* MTD SPI driver for Microchip 23K256 (and similar) serial SRAM
+
+Required properties:
+- #address-cells, #size-cells : Must be present if the device has sub-nodes
+ representing partitions.
+- compatible : Must be "microchip,mchp23k256"
+- reg : Chip-Select number
+- spi-max-frequency : Maximum frequency of the SPI bus the chip can operate at
+
+Example:
+
+ spi-sram@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "microchip,mchp23k256";
+ reg = <0>;
+ spi-max-frequency = <20000000>;
+ };
diff --git a/drivers/mtd/devices/mchp23k256.c b/drivers/mtd/devices/mchp23k256.c
index e237db9f1bdb..9d8306a15833 100644
--- a/drivers/mtd/devices/mchp23k256.c
+++ b/drivers/mtd/devices/mchp23k256.c
@@ -19,6 +19,7 @@
#include <linux/sizes.h>
#include <linux/spi/flash.h>
#include <linux/spi/spi.h>
+#include <linux/of_device.h>
struct mchp23k256_flash {
struct spi_device *spi;
@@ -166,9 +167,16 @@ static int mchp23k256_remove(struct spi_device *spi)
return mtd_device_unregister(&flash->mtd);
}
+static const struct of_device_id mchp23k256_of_table[] = {
+ { .compatible = "microchip,mchp23k256" },
+ {}
+};
+MODULE_DEVICE_TABLE(of, mchp23k256_of_table);
+
static struct spi_driver mchp23k256_driver = {
.driver = {
.name = "mchp23k256",
+ .of_match_table = of_match_ptr(mchp23k256_of_table),
},
.probe = mchp23k256_probe,
.remove = mchp23k256_remove,
--
2.13.0
Powered by blists - more mailing lists