Subject: Re: [PATCH] arm64: mediatek: remove broken pmic interrupt property

Il 12/12/23 22:47, Arnd Bergmann ha scritto:
> From: Arnd Bergmann <[email protected]>
>
> The pmic is connected to the GIC, which uses four-cell interrupt properties,
> but its interrupt is specified as two-cell that would only make sense for
> the GPIO irqchip:
>
> arch/arm64/boot/dts/mediatek/mt8195.dtsi:464.4-27: Warning (interrupts_property): /soc/i2c@11d01000/pmic@34:#interrupt-cells: size is (8), expected multiple of 16
>
> Remove the interrupt for now to shut up the warning. When someone figures out
> what the correct interrupt and parent are, we can add it back.
>

Please, can anyone from MediaTek comment on that?

I see a mt6360_pins on PIO:
pinmux = <PINMUX_GPIO17__FUNC_GPIO17>,
<PINMUX_GPIO128__FUNC_GPIO128>;

...and that's GPIO128, which may effectively be the IRQ pin for MT6360.

Still, I'm not sure whether the interrupt is on GIC or PIO, please clarify,
otherwise we will have to get this commit upstream.

Thanks,
Angelo

> Fixes: f2b543a191b6 ("arm64: dts: mediatek: add device-tree for Genio 1200 EVK board")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> index 70b465f7c6a7..a409ef998746 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> @@ -238,8 +238,6 @@ &i2c6 {
> mt6360: pmic@34 {
> compatible = "mediatek,mt6360";
> reg = <0x34>;
> - interrupts = <128 IRQ_TYPE_EDGE_FALLING>;
> - interrupt-names = "IRQB";
> interrupt-controller;
> #interrupt-cells = <1>;
> pinctrl-0 = <&mt6360_pins>;



2023-12-14 17:54:36

by Macpaul Lin

[permalink] [raw]
Subject: Re: [PATCH] arm64: mediatek: remove broken pmic interrupt property

On 12/13/23 19:09, AngeloGioacchino Del Regno wrote:

> Il 12/12/23 22:47, Arnd Bergmann ha scritto:
>> From: Arnd Bergmann <[email protected]>
>>
>> The pmic is connected to the GIC, which uses four-cell interrupt
>> properties,
>> but its interrupt is specified as two-cell that would only make sense
>> for
>> the GPIO irqchip:
>>
>> arch/arm64/boot/dts/mediatek/mt8195.dtsi:464.4-27: Warning
>> (interrupts_property): /soc/i2c@11d01000/pmic@34:#interrupt-cells:
>> size is (8), expected multiple of 16
>>
>> Remove the interrupt for now to shut up the warning. When someone
>> figures out
>> what the correct interrupt and parent are, we can add it back.
>>
>
> Please, can anyone from MediaTek comment on that?

Sorry for late response, I've just stuck in other tasks and didn't
notice this

patch is for genio-1200-evk. I've tested 6.7-rc1 but I thought it might
be an issue

in origin mt8195.dtsi and not be related to board dts.

> I see a mt6360_pins on PIO:
>             pinmux = <PINMUX_GPIO17__FUNC_GPIO17>,
>                  <PINMUX_GPIO128__FUNC_GPIO128>;
>
> ...and that's GPIO128, which may effectively be the IRQ pin for MT6360.
>
> Still, I'm not sure whether the interrupt is on GIC or PIO, please
> clarify,
> otherwise we will have to get this commit upstream.
>
I think it could be solved by adding

'interrupt-parent = <&pio>;' to mt6360 node.

But currently I have no much time to verify it.

I'll try to find some time to find out the solution tomorrow.

> Thanks,
> Angelo
>
>> Fixes: f2b543a191b6 ("arm64: dts: mediatek: add device-tree for Genio
>> 1200 EVK board")
>> Signed-off-by: Arnd Bergmann <[email protected]>
>> ---
>>   arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 2 --
>>   1 file changed, 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> index 70b465f7c6a7..a409ef998746 100644
>> --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> @@ -238,8 +238,6 @@ &i2c6 {
>>       mt6360: pmic@34 {
>>           compatible = "mediatek,mt6360";
>>           reg = <0x34>;
>> -        interrupts = <128 IRQ_TYPE_EDGE_FALLING>;
>> -        interrupt-names = "IRQB";
>>           interrupt-controller;
>>           #interrupt-cells = <1>;
>>           pinctrl-0 = <&mt6360_pins>;
>

Thanks for pointing out the issue! Let's see if it could be solved by
adding 'interrupt-parents'.

Macpaul Lin

2023-12-15 07:48:32

by Macpaul Lin

[permalink] [raw]
Subject: Re: [PATCH] arm64: mediatek: remove broken pmic interrupt property

On 12/15/23 01:54, Macpaul Lin wrote:
> On 12/13/23 19:09, AngeloGioacchino Del Regno wrote:
>
>> Il 12/12/23 22:47, Arnd Bergmann ha scritto:
>>> From: Arnd Bergmann <[email protected]>
>>>
>>> The pmic is connected to the GIC, which uses four-cell interrupt
>>> properties,
>>> but its interrupt is specified as two-cell that would only make
>>> sense for
>>> the GPIO irqchip:
>>>
>>> arch/arm64/boot/dts/mediatek/mt8195.dtsi:464.4-27: Warning
>>> (interrupts_property): /soc/i2c@11d01000/pmic@34:#interrupt-cells:
>>> size is (8), expected multiple of 16
>>>
>>> Remove the interrupt for now to shut up the warning. When someone
>>> figures out
>>> what the correct interrupt and parent are, we can add it back.
>>>
>>
>> Please, can anyone from MediaTek comment on that?
>
> Sorry for late response, I've just stuck in other tasks and didn't
> notice this
>
> patch is for genio-1200-evk. I've tested 6.7-rc1 but I thought it
> might be an issue
>
> in origin mt8195.dtsi and not be related to board dts.
>
>> I see a mt6360_pins on PIO:
>>             pinmux = <PINMUX_GPIO17__FUNC_GPIO17>,
>>                  <PINMUX_GPIO128__FUNC_GPIO128>;
>>
>> ...and that's GPIO128, which may effectively be the IRQ pin for MT6360.
>>
>> Still, I'm not sure whether the interrupt is on GIC or PIO, please
>> clarify,
>> otherwise we will have to get this commit upstream.
>>
> I think it could be solved by adding
>
> 'interrupt-parent = <&pio>;' to mt6360 node.
>
> But currently I have no much time to verify it.
>
> I'll try to find some time to find out the solution tomorrow.
>
>> Thanks,
>> Angelo
>>
>>> Fixes: f2b543a191b6 ("arm64: dts: mediatek: add device-tree for
>>> Genio 1200 EVK board")
>>> Signed-off-by: Arnd Bergmann <[email protected]>
>>> ---
>>>   arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 2 --
>>>   1 file changed, 2 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>>> b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>>> index 70b465f7c6a7..a409ef998746 100644
>>> --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>>> +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>>> @@ -238,8 +238,6 @@ &i2c6 {
>>>       mt6360: pmic@34 {
>>>           compatible = "mediatek,mt6360";
>>>           reg = <0x34>;
>>> -        interrupts = <128 IRQ_TYPE_EDGE_FALLING>;
>>> -        interrupt-names = "IRQB";
>>>           interrupt-controller;
>>>           #interrupt-cells = <1>;
>>>           pinctrl-0 = <&mt6360_pins>;
>>
>
> Thanks for pointing out the issue! Let's see if it could be solved by
> adding 'interrupt-parents'.
>
> Macpaul Lin

I've send a patch to add 'interrupt-parent' for mt6360 and tested with
my local kernel-6.7-rc1.

Link:
https://lore.kernel.org/linux-devicetree/[email protected]/

Thanks for Angelo , Arnd, and Chen-yu's reminding.

Best regards,

Macpaul Lin