Re: [PATCH] arm64: dts: mediatek: mt8186: Add I2C arbiter clocks to i2c 1/2/5

From: AngeloGioacchino Del Regno
Date: Wed Nov 08 2023 - 05:25:30 EST


Il 08/11/23 07:56, Yu-chang Lee (李禹璋) ha scritto:
On Fri, 2023-10-20 at 09:55 +0200, AngeloGioacchino Del Regno wrote:
The I2C busses 1, 2 and 5 have got a separated arbiter clock: add it
to their respective nodes.

Fixes: 2e78620b1350 ("arm64: dts: Add MediaTek MT8186 dts and
evaluation board and Makefile")
Signed-off-by: AngeloGioacchino Del Regno <
angelogioacchino.delregno@xxxxxxxxxxxxx>
---
arch/arm64/boot/dts/mediatek/mt8186.dtsi | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8186.dtsi
b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
index f04ae70c470a..af6f6687de35 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186.dtsi
@@ -1224,8 +1224,9 @@ i2c1: i2c@11008000 {
<0 0x10200200 0 0x100>;
interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH
0>;
clocks = <&imp_iic_wrap
CLK_IMP_IIC_WRAP_AP_CLOCK_I2C1>,
- <&infracfg_ao CLK_INFRA_AO_AP_DMA>;
- clock-names = "main", "dma";
+ <&infracfg_ao CLK_INFRA_AO_AP_DMA>,
+ <&infracfg_ao
CLK_INFRA_AO_I2C1_ARBITER>;
+ clock-names = "main", "dma", "arb";
clock-div = <1>;
#address-cells = <1>;
#size-cells = <0>;
@@ -1238,8 +1239,9 @@ i2c2: i2c@11009000 {
<0 0x10200300 0 0x180>;
interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH
0>;
clocks = <&imp_iic_wrap
CLK_IMP_IIC_WRAP_AP_CLOCK_I2C2>,
- <&infracfg_ao CLK_INFRA_AO_AP_DMA>;
- clock-names = "main", "dma";
+ <&infracfg_ao CLK_INFRA_AO_AP_DMA>,
+ <&infracfg_ao
CLK_INFRA_AO_I2C2_ARBITER>;
+ clock-names = "main", "dma", "arb";
clock-div = <1>;
#address-cells = <1>;
#size-cells = <0>;
@@ -1280,8 +1282,9 @@ i2c5: i2c@11016000 {
<0 0x10200700 0 0x100>;
interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH
0>;
clocks = <&imp_iic_wrap
CLK_IMP_IIC_WRAP_AP_CLOCK_I2C5>,
- <&infracfg_ao CLK_INFRA_AO_AP_DMA>;
- clock-names = "main", "dma";
+ <&infracfg_ao CLK_INFRA_AO_AP_DMA>,
+ <&infracfg_ao
CLK_INFRA_AO_I2C5_ARBITER>;
+ clock-names = "main", "dma", "arb";
clock-div = <1>;
#address-cells = <1>;
#size-cells = <0>;

In previous discussion[1], if the arbiter clock is not added into dts
node does trackpad lost its functionality before system suspend/resume?
And is this patch meant to solve the same issue in [1]?

Reply on behalf of our i2c PIC.


Yes, it loses functionality sometimes after PM resume, but with this added clock
the problem is solved.

And yes, it's the same as [1].

Regards,
Angelo