@@ -987,14 +987,14 @@ static int aspeed_i2c_probe_bus(struct platform_device *pdev)
if (IS_ERR(bus->base))
return PTR_ERR(bus->base);
- parent_clk = devm_clk_get(&pdev->dev, NULL);
- if (IS_ERR(parent_clk))
- return PTR_ERR(parent_clk);
- bus->parent_clk_frequency = clk_get_rate(parent_clk);
+ // parent_clk = devm_clk_get(&pdev->dev, NULL);
+ // if (IS_ERR(parent_clk))//
+ // return PTR_ERR(parent_clk);
+ bus->parent_clk_frequency = 1000000;//clk_get_rate(parent_clk);
/* We just need the clock rate, we don't actually use the clk object. */
- devm_clk_put(&pdev->dev, parent_clk);
+ //devm_clk_put(&pdev->dev, parent_clk);
- bus->rst = devm_reset_control_get_shared(&pdev->dev, NULL);
+ bus->rst = devm_reset_control_get_optional_shared(&pdev->dev, NULL);
if (IS_ERR(bus->rst)) {
dev_err(&pdev->dev,
"missing or invalid reset controller device tree entry\n");
Needs tidying up - hopefully can do clock right using on going work from Niyas https://linaro.atlassian.net/wiki/spaces/CLIENTPC/pages/28832333867/ACPI+Clock+Management ACPI does not provide an equivalent reset deassert / assert. _RST doesn't fit that model, so for now make the reset optional. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> --- v3: Keeping this as an obvious hack rather than moving to something that works in the interest of not putting a stop gap solution in place. --- drivers/i2c/busses/i2c-aspeed.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)