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

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Wed Nov 8 02:25:19 PST 2023


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 at collabora.com>
>> ---
>>   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 at 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 at 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 at 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





More information about the Linux-mediatek mailing list