forked from Minki/linux
i2c: imx: enable clk before write to registers
The module clk should be enabled before write to its register in probe(), and the clk can be disabled after. Signed-off-by: Jingchang Lu <b35083@freescale.com> Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
This commit is contained in:
parent
d533f0492b
commit
46f2832b9f
@ -543,6 +543,11 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
|
|||||||
return PTR_ERR(i2c_imx->clk);
|
return PTR_ERR(i2c_imx->clk);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ret = clk_prepare_enable(i2c_imx->clk);
|
||||||
|
if (ret) {
|
||||||
|
dev_err(&pdev->dev, "can't enable I2C clock\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
/* Request IRQ */
|
/* Request IRQ */
|
||||||
ret = devm_request_irq(&pdev->dev, irq, i2c_imx_isr, 0,
|
ret = devm_request_irq(&pdev->dev, irq, i2c_imx_isr, 0,
|
||||||
pdev->name, i2c_imx);
|
pdev->name, i2c_imx);
|
||||||
@ -580,6 +585,7 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
|
|||||||
|
|
||||||
/* Set up platform driver data */
|
/* Set up platform driver data */
|
||||||
platform_set_drvdata(pdev, i2c_imx);
|
platform_set_drvdata(pdev, i2c_imx);
|
||||||
|
clk_disable_unprepare(i2c_imx->clk);
|
||||||
|
|
||||||
dev_dbg(&i2c_imx->adapter.dev, "claimed irq %d\n", irq);
|
dev_dbg(&i2c_imx->adapter.dev, "claimed irq %d\n", irq);
|
||||||
dev_dbg(&i2c_imx->adapter.dev, "device resources from 0x%x to 0x%x\n",
|
dev_dbg(&i2c_imx->adapter.dev, "device resources from 0x%x to 0x%x\n",
|
||||||
|
Loading…
Reference in New Issue
Block a user