Skip to content

Commit 45b2987

Browse files
committed
Merge branch 'pci/controller/imx'
- Replace variant switches with drvdata clock descriptions and clk_bulk API (Frank Li) - Replace variant switches with drvdata PHY flag for devm_phy_get() (Frank Li) - Replace variant switches with drvdata HAS_RESET flags for handling resets (Frank Li) - Replace variant switches with drvdata for LTSSM control bits (Frank Li) - Replace variant switches with drvdata for controller Root Complex vs Endpoint modes (Frank Li) - Replace variant switches with drvdata .init_phy() callback pointers (Frank Li) - Drop dt-binding redundant duplicate clock check (Frank Li) - reg/reg-name (Frank Li) - Drop addr_space retrieval code since dw_pcie_ep_init() already does it (Frank Li) - Add epc_features to drvdata (Frank Li) - Add iMX95 Root Complex and Endpoint support and dt-binding compatible strings (Frank Li) * pci/controller/imx: PCI: imx6: Add iMX95 Endpoint (EP) support dt-bindings: imx6q-pcie: Add iMX95 pcie endpoint compatible string PCI: imx6: Add epc_features in imx6_pcie_drvdata PCI: imx6: Clean up addr_space retrieval code PCI: imx6: Add iMX95 PCIe Root Complex support dt-bindings: imx6q-pcie: Add imx95 pcie compatible string dt-bindings: imx6q-pcie: Restruct reg and reg-name dt-bindings: imx6q-pcie: Clean up duplicate clocks check PCI: imx6: Simplify switch-case logic by introducing init_phy() callback PCI: imx6: Simplify configure_type() by using mode_off and mode_mask PCI: imx6: Simplify ltssm_enable() by using ltssm_off and ltssm_mask PCI: imx6: Simplify reset handling by using *_FLAG_HAS_*_RESET PCI: imx6: Simplify PHY handling by using IMX6_PCIE_FLAG_HAS_PHYDRV PCI: imx6: Simplify clock handling by using clk_bulk*() function
2 parents 0b5ce6b + b7d67c6 commit 45b2987

File tree

4 files changed

+430
-309
lines changed

4 files changed

+430
-309
lines changed

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

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -150,22 +150,6 @@ allOf:
150150
- {}
151151
- const: pcie_phy
152152
- const: pcie_aux
153-
- if:
154-
properties:
155-
compatible:
156-
not:
157-
contains:
158-
enum:
159-
- fsl,imx6sx-pcie
160-
- fsl,imx8mq-pcie
161-
- fsl,imx6sx-pcie-ep
162-
- fsl,imx8mq-pcie-ep
163-
then:
164-
properties:
165-
clocks:
166-
maxItems: 3
167-
clock-names:
168-
maxItems: 3
169153

170154
- if:
171155
properties:
@@ -223,6 +207,7 @@ allOf:
223207
- fsl,imx6sx-pcie
224208
- fsl,imx6q-pcie
225209
- fsl,imx6qp-pcie
210+
- fsl,imx95-pcie
226211
- fsl,imx6sx-pcie-ep
227212
- fsl,imx6q-pcie-ep
228213
- fsl,imx6qp-pcie-ep

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

Lines changed: 38 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,7 @@ properties:
2222
- fsl,imx8mm-pcie-ep
2323
- fsl,imx8mq-pcie-ep
2424
- fsl,imx8mp-pcie-ep
25-
26-
reg:
27-
minItems: 2
28-
29-
reg-names:
30-
items:
31-
- const: dbi
32-
- const: addr_space
25+
- fsl,imx95-pcie-ep
3326

3427
clocks:
3528
minItems: 3
@@ -62,11 +55,48 @@ required:
6255
allOf:
6356
- $ref: /schemas/pci/snps,dw-pcie-ep.yaml#
6457
- $ref: /schemas/pci/fsl,imx6q-pcie-common.yaml#
58+
- if:
59+
properties:
60+
compatible:
61+
enum:
62+
- fsl,imx8mm-pcie-ep
63+
- fsl,imx8mq-pcie-ep
64+
- fsl,imx8mp-pcie-ep
65+
then:
66+
properties:
67+
reg:
68+
minItems: 2
69+
maxItems: 2
70+
reg-names:
71+
items:
72+
- const: dbi
73+
- const: addr_space
74+
75+
- if:
76+
properties:
77+
compatible:
78+
enum:
79+
- fsl,imx95-pcie-ep
80+
then:
81+
properties:
82+
reg:
83+
minItems: 6
84+
maxItems: 6
85+
reg-names:
86+
items:
87+
- const: dbi
88+
- const: atu
89+
- const: dbi2
90+
- const: app
91+
- const: dma
92+
- const: addr_space
93+
6594
- if:
6695
properties:
6796
compatible:
6897
enum:
6998
- fsl,imx8mq-pcie-ep
99+
- fsl,imx95-pcie-ep
70100
then:
71101
properties:
72102
clocks:

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

Lines changed: 39 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,7 @@ properties:
2929
- fsl,imx8mq-pcie
3030
- fsl,imx8mm-pcie
3131
- fsl,imx8mp-pcie
32-
33-
reg:
34-
items:
35-
- description: Data Bus Interface (DBI) registers.
36-
- description: PCIe configuration space region.
37-
38-
reg-names:
39-
items:
40-
- const: dbi
41-
- const: config
32+
- fsl,imx95-pcie
4233

4334
clocks:
4435
minItems: 3
@@ -90,6 +81,43 @@ required:
9081
allOf:
9182
- $ref: /schemas/pci/snps,dw-pcie.yaml#
9283
- $ref: /schemas/pci/fsl,imx6q-pcie-common.yaml#
84+
- if:
85+
properties:
86+
compatible:
87+
enum:
88+
- fsl,imx6q-pcie
89+
- fsl,imx6sx-pcie
90+
- fsl,imx6qp-pcie
91+
- fsl,imx7d-pcie
92+
- fsl,imx8mq-pcie
93+
- fsl,imx8mm-pcie
94+
- fsl,imx8mp-pcie
95+
then:
96+
properties:
97+
reg:
98+
maxItems: 2
99+
reg-names:
100+
items:
101+
- const: dbi
102+
- const: config
103+
104+
- if:
105+
properties:
106+
compatible:
107+
enum:
108+
- fsl,imx95-pcie
109+
then:
110+
properties:
111+
reg:
112+
minItems: 4
113+
maxItems: 4
114+
reg-names:
115+
items:
116+
- const: dbi
117+
- const: config
118+
- const: atu
119+
- const: app
120+
93121
- if:
94122
properties:
95123
compatible:
@@ -111,6 +139,7 @@ allOf:
111139
compatible:
112140
enum:
113141
- fsl,imx8mq-pcie
142+
- fsl,imx95-pcie
114143
then:
115144
properties:
116145
clocks:

0 commit comments

Comments
 (0)