diff options
Diffstat (limited to 'target/linux/layerscape/patches-4.4/0054-PCI-designware-Explain-why-we-don-t-program-ATU-for-.patch')
-rw-r--r-- | target/linux/layerscape/patches-4.4/0054-PCI-designware-Explain-why-we-don-t-program-ATU-for-.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-4.4/0054-PCI-designware-Explain-why-we-don-t-program-ATU-for-.patch b/target/linux/layerscape/patches-4.4/0054-PCI-designware-Explain-why-we-don-t-program-ATU-for-.patch new file mode 100644 index 0000000000..f48150dab2 --- /dev/null +++ b/target/linux/layerscape/patches-4.4/0054-PCI-designware-Explain-why-we-don-t-program-ATU-for-.patch @@ -0,0 +1,34 @@ +From 481b1bc4ce0d58107887558342e50d6323a9601d Mon Sep 17 00:00:00 2001 +From: Jisheng Zhang <jszhang@marvell.com> +Date: Thu, 7 Jan 2016 14:12:38 +0800 +Subject: [PATCH 54/70] PCI: designware: Explain why we don't program ATU for + some platforms + +Some platforms don't support ATU, e.g., pci-keystone.c. These platforms +use their own address translation component rather than ATU, and they +provide the rd_other_conf and wr_other_conf methods to program the +translation component and perform the access. + +Add a comment to explain why we don't program the ATU for these platforms. + +[bhelgaas: changelog] +Signed-off-by: Jisheng Zhang <jszhang@marvell.com> +Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> +--- + drivers/pci/host/pcie-designware.c | 5 +++++ + 1 file changed, 5 insertions(+) + +--- a/drivers/pci/host/pcie-designware.c ++++ b/drivers/pci/host/pcie-designware.c +@@ -517,6 +517,11 @@ int dw_pcie_host_init(struct pcie_port * + if (pp->ops->host_init) + pp->ops->host_init(pp); + ++ /* ++ * If the platform provides ->rd_other_conf, it means the platform ++ * uses its own address translation component rather than ATU, so ++ * we should not program the ATU here. ++ */ + if (!pp->ops->rd_other_conf) + dw_pcie_prog_outbound_atu(pp, PCIE_ATU_REGION_INDEX1, + PCIE_ATU_TYPE_MEM, pp->mem_base, |