Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78df445e authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Wolfram Sang
Browse files

i2c: sh_mobile: Add support for r8a73a4 and sh73a0



Add support for r8a73a4 (R-Mobile APE6) and sh73a0 (SH-Mobile AG5).
On these SoCs, the operating clock runs faster that on previous SoCs,
and the internal SCL clock counter gets incremented every 2 clocks of
the operating clock, just like on R-Car Gen2.

Cfr. the "/2" in the calculation of ICCL/ICCH in section "I2C Bus
Interface (IIC)", subsection "Transfer Rate" of the datasheets.

Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
parent fc3756fa
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -622,17 +622,19 @@ static const struct sh_mobile_dt_config default_dt_config = {
	.clks_per_count = 1,
};

static const struct sh_mobile_dt_config rcar_gen2_dt_config = {
static const struct sh_mobile_dt_config fast_clock_dt_config = {
	.clks_per_count = 2,
};

static const struct of_device_id sh_mobile_i2c_dt_ids[] = {
	{ .compatible = "renesas,rmobile-iic", .data = &default_dt_config },
	{ .compatible = "renesas,iic-r8a7790", .data = &rcar_gen2_dt_config },
	{ .compatible = "renesas,iic-r8a7791", .data = &rcar_gen2_dt_config },
	{ .compatible = "renesas,iic-r8a7792", .data = &rcar_gen2_dt_config },
	{ .compatible = "renesas,iic-r8a7793", .data = &rcar_gen2_dt_config },
	{ .compatible = "renesas,iic-r8a7794", .data = &rcar_gen2_dt_config },
	{ .compatible = "renesas,iic-r8a73a4", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-r8a7790", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-r8a7791", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-r8a7792", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-r8a7793", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-r8a7794", .data = &fast_clock_dt_config },
	{ .compatible = "renesas,iic-sh73a0", .data = &fast_clock_dt_config },
	{},
};
MODULE_DEVICE_TABLE(of, sh_mobile_i2c_dt_ids);