i2c-imx: remove init/exit hooks from platform data

The init/exit hooks in platform data are being used nowhere, so can
be removed.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Cc: Darius Augulis <augulis.darius@gmail.com>
Cc: Ben Dooks <ben-linux@fluff.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
This commit is contained in:
Shawn Guo 2011-09-08 15:09:34 +08:00 committed by Ben Dooks
parent 9e79e3e9dd
commit 593702c71a
2 changed files with 3 additions and 22 deletions

View file

@ -11,14 +11,10 @@
/** /**
* struct imxi2c_platform_data - structure of platform data for MXC I2C driver * struct imxi2c_platform_data - structure of platform data for MXC I2C driver
* @init: Initialise gpio's and other board specific things
* @exit: Free everything initialised by @init
* @bitrate: Bus speed measured in Hz * @bitrate: Bus speed measured in Hz
* *
**/ **/
struct imxi2c_platform_data { struct imxi2c_platform_data {
int (*init)(struct device *dev);
void (*exit)(struct device *dev);
int bitrate; int bitrate;
}; };

View file

@ -466,7 +466,7 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
{ {
struct imx_i2c_struct *i2c_imx; struct imx_i2c_struct *i2c_imx;
struct resource *res; struct resource *res;
struct imxi2c_platform_data *pdata; struct imxi2c_platform_data *pdata = pdev->dev.platform_data;
void __iomem *base; void __iomem *base;
resource_size_t res_size; resource_size_t res_size;
int irq; int irq;
@ -485,19 +485,11 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
return -ENOENT; return -ENOENT;
} }
pdata = pdev->dev.platform_data;
if (pdata && pdata->init) {
ret = pdata->init(&pdev->dev);
if (ret)
return ret;
}
res_size = resource_size(res); res_size = resource_size(res);
if (!request_mem_region(res->start, res_size, DRIVER_NAME)) { if (!request_mem_region(res->start, res_size, DRIVER_NAME)) {
ret = -EBUSY; dev_err(&pdev->dev, "request_mem_region failed\n");
goto fail0; return -EBUSY;
} }
base = ioremap(res->start, res_size); base = ioremap(res->start, res_size);
@ -586,9 +578,6 @@ fail2:
iounmap(base); iounmap(base);
fail1: fail1:
release_mem_region(res->start, resource_size(res)); release_mem_region(res->start, resource_size(res));
fail0:
if (pdata && pdata->exit)
pdata->exit(&pdev->dev);
return ret; /* Return error number */ return ret; /* Return error number */
} }
@ -611,10 +600,6 @@ static int __exit i2c_imx_remove(struct platform_device *pdev)
writeb(0, i2c_imx->base + IMX_I2C_I2CR); writeb(0, i2c_imx->base + IMX_I2C_I2CR);
writeb(0, i2c_imx->base + IMX_I2C_I2SR); writeb(0, i2c_imx->base + IMX_I2C_I2SR);
/* Shut down hardware */
if (pdata && pdata->exit)
pdata->exit(&pdev->dev);
clk_put(i2c_imx->clk); clk_put(i2c_imx->clk);
iounmap(i2c_imx->base); iounmap(i2c_imx->base);