mtd: brcmnand: add support for STB chips
authorBrian Norris <computersforpeace@gmail.com>
Wed, 13 May 2015 00:00:57 +0000 (17:00 -0700)
committerBrian Norris <computersforpeace@gmail.com>
Fri, 15 May 2015 20:16:44 +0000 (13:16 -0700)
BCM7xxx chips are supported entirely by the library code, since they use
generic irqchip interfaces and don't need any extra SoC-specific
configuration.

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
drivers/mtd/nand/brcmnand/Makefile
drivers/mtd/nand/brcmnand/brcmstb_nand.c [new file with mode: 0644]

index ab6062162c1456e41105c03ff141bce3a09b710b..ef47c280f5c0a7bcb6ba1cc99a4381e0c37cd5e0 100644 (file)
@@ -1 +1,2 @@
+obj-$(CONFIG_MTD_NAND_BRCMNAND)                += brcmstb_nand.o
 obj-$(CONFIG_MTD_NAND_BRCMNAND)                += brcmnand.o
diff --git a/drivers/mtd/nand/brcmnand/brcmstb_nand.c b/drivers/mtd/nand/brcmnand/brcmstb_nand.c
new file mode 100644 (file)
index 0000000..5c27107
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * Copyright © 2015 Broadcom Corporation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+#include <linux/device.h>
+#include <linux/module.h>
+#include <linux/platform_device.h>
+
+#include "brcmnand.h"
+
+static const struct of_device_id brcmstb_nand_of_match[] = {
+       { .compatible = "brcm,brcmnand" },
+       {},
+};
+MODULE_DEVICE_TABLE(of, brcmstb_nand_of_match);
+
+static int brcmstb_nand_probe(struct platform_device *pdev)
+{
+       return brcmnand_probe(pdev, NULL);
+}
+
+static struct platform_driver brcmstb_nand_driver = {
+       .probe                  = brcmstb_nand_probe,
+       .remove                 = brcmnand_remove,
+       .driver = {
+               .name           = "brcmstb_nand",
+               .pm             = &brcmnand_pm_ops,
+               .of_match_table = brcmstb_nand_of_match,
+       }
+};
+module_platform_driver(brcmstb_nand_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_AUTHOR("Brian Norris");
+MODULE_DESCRIPTION("NAND driver for Broadcom STB chips");