Re: [PATCH v6 4/4] PCI: designware: Add iATU Unroll feature
From: Fabio Estevam
Date: Tue Nov 15 2016 - 19:31:16 EST
Hi Tim,
On Tue, Nov 15, 2016 at 10:22 PM, Tim Harvey <tharvey@xxxxxxxxxxxxx> wrote:
> Bjorn / Joao,
>
> This patch (from commit a0601a47053714eecec726aea5ebcd829f817497) is
> causing a kernel regression in 4.9. I can no longer boot the kernel on
> boards that have a PCIe switch downstream from the IMX6 (ie many of
> the Gateworks Ventana boards) unless PCI is enabled in the bootloader
> (which is not recommended as that causes PCI link in the kernel to
> occasionally fail).
This has been fixed in 4.9-rc4 by the following commit:
commit 416379f9ebded501eda882e6af0a7aafc1866700
Author: Niklas Cassel <niklas.cassel@xxxxxxxx>
Date: Fri Oct 14 23:54:55 2016 +0200
PCI: designware: Check for iATU unroll support after initializing host
dw_pcie_iatu_unroll_enabled() reads a dbi_base register. Reading any
dbi_base register before pp->ops->host_init has been called causes
"imprecise external abort" on platforms like ARTPEC-6, where the PCIe
module is disabled at boot and first enabled in pp->ops->host_init. Move
dw_pcie_iatu_unroll_enabled() to dw_pcie_setup_rc(), since it is after
pp->ops->host_init, but before pp->iatu_unroll_enabled is actually used.
Fixes: a0601a470537 ("PCI: designware: Add iATU Unroll feature")
Tested-by: James Le Cuirot <chewi@xxxxxxxxxx>
Signed-off-by: Niklas Cassel <niklas.cassel@xxxxxxxx>
Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
Acked-by: Joao Pinto <jpinto@xxxxxxxxxxxx>
Acked-by: Olof Johansson <olof@xxxxxxxxx>