diff mbox

[v3,02/13] i2c: rk3x: add support for rv1108

Message ID 1502422753-30725-1-git-send-email-andy.yan@rock-chips.com
State Accepted
Headers show

Commit Message

Andy Yan Aug. 11, 2017, 3:39 a.m. UTC
Support for the i2c controller on rv1108 soc.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
---

Changes in v3: None
Changes in v2: None

 drivers/i2c/busses/i2c-rk3x.c | 9 +++++++++
 1 file changed, 9 insertions(+)

Comments

Wolfram Sang Aug. 12, 2017, 2:01 p.m. UTC | #1
Hi,

> +static const struct rk3x_i2c_soc_data rv1108_soc_data = {
> +	.grf_offset = -1,
> +	.calc_timings = rk3x_i2c_v1_calc_timings,
> +};
> +

I don't care super much, but why don't you reuse rk3399_soc_data()?
Or even use the rk3399 compatible as fallback value?

Kind regards,

   Wolfram
Wolfram Sang Aug. 12, 2017, 2:38 p.m. UTC | #2
> Actually, there is one I2C controller(I2C2) has a different feature with
> all the other rockchip soc.The I2C2 is not used on my current board. But I
> plan to add this feature later。 So I give RV1108 a new compatible string
> here。

Makes sense. Thanks!
Wolfram Sang Aug. 12, 2017, 2:40 p.m. UTC | #3
On Fri, Aug 11, 2017 at 11:39:13AM +0800, Andy Yan wrote:
> Support for the i2c controller on rv1108 soc.
> 
> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
> Reviewed-by: Heiko Stuebner <heiko@sntech.de>

Applied to for-next, thanks!
diff mbox

Patch

diff --git a/drivers/i2c/busses/i2c-rk3x.c b/drivers/i2c/busses/i2c-rk3x.c
index df22066..fe23457 100644
--- a/drivers/i2c/busses/i2c-rk3x.c
+++ b/drivers/i2c/busses/i2c-rk3x.c
@@ -1131,6 +1131,11 @@  static const struct i2c_algorithm rk3x_i2c_algorithm = {
 	.functionality		= rk3x_i2c_func,
 };
 
+static const struct rk3x_i2c_soc_data rv1108_soc_data = {
+	.grf_offset = -1,
+	.calc_timings = rk3x_i2c_v1_calc_timings,
+};
+
 static const struct rk3x_i2c_soc_data rk3066_soc_data = {
 	.grf_offset = 0x154,
 	.calc_timings = rk3x_i2c_v0_calc_timings,
@@ -1158,6 +1163,10 @@  static const struct rk3x_i2c_soc_data rk3399_soc_data = {
 
 static const struct of_device_id rk3x_i2c_match[] = {
 	{
+		.compatible = "rockchip,rv1108-i2c",
+		.data = (void *)&rv1108_soc_data
+	},
+	{
 		.compatible = "rockchip,rk3066-i2c",
 		.data = (void *)&rk3066_soc_data
 	},