aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd/onenand/generic.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mtd/onenand/generic.c')
-rw-r--r--drivers/mtd/onenand/generic.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/mtd/onenand/generic.c b/drivers/mtd/onenand/generic.c
index af06a80f44de..3d44d040a47d 100644
--- a/drivers/mtd/onenand/generic.c
+++ b/drivers/mtd/onenand/generic.c
@@ -45,12 +45,10 @@ static int __devinit generic_onenand_probe(struct device *dev)
45 unsigned long size = res->end - res->start + 1; 45 unsigned long size = res->end - res->start + 1;
46 int err; 46 int err;
47 47
48 info = kmalloc(sizeof(struct onenand_info), GFP_KERNEL); 48 info = kzalloc(sizeof(struct onenand_info), GFP_KERNEL);
49 if (!info) 49 if (!info)
50 return -ENOMEM; 50 return -ENOMEM;
51 51
52 memset(info, 0, sizeof(struct onenand_info));
53
54 if (!request_mem_region(res->start, size, dev->driver->name)) { 52 if (!request_mem_region(res->start, size, dev->driver->name)) {
55 err = -EBUSY; 53 err = -EBUSY;
56 goto out_free_info; 54 goto out_free_info;
@@ -63,6 +61,7 @@ static int __devinit generic_onenand_probe(struct device *dev)
63 } 61 }
64 62
65 info->onenand.mmcontrol = pdata->mmcontrol; 63 info->onenand.mmcontrol = pdata->mmcontrol;
64 info->onenand.irq = platform_get_irq(pdev, 0);
66 65
67 info->mtd.name = pdev->dev.bus_id; 66 info->mtd.name = pdev->dev.bus_id;
68 info->mtd.priv = &info->onenand; 67 info->mtd.priv = &info->onenand;