diff options
author | Huang Shijie <b32955@freescale.com> | 2011-05-10 16:04:43 +0800 |
---|---|---|
committer | Jason Liu <r64343@freescale.com> | 2012-01-09 20:08:31 +0800 |
commit | 4b98e2d0b29468a2975a5d99c9b70b84a497bb8f (patch) | |
tree | d3e9517531f83574b3b2e7dca24a70fdde735ac9 /drivers/mtd | |
parent | 6257fa54c1c66de2c9f72172895ea7e0e3c0845c (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.c | 15 |
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); |