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:
parent
9e79e3e9dd
commit
593702c71a
2 changed files with 3 additions and 22 deletions
|
@ -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;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -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);
|
||||||
|
|
Loading…
Add table
Reference in a new issue