[PATCH 5/5] arm64: dts: imx93: update gpio node

Peng Fan peng.fan at nxp.com
Thu Sep 14 00:26:21 PDT 2023


> Subject: Re: [PATCH 5/5] arm64: dts: imx93: update gpio node
> 
> On 14/09/2023 08:53, Peng Fan wrote:
> >> 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 <peng.fan at nxp.com>
> >>>>>
> >>>>> Per binding doc, i.MX93 GPIO supports two interrupts, and not
> >>>>> compatible with i.MX7ULP. So update the node
> >>>>>
> >>>>> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> >>>>> ---
> >>>>>  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 at 428b0000 {
> >>>>>  		};
> >>>>>
> >>>>>  		gpio2: gpio at 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.
> 
> Sorry, I don't understand it. I asked how could they work before in Linux, if
> they are not compatible, and you pasted regs.
> 
> So again - if they are not compatible, how could it work? Or maybe it never
> worked? But then commit msg would say it.

Hm. From hw design perspective they are not compatible, I think.
But from programming model perspective, partial of i.MX93/8ULP registers
are same as i.MX7ULP, with offset not start from 0.

From programming model, we could say they are compatible.

Then for i.MX95, I could still use "fsl,imx95-gpio", "fsl,imx7ulp-gpio".

Thanks,
Peng.

> 
> Best regards,
> Krzysztof



More information about the linux-arm-kernel mailing list