2023-09-14 08:53:18

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 5/5] arm64: dts: imx93: update gpio node

On 14/09/2023 08:04, Peng Fan wrote:
>> Subject: Re: [PATCH 5/5] arm64: dts: imx93: update gpio node
>>
>> On 14/09/2023 04:21, Peng Fan (OSS) wrote:
>>> From: Peng Fan <[email protected]>
>>>
>>> Per binding doc, i.MX93 GPIO supports two interrupts, and not
>>> compatible with i.MX7ULP. So update the node
>>>
>>> Signed-off-by: Peng Fan <[email protected]>
>>> ---
>>> arch/arm64/boot/dts/freescale/imx93.dtsi | 20 ++++++++++++--------
>>> 1 file changed, 12 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi
>>> b/arch/arm64/boot/dts/freescale/imx93.dtsi
>>> index 6f85a05ee7e1..011c34a57c53 100644
>>> --- a/arch/arm64/boot/dts/freescale/imx93.dtsi
>>> +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi
>>> @@ -825,11 +825,12 @@ usdhc3: mmc@428b0000 {
>>> };
>>>
>>> gpio2: gpio@43810080 {
>>> - compatible = "fsl,imx93-gpio", "fsl,imx7ulp-gpio";
>>> + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio";
>>
>> As your driver change points, it is breaking users, so no :(
>
> ok. Although i.MX93 GPIO is not compatible with i.MX7ULP from HW
> perspective, the compatible string should keep as it is now and binding

If it is not compatible, then how could it work before?



Best regards,
Krzysztof


2023-09-14 17:56:00

by Peng Fan

[permalink] [raw]
Subject: RE: [PATCH 5/5] arm64: dts: imx93: update gpio node

> Subject: Re: [PATCH 5/5] arm64: dts: imx93: update gpio node
>
> On 14/09/2023 08:04, Peng Fan wrote:
> >> Subject: Re: [PATCH 5/5] arm64: dts: imx93: update gpio node
> >>
> >> On 14/09/2023 04:21, Peng Fan (OSS) wrote:
> >>> From: Peng Fan <[email protected]>
> >>>
> >>> Per binding doc, i.MX93 GPIO supports two interrupts, and not
> >>> compatible with i.MX7ULP. So update the node
> >>>
> >>> Signed-off-by: Peng Fan <[email protected]>
> >>> ---
> >>> arch/arm64/boot/dts/freescale/imx93.dtsi | 20 ++++++++++++--------
> >>> 1 file changed, 12 insertions(+), 8 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi
> >>> b/arch/arm64/boot/dts/freescale/imx93.dtsi
> >>> index 6f85a05ee7e1..011c34a57c53 100644
> >>> --- a/arch/arm64/boot/dts/freescale/imx93.dtsi
> >>> +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi
> >>> @@ -825,11 +825,12 @@ usdhc3: mmc@428b0000 {
> >>> };
> >>>
> >>> gpio2: gpio@43810080 {
> >>> - compatible = "fsl,imx93-gpio", "fsl,imx7ulp-gpio";
> >>> + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio";
> >>
> >> As your driver change points, it is breaking users, so no :(
> >
> > ok. Although i.MX93 GPIO is not compatible with i.MX7ULP from HW
> > perspective, the compatible string should keep as it is now and
> > binding
>
> If it is not compatible, then how could it work before?

i.MX7ULP reg:
0h Port Data Output Register (PDOR)
4h Port Set Output Register (PSOR)
8h Port Clear Output Register (PCOR)
Ch Port Toggle Output Register (PTOR)
10h Port Data Input Register (PDIR)
14h Port Data Direction Register (PDDR)

i.MX8ULP/93 has different registers address, but
i.MX93 registers has 0x40 off as below:
40h Port Data Output (PDOR)

Even linux i.MX7ULP gpio driver could work with i.MX8ULP/93
GPIO HW with dts node using an 0x40 offset + base addr
for i.MX93 gpio. I think from hw design, they are
not compatible. Besides the upper differences,
there are other differences.

So I think better move to new compatible string.

Thanks,
Peng.

>
>
>
> Best regards,
> Krzysztof