summaryrefslogtreecommitdiff
path: root/drivers/mtd
diff options
context:
space:
mode:
authorHuang Shijie <b32955@freescale.com>2011-05-10 16:04:43 +0800
committerJason Liu <r64343@freescale.com>2012-01-09 20:08:31 +0800
commit4b98e2d0b29468a2975a5d99c9b70b84a497bb8f (patch)
treed3e9517531f83574b3b2e7dca24a70fdde735ac9 /drivers/mtd
parent6257fa54c1c66de2c9f72172895ea7e0e3c0845c (diff)
ENGR00143186 GPMI : add the kernel command parameter to disable/enable gpmi
add the kernel command parameter to control whether we should enable the GPMI NAND driver. Signed-off-by: Huang Shijie <b32955@freescale.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c b/drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c
index 95972af2ceff..e4edf5dfdc26 100644
--- a/drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c
+++ b/drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c
@@ -35,6 +35,9 @@ int gpmi_debug;
module_param(gpmi_debug, int, 0644);
MODULE_PARM_DESC(gpmi_debug, "print out the debug infomation.");
+/* enable the gpmi-nfc */
+static bool enable_gpmi_nand;
+
static ssize_t show_ignorebad(struct device *dev,
struct device_attribute *attr, char *buf)
{
@@ -1229,8 +1232,6 @@ static void read_page_swap_end(struct gpmi_nfc_data *this,
void *alt_virt, dma_addr_t alt_phys, unsigned alt_size,
void *used_virt, dma_addr_t used_phys)
{
- struct device *dev = this->dev;
-
if (!this->mil.direct_dma_map_ok)
memcpy(destination, alt_virt, length);
}
@@ -2453,6 +2454,9 @@ static int __init gpmi_nfc_init(void)
{
int err;
+ if (!enable_gpmi_nand)
+ return 0;
+
err = platform_driver_register(&gpmi_nfc_driver);
if (err == 0)
printk(KERN_INFO "GPMI NFC driver registered. (IMX)\n");
@@ -2473,6 +2477,13 @@ static int __init gpmi_debug_setup(char *__unused)
}
__setup("gpmi_debug_init", gpmi_debug_setup);
+static int __init gpmi_nand_setup(char *__unused)
+{
+ enable_gpmi_nand = true;
+ return 1;
+}
+__setup("gpmi-nfc", gpmi_nand_setup);
+
module_init(gpmi_nfc_init);
module_exit(gpmi_nfc_exit);