diff options
Diffstat (limited to 'drivers/mtd/onenand/generic.c')
-rw-r--r-- | drivers/mtd/onenand/generic.c | 5 |
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; |