Skip to content

Commit 5b9c74b

Browse files
committed
Merge branch 'pci/controller/imx6'
- Add DT compatible string 'fsl,imx8q-pcie-ep' and driver support for i.MX8Q series (i.MX8QM, i.MX8QXP, and i.MX8DXL) Endpoints (Frank Li) - Add DT binding for optional i.MX95 Refclk and driver support to enable it if the platform hasn't enabled it (Richard Zhu) - Configure PHY based on controller being in Root Complex or Endpoint mode (Frank Li) - Rely on dbi2 and iATU base addresses from DT via dw_pcie_get_resources() instead of hardcoding them in imx6 (Richard Zhu) - Skip controller_id computation for i.MX7D since it only has one controller (Richard Zhu) - Deassert apps_reset in imx_pcie_deassert_core_reset() since it is asserted in imx_pcie_assert_core_reset() (Richard Zhu) - Add missing reference clock enable or disable logic for IMX6SX, IMX7D, IMX8MM (Richard Zhu) - Remove redundant imx7d_pcie_init_phy() since imx7d_pcie_enable_ref_clk() does the same thing (Richard Zhu) * pci/controller/imx6: PCI: imx6: Clean up comments and whitespace PCI: imx6: Remove surplus imx7d_pcie_init_phy() function PCI: imx6: Add missing reference clock disable logic PCI: imx6: Deassert apps_reset in imx_pcie_deassert_core_reset() PCI: imx6: Skip controller_id generation logic for i.MX7D PCI: imx6: Fetch dbi2 and iATU base addesses from DT PCI: imx6: Configure PHY based on Root Complex or Endpoint mode PCI: imx6: Add Refclk for i.MX95 PCIe dt-bindings: PCI: fsl,imx6q-pcie: Add Refclk for i.MX95 RC PCI: imx6: Add i.MX8Q PCIe Endpoint (EP) support dt-bindings: PCI: fsl,imx6q-pcie-ep: Add compatible string fsl,imx8q-pcie-ep # Conflicts: # drivers/pci/controller/dwc/pci-imx6.c
2 parents 349b434 + b881532 commit 5b9c74b

File tree

4 files changed

+130
-76
lines changed

4 files changed

+130
-76
lines changed

Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-common.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ description:
1717
properties:
1818
clocks:
1919
minItems: 3
20-
maxItems: 4
20+
maxItems: 5
2121

2222
clock-names:
2323
minItems: 3
24-
maxItems: 4
24+
maxItems: 5
2525

2626
num-lanes:
2727
const: 1

Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ properties:
2222
- fsl,imx8mm-pcie-ep
2323
- fsl,imx8mq-pcie-ep
2424
- fsl,imx8mp-pcie-ep
25+
- fsl,imx8q-pcie-ep
2526
- fsl,imx95-pcie-ep
2627

2728
clocks:
@@ -74,6 +75,20 @@ allOf:
7475
- const: dbi2
7576
- const: atu
7677

78+
- if:
79+
properties:
80+
compatible:
81+
enum:
82+
- fsl,imx8q-pcie-ep
83+
then:
84+
properties:
85+
reg:
86+
maxItems: 2
87+
reg-names:
88+
items:
89+
- const: dbi
90+
- const: addr_space
91+
7792
- if:
7893
properties:
7994
compatible:
@@ -103,13 +118,21 @@ allOf:
103118
properties:
104119
clocks:
105120
minItems: 4
121+
maxItems: 4
106122
clock-names:
107123
items:
108124
- const: pcie
109125
- const: pcie_bus
110126
- const: pcie_phy
111127
- const: pcie_aux
112-
else:
128+
129+
- if:
130+
properties:
131+
compatible:
132+
enum:
133+
- fsl,imx8mm-pcie-ep
134+
- fsl,imx8mp-pcie-ep
135+
then:
113136
properties:
114137
clocks:
115138
maxItems: 3
@@ -119,6 +142,20 @@ allOf:
119142
- const: pcie_bus
120143
- const: pcie_aux
121144

145+
- if:
146+
properties:
147+
compatible:
148+
enum:
149+
- fsl,imxq-pcie-ep
150+
then:
151+
properties:
152+
clocks:
153+
maxItems: 3
154+
clock-names:
155+
items:
156+
- const: dbi
157+
- const: mstr
158+
- const: slv
122159

123160
unevaluatedProperties: false
124161

Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,11 @@ properties:
4040
- description: PCIe PHY clock.
4141
- description: Additional required clock entry for imx6sx-pcie,
4242
imx6sx-pcie-ep, imx8mq-pcie, imx8mq-pcie-ep.
43+
- description: PCIe reference clock.
4344

4445
clock-names:
4546
minItems: 3
46-
maxItems: 4
47+
maxItems: 5
4748

4849
interrupts:
4950
items:
@@ -127,7 +128,7 @@ allOf:
127128
then:
128129
properties:
129130
clocks:
130-
minItems: 4
131+
maxItems: 4
131132
clock-names:
132133
items:
133134
- const: pcie
@@ -140,11 +141,10 @@ allOf:
140141
compatible:
141142
enum:
142143
- fsl,imx8mq-pcie
143-
- fsl,imx95-pcie
144144
then:
145145
properties:
146146
clocks:
147-
minItems: 4
147+
maxItems: 4
148148
clock-names:
149149
items:
150150
- const: pcie
@@ -200,6 +200,23 @@ allOf:
200200
- const: mstr
201201
- const: slv
202202

203+
- if:
204+
properties:
205+
compatible:
206+
enum:
207+
- fsl,imx95-pcie
208+
then:
209+
properties:
210+
clocks:
211+
maxItems: 5
212+
clock-names:
213+
items:
214+
- const: pcie
215+
- const: pcie_bus
216+
- const: pcie_phy
217+
- const: pcie_aux
218+
- const: ref
219+
203220
unevaluatedProperties: false
204221

205222
examples:

0 commit comments

Comments
 (0)