mtd: maps: Remove BUS_ID_SIZE from integrator_flash

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Tested-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
David Woodhouse 2009-06-24 15:35:15 +01:00
parent 4839641333
commit 17659c6062
1 changed files with 14 additions and 8 deletions

View File

@ -42,10 +42,8 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/system.h> #include <asm/system.h>
#define SUBDEV_NAME_SIZE (BUS_ID_SIZE + 2)
struct armflash_subdev_info { struct armflash_subdev_info {
char name[SUBDEV_NAME_SIZE]; char *name;
struct mtd_info *mtd; struct mtd_info *mtd;
struct map_info map; struct map_info map;
struct flash_platform_data *plat; struct flash_platform_data *plat;
@ -134,6 +132,8 @@ static void armflash_subdev_remove(struct armflash_subdev_info *subdev)
map_destroy(subdev->mtd); map_destroy(subdev->mtd);
if (subdev->map.virt) if (subdev->map.virt)
iounmap(subdev->map.virt); iounmap(subdev->map.virt);
kfree(subdev->name);
subdev->name = NULL;
release_mem_region(subdev->map.phys, subdev->map.size); release_mem_region(subdev->map.phys, subdev->map.size);
} }
@ -177,16 +177,22 @@ static int armflash_probe(struct platform_device *dev)
if (nr == 1) if (nr == 1)
/* No MTD concatenation, just use the default name */ /* No MTD concatenation, just use the default name */
snprintf(subdev->name, SUBDEV_NAME_SIZE, "%s", subdev->name = kstrdup(dev_name(&dev->dev), GFP_KERNEL);
dev_name(&dev->dev));
else else
snprintf(subdev->name, SUBDEV_NAME_SIZE, "%s-%d", subdev->name = kasprintf(GFP_KERNEL, "%s-%d",
dev_name(&dev->dev), i); dev_name(&dev->dev), i);
if (!subdev->name) {
err = -ENOMEM;
break;
}
subdev->plat = plat; subdev->plat = plat;
err = armflash_subdev_probe(subdev, res); err = armflash_subdev_probe(subdev, res);
if (err) if (err) {
kfree(subdev->name);
subdev->name = NULL;
break; break;
}
} }
info->nr_subdev = i; info->nr_subdev = i;