Loading arch/arm/mach-integrator/impd1.c +10 −26 Original line number Diff line number Diff line Loading @@ -307,25 +307,23 @@ static struct impd1_device impd1_devs[] = { static int impd1_probe(struct lm_device *dev) { struct impd1_module *impd1; int i, ret; int i; if (dev->id != module_id) return -EINVAL; if (!request_mem_region(dev->resource.start, SZ_4K, "LM registers")) if (!devm_request_mem_region(&dev->dev, dev->resource.start, SZ_4K, "LM registers")) return -EBUSY; impd1 = kzalloc(sizeof(struct impd1_module), GFP_KERNEL); if (!impd1) { ret = -ENOMEM; goto release_lm; } impd1 = devm_kzalloc(&dev->dev, sizeof(struct impd1_module), GFP_KERNEL); if (!impd1) return -ENOMEM; impd1->base = ioremap(dev->resource.start, SZ_4K); if (!impd1->base) { ret = -ENOMEM; goto free_impd1; } impd1->base = devm_ioremap(&dev->dev, dev->resource.start, SZ_4K); if (!impd1->base) return -ENOMEM; lm_set_drvdata(dev, impd1); Loading Loading @@ -353,14 +351,6 @@ static int impd1_probe(struct lm_device *dev) } return 0; free_impd1: if (impd1 && impd1->base) iounmap(impd1->base); kfree(impd1); release_lm: release_mem_region(dev->resource.start, SZ_4K); return ret; } static int impd1_remove_one(struct device *dev, void *data) Loading @@ -371,16 +361,10 @@ static int impd1_remove_one(struct device *dev, void *data) static void impd1_remove(struct lm_device *dev) { struct impd1_module *impd1 = lm_get_drvdata(dev); device_for_each_child(&dev->dev, NULL, impd1_remove_one); integrator_impd1_clk_exit(dev->id); lm_set_drvdata(dev, NULL); iounmap(impd1->base); kfree(impd1); release_mem_region(dev->resource.start, SZ_4K); } static struct lm_driver impd1_driver = { Loading Loading
arch/arm/mach-integrator/impd1.c +10 −26 Original line number Diff line number Diff line Loading @@ -307,25 +307,23 @@ static struct impd1_device impd1_devs[] = { static int impd1_probe(struct lm_device *dev) { struct impd1_module *impd1; int i, ret; int i; if (dev->id != module_id) return -EINVAL; if (!request_mem_region(dev->resource.start, SZ_4K, "LM registers")) if (!devm_request_mem_region(&dev->dev, dev->resource.start, SZ_4K, "LM registers")) return -EBUSY; impd1 = kzalloc(sizeof(struct impd1_module), GFP_KERNEL); if (!impd1) { ret = -ENOMEM; goto release_lm; } impd1 = devm_kzalloc(&dev->dev, sizeof(struct impd1_module), GFP_KERNEL); if (!impd1) return -ENOMEM; impd1->base = ioremap(dev->resource.start, SZ_4K); if (!impd1->base) { ret = -ENOMEM; goto free_impd1; } impd1->base = devm_ioremap(&dev->dev, dev->resource.start, SZ_4K); if (!impd1->base) return -ENOMEM; lm_set_drvdata(dev, impd1); Loading Loading @@ -353,14 +351,6 @@ static int impd1_probe(struct lm_device *dev) } return 0; free_impd1: if (impd1 && impd1->base) iounmap(impd1->base); kfree(impd1); release_lm: release_mem_region(dev->resource.start, SZ_4K); return ret; } static int impd1_remove_one(struct device *dev, void *data) Loading @@ -371,16 +361,10 @@ static int impd1_remove_one(struct device *dev, void *data) static void impd1_remove(struct lm_device *dev) { struct impd1_module *impd1 = lm_get_drvdata(dev); device_for_each_child(&dev->dev, NULL, impd1_remove_one); integrator_impd1_clk_exit(dev->id); lm_set_drvdata(dev, NULL); iounmap(impd1->base); kfree(impd1); release_mem_region(dev->resource.start, SZ_4K); } static struct lm_driver impd1_driver = { Loading