提交 3e02dc43 编写于 作者: L Lorenzo Pieralisi 提交者: Bjorn Helgaas

PCI: tegra: Update PCI config space remap function

PCI configuration space should be mapped with a memory region type that
generates on the CPU host bus non-posted write transations. Update the
driver to use correct memory mapping attributes to map config space
regions to enforce configuration space non-posted writes behaviour.
Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
上级 26b758f7
...@@ -380,7 +380,7 @@ static struct tegra_pcie_bus *tegra_pcie_bus_alloc(struct tegra_pcie *pcie, ...@@ -380,7 +380,7 @@ static struct tegra_pcie_bus *tegra_pcie_bus_alloc(struct tegra_pcie *pcie,
unsigned int busnr) unsigned int busnr)
{ {
struct device *dev = pcie->dev; struct device *dev = pcie->dev;
pgprot_t prot = pgprot_device(PAGE_KERNEL); pgprot_t prot = pgprot_noncached(PAGE_KERNEL);
phys_addr_t cs = pcie->cs->start; phys_addr_t cs = pcie->cs->start;
struct tegra_pcie_bus *bus; struct tegra_pcie_bus *bus;
unsigned int i; unsigned int i;
...@@ -1962,7 +1962,7 @@ static int tegra_pcie_parse_dt(struct tegra_pcie *pcie) ...@@ -1962,7 +1962,7 @@ static int tegra_pcie_parse_dt(struct tegra_pcie *pcie)
rp->pcie = pcie; rp->pcie = pcie;
rp->np = port; rp->np = port;
rp->base = devm_ioremap_resource(dev, &rp->regs); rp->base = devm_pci_remap_cfg_resource(dev, &rp->regs);
if (IS_ERR(rp->base)) if (IS_ERR(rp->base))
return PTR_ERR(rp->base); return PTR_ERR(rp->base);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册