diff options
| author | Dongdong Liu <liudongdong3@huawei.com> | 2017-03-23 09:18:17 -0400 |
|---|---|---|
| committer | Bjorn Helgaas <bhelgaas@google.com> | 2017-04-12 11:46:47 -0400 |
| commit | b9c1153f7a9cb2d53b845615a0edd510f7fe8341 (patch) | |
| tree | 49f96f78d3848e241824ba68b6709fe6a15117a4 | |
| parent | 794a8604fe6e4a311373cde57a86ad4aab9d32b8 (diff) | |
PCI: hisi: Fix DT binding (hisi-pcie-almost-ecam)
The "hisilicon,pcie-almost-ecam" binding goes against the usual DT
conventions, and is non-sensical in that it describes the IP based on
what it isn't. Fix the DT binding with "hisilicon,hip06-pcie-ecam"
and "hisilicon,hip07-pcie-ecam".
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Dongdong Liu <liudongdong3@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
| -rw-r--r-- | Documentation/devicetree/bindings/pci/hisilicon-pcie.txt | 10 | ||||
| -rw-r--r-- | drivers/pci/dwc/pcie-hisi.c | 6 |
2 files changed, 13 insertions, 3 deletions
diff --git a/Documentation/devicetree/bindings/pci/hisilicon-pcie.txt b/Documentation/devicetree/bindings/pci/hisilicon-pcie.txt index b7fa3b97986d..a339dbb15493 100644 --- a/Documentation/devicetree/bindings/pci/hisilicon-pcie.txt +++ b/Documentation/devicetree/bindings/pci/hisilicon-pcie.txt | |||
| @@ -44,13 +44,19 @@ Hip05 Example (note that Hip06 is the same except compatible): | |||
| 44 | }; | 44 | }; |
| 45 | 45 | ||
| 46 | HiSilicon Hip06/Hip07 PCIe host bridge DT (almost-ECAM) description. | 46 | HiSilicon Hip06/Hip07 PCIe host bridge DT (almost-ECAM) description. |
| 47 | |||
| 48 | Some BIOSes place the host controller in a mode where it is ECAM | ||
| 49 | compliant for all devices other than the root complex. In such cases, | ||
| 50 | the host controller should be described as below. | ||
| 51 | |||
| 47 | The properties and their meanings are identical to those described in | 52 | The properties and their meanings are identical to those described in |
| 48 | host-generic-pci.txt except as listed below. | 53 | host-generic-pci.txt except as listed below. |
| 49 | 54 | ||
| 50 | Properties of the host controller node that differ from | 55 | Properties of the host controller node that differ from |
| 51 | host-generic-pci.txt: | 56 | host-generic-pci.txt: |
| 52 | 57 | ||
| 53 | - compatible : Must be "hisilicon,pcie-almost-ecam" | 58 | - compatible : Must be "hisilicon,hip06-pcie-ecam", or |
| 59 | "hisilicon,hip07-pcie-ecam" | ||
| 54 | 60 | ||
| 55 | - reg : Two entries: First the ECAM configuration space for any | 61 | - reg : Two entries: First the ECAM configuration space for any |
| 56 | other bus underneath the root bus. Second, the base | 62 | other bus underneath the root bus. Second, the base |
| @@ -59,7 +65,7 @@ host-generic-pci.txt: | |||
| 59 | 65 | ||
| 60 | Example: | 66 | Example: |
| 61 | pcie0: pcie@a0090000 { | 67 | pcie0: pcie@a0090000 { |
| 62 | compatible = "hisilicon,pcie-almost-ecam"; | 68 | compatible = "hisilicon,hip06-pcie-ecam"; |
| 63 | reg = <0 0xb0000000 0 0x2000000>, /* ECAM configuration space */ | 69 | reg = <0 0xb0000000 0 0x2000000>, /* ECAM configuration space */ |
| 64 | <0 0xa0090000 0 0x10000>; /* host bridge registers */ | 70 | <0 0xa0090000 0 0x10000>; /* host bridge registers */ |
| 65 | bus-range = <0 31>; | 71 | bus-range = <0 31>; |
diff --git a/drivers/pci/dwc/pcie-hisi.c b/drivers/pci/dwc/pcie-hisi.c index fd66a3199db7..cf9d6a9d9fd4 100644 --- a/drivers/pci/dwc/pcie-hisi.c +++ b/drivers/pci/dwc/pcie-hisi.c | |||
| @@ -380,9 +380,13 @@ struct pci_ecam_ops hisi_pcie_platform_ops = { | |||
| 380 | 380 | ||
| 381 | static const struct of_device_id hisi_pcie_almost_ecam_of_match[] = { | 381 | static const struct of_device_id hisi_pcie_almost_ecam_of_match[] = { |
| 382 | { | 382 | { |
| 383 | .compatible = "hisilicon,pcie-almost-ecam", | 383 | .compatible = "hisilicon,hip06-pcie-ecam", |
| 384 | .data = (void *) &hisi_pcie_platform_ops, | 384 | .data = (void *) &hisi_pcie_platform_ops, |
| 385 | }, | 385 | }, |
| 386 | { | ||
| 387 | .compatible = "hisilicon,hip07-pcie-ecam", | ||
| 388 | .data = (void *) &hisi_pcie_platform_ops, | ||
| 389 | }, | ||
| 386 | {}, | 390 | {}, |
| 387 | }; | 391 | }; |
| 388 | 392 | ||
