--- /dev/null
+From: Mathias Kresin <dev@kresin.me>
+Date: Tue, 14 Mar 2017 22:12:12 +0100
+Subject: [PATCH v2] MIPS: PCI: scan PCI controllers in reverse order
+
+Commit 23dac14d058f ("MIPS: PCI: Use struct list_head lists") changed
+the controller list from reverse to straight order without taking care
+of the changed order for the scan of the recorded PCI controllers.
+
+Traverse the list in reverse order to restore the former behaviour.
+
+This patches fixes the following PCI error on lantiq:
+
+ pci 0000:01:00.0: BAR 0: error updating (0x1c000004 != 0x000000)
+
+Fixes: 23dac14d058f ("MIPS: PCI: Use struct list_head lists")
+Signed-off-by: Mathias Kresin <dev@kresin.me>
+---
+ arch/mips/pci/pci-legacy.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/mips/pci/pci-legacy.c
++++ b/arch/mips/pci/pci-legacy.c
+@@ -222,7 +222,7 @@ static int __init pcibios_init(void)
+ struct pci_controller *hose;
+
+ /* Scan all of the recorded PCI controllers. */
+- list_for_each_entry(hose, &controllers, list)
++ list_for_each_entry_reverse(hose, &controllers, list)
+ pcibios_scanbus(hose);
+
+ pci_fixup_irqs(pci_common_swizzle, pcibios_map_irq);