diff mbox series

[v2,1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and "atu" for i.MX8M PCIe Endpoint

Message ID 1721790236-3966-2-git-send-email-hongxing.zhu@nxp.com
State New
Headers show
Series Add dbi2 and atu for i.MX8M PCIe EP | expand

Commit Message

Richard Zhu July 24, 2024, 3:03 a.m. UTC
Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
---
 .../devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml  | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

Comments

Krzysztof Kozlowski July 24, 2024, 6:06 a.m. UTC | #1
On 24/07/2024 05:03, Richard Zhu wrote:
> Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.

This we see in the diff. What I do not see is why? Hardware changed? How
come?


Best regards,
Krzysztof
Richard Zhu July 24, 2024, 6:26 a.m. UTC | #2
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: 2024年7月24日 14:07
> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> l.stach@pengutronix.de
> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> kernel@pengutronix.de; imx@lists.linux.dev
> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and
> "atu" for i.MX8M PCIe Endpoint
> 
> On 24/07/2024 05:03, Richard Zhu wrote:
> > Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.
> 
> This we see in the diff. What I do not see is why? Hardware changed? How come?
> 
For i.MX8M PCIe EP, the dbi2 and atu address are pre-defined in the driver.
This method is not good.
In commit b7d67c6130ee ("PCI: imx6: Add iMX95 Endpoint (EP) support"),
Frank suggests to fetch the dbi2 and atu from DT directly.
This series is preparation to do that for i.MX8M PCIe EP.

Best Regards
Richard Zhu
> 
> Best regards,
> Krzysztof
Krzysztof Kozlowski July 24, 2024, 6:32 a.m. UTC | #3
On 24/07/2024 08:26, Hongxing Zhu wrote:
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzk@kernel.org>
>> Sent: 2024年7月24日 14:07
>> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
>> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
>> l.stach@pengutronix.de
>> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
>> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
>> kernel@pengutronix.de; imx@lists.linux.dev
>> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and
>> "atu" for i.MX8M PCIe Endpoint
>>
>> On 24/07/2024 05:03, Richard Zhu wrote:
>>> Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.
>>
>> This we see in the diff. What I do not see is why? Hardware changed? How come?
>>
> For i.MX8M PCIe EP, the dbi2 and atu address are pre-defined in the driver.
> This method is not good.
> In commit b7d67c6130ee ("PCI: imx6: Add iMX95 Endpoint (EP) support"),
> Frank suggests to fetch the dbi2 and atu from DT directly.
> This series is preparation to do that for i.MX8M PCIe EP.

This all must be explained in commit msg.

Anyway, this will be an ABI break, so explain exactly why it is OK to
break the ABI.

Best regards,
Krzysztof
Richard Zhu July 24, 2024, 7:19 a.m. UTC | #4
> -----Original Message-----
> From: Krzysztof Kozlowski <krzk@kernel.org>
> Sent: 2024年7月24日 14:33
> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> l.stach@pengutronix.de
> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> kernel@pengutronix.de; imx@lists.linux.dev
> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and
> "atu" for i.MX8M PCIe Endpoint
> 
> On 24/07/2024 08:26, Hongxing Zhu wrote:
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski <krzk@kernel.org>
> >> Sent: 2024年7月24日 14:07
> >> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> >> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> >> l.stach@pengutronix.de
> >> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> >> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> >> kernel@pengutronix.de; imx@lists.linux.dev
> >> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name
> >> "dbi2" and "atu" for i.MX8M PCIe Endpoint
> >>
> >> On 24/07/2024 05:03, Richard Zhu wrote:
> >>> Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.
> >>
> >> This we see in the diff. What I do not see is why? Hardware changed? How
> come?
> >>
> > For i.MX8M PCIe EP, the dbi2 and atu address are pre-defined in the driver.
> > This method is not good.
> > In commit b7d67c6130ee ("PCI: imx6: Add iMX95 Endpoint (EP) support"),
> > Frank suggests to fetch the dbi2 and atu from DT directly.
> > This series is preparation to do that for i.MX8M PCIe EP.
> 
> This all must be explained in commit msg.
> 
> Anyway, this will be an ABI break, so explain exactly why it is OK to break the ABI.
Okay, all the explanation would be added later.
Thanks for your comments.

Best Regards
Richard Zhu
> 
> Best regards,
> Krzysztof
Conor Dooley July 24, 2024, 4:23 p.m. UTC | #5
On Wed, Jul 24, 2024 at 08:32:34AM +0200, Krzysztof Kozlowski wrote:
> On 24/07/2024 08:26, Hongxing Zhu wrote:
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski <krzk@kernel.org>
> >> Sent: 2024年7月24日 14:07
> >> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> >> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> >> l.stach@pengutronix.de
> >> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> >> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> >> kernel@pengutronix.de; imx@lists.linux.dev
> >> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and
> >> "atu" for i.MX8M PCIe Endpoint
> >>
> >> On 24/07/2024 05:03, Richard Zhu wrote:
> >>> Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.
> >>
> >> This we see in the diff. What I do not see is why? Hardware changed? How come?
> >>
> > For i.MX8M PCIe EP, the dbi2 and atu address are pre-defined in the driver.
> > This method is not good.
> > In commit b7d67c6130ee ("PCI: imx6: Add iMX95 Endpoint (EP) support"),
> > Frank suggests to fetch the dbi2 and atu from DT directly.
> > This series is preparation to do that for i.MX8M PCIe EP.
> 
> This all must be explained in commit msg.
> 
> Anyway, this will be an ABI break, so explain exactly why it is OK to
> break the ABI.

And the driver needs to be written in such a way that if only two reg
properties are provided, it falls back to the old method of acquiring
the two new reg regions. I didn't see a driver patch on v1, so I missed
that this is what was actually the plan - I thought that this was just
adding two missing regions.
Richard Zhu July 25, 2024, 2:32 a.m. UTC | #6
> -----Original Message-----
> From: Conor Dooley <conor@kernel.org>
> Sent: 2024年7月25日 0:24
> To: Krzysztof Kozlowski <krzk@kernel.org>
> Cc: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> l.stach@pengutronix.de; devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> kernel@pengutronix.de; imx@lists.linux.dev
> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name "dbi2" and
> "atu" for i.MX8M PCIe Endpoint
> 
> On Wed, Jul 24, 2024 at 08:32:34AM +0200, Krzysztof Kozlowski wrote:
> > On 24/07/2024 08:26, Hongxing Zhu wrote:
> > >> -----Original Message-----
> > >> From: Krzysztof Kozlowski <krzk@kernel.org>
> > >> Sent: 2024年7月24日 14:07
> > >> To: Hongxing Zhu <hongxing.zhu@nxp.com>; robh@kernel.org;
> > >> krzk+dt@kernel.org; conor+dt@kernel.org; shawnguo@kernel.org;
> > >> l.stach@pengutronix.de
> > >> Cc: devicetree@vger.kernel.org; linux-pci@vger.kernel.org;
> > >> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
> > >> kernel@pengutronix.de; imx@lists.linux.dev
> > >> Subject: Re: [PATCH v2 1/4] dt-bindings: imx6q-pcie: Add reg-name
> > >> "dbi2" and "atu" for i.MX8M PCIe Endpoint
> > >>
> > >> On 24/07/2024 05:03, Richard Zhu wrote:
> > >>> Add reg-name: "dbi2", "atu" for i.MX8M PCIe Endpoint.
> > >>
> > >> This we see in the diff. What I do not see is why? Hardware changed? How
> come?
> > >>
> > > For i.MX8M PCIe EP, the dbi2 and atu address are pre-defined in the driver.
> > > This method is not good.
> > > In commit b7d67c6130ee ("PCI: imx6: Add iMX95 Endpoint (EP)
> > > support"), Frank suggests to fetch the dbi2 and atu from DT directly.
> > > This series is preparation to do that for i.MX8M PCIe EP.
> >
> > This all must be explained in commit msg.
> >
> > Anyway, this will be an ABI break, so explain exactly why it is OK to
> > break the ABI.
> 
> And the driver needs to be written in such a way that if only two reg properties are
> provided, it falls back to the old method of acquiring the two new reg regions. I
> didn't see a driver patch on v1, so I missed that this is what was actually the plan - I
> thought that this was just adding two missing regions.
Hi Corner:
Thanks for your comments.
Yes, the current driver just uses this way to handle dbi2 and atu base
 address assignments.
If only two reg properties are provided, driver would falls back to the
 old method.

Best Regards
Richard Zhu
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml
index a06f75df8458..84ca12e8b25b 100644
--- a/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml
+++ b/Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml
@@ -65,12 +65,14 @@  allOf:
     then:
       properties:
         reg:
-          minItems: 2
-          maxItems: 2
+          minItems: 4
+          maxItems: 4
         reg-names:
           items:
             - const: dbi
             - const: addr_space
+            - const: dbi2
+            - const: atu
 
   - if:
       properties:
@@ -129,8 +131,11 @@  examples:
 
     pcie_ep: pcie-ep@33800000 {
       compatible = "fsl,imx8mp-pcie-ep";
-      reg = <0x33800000 0x000400000>, <0x18000000 0x08000000>;
-      reg-names = "dbi", "addr_space";
+      reg = <0x33800000 0x100000>,
+            <0x18000000 0x8000000>,
+            <0x33900000 0x100000>,
+            <0x33b00000 0x100000>;
+      reg-names = "dbi", "addr_space", "dbi2", "atu";
       clocks = <&clk IMX8MP_CLK_HSIO_ROOT>,
                <&clk IMX8MP_CLK_HSIO_AXI>,
                <&clk IMX8MP_CLK_PCIE_ROOT>;