“8901e1b98e1dad75c4567d03dd00a59bd6c450e8”上不存在“drivers/spi/spi-tegra.c”
提交 b3750b62 编写于 作者: W Wolfram Sang 提交者: Wolfram Sang

i2c: sh_mobile: require setup callback

Require the setup callback and move the frequency calculation into it.
This is in preparation for supporting multiple formulas.
Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
上级 12742b6a
...@@ -771,15 +771,17 @@ static int sh_mobile_i2c_r8a7740_workaround(struct sh_mobile_i2c_data *pd) ...@@ -771,15 +771,17 @@ static int sh_mobile_i2c_r8a7740_workaround(struct sh_mobile_i2c_data *pd)
iic_wr(pd, ICCR, ICCR_TRS); iic_wr(pd, ICCR, ICCR_TRS);
udelay(10); udelay(10);
return 0; return sh_mobile_i2c_init(pd);
} }
static const struct sh_mobile_dt_config default_dt_config = { static const struct sh_mobile_dt_config default_dt_config = {
.clks_per_count = 1, .clks_per_count = 1,
.setup = sh_mobile_i2c_init,
}; };
static const struct sh_mobile_dt_config fast_clock_dt_config = { static const struct sh_mobile_dt_config fast_clock_dt_config = {
.clks_per_count = 2, .clks_per_count = 2,
.setup = sh_mobile_i2c_init,
}; };
static const struct sh_mobile_dt_config r8a7740_dt_config = { static const struct sh_mobile_dt_config r8a7740_dt_config = {
...@@ -882,15 +884,10 @@ static int sh_mobile_i2c_probe(struct platform_device *dev) ...@@ -882,15 +884,10 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
config = of_device_get_match_data(&dev->dev); config = of_device_get_match_data(&dev->dev);
if (config) { if (config) {
pd->clks_per_count = config->clks_per_count; pd->clks_per_count = config->clks_per_count;
if (config->setup) {
ret = config->setup(pd); ret = config->setup(pd);
if (ret) } else {
return ret;
}
}
ret = sh_mobile_i2c_init(pd); ret = sh_mobile_i2c_init(pd);
}
if (ret) if (ret)
return ret; return ret;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册