Looks like the BCM53012 has a similar problem to the BCM53011. Signed-off-by: Ian Kent <ra...@themaw.net> --- ...-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch | 12 +++++++++++- ...-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch | 12 +++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/target/linux/bcm53xx/patches-3.14/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch b/target/linux/bcm53xx/patches-3.14/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch index e963133..4e2e59e 100644 --- a/target/linux/bcm53xx/patches-3.14/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch +++ b/target/linux/bcm53xx/patches-3.14/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch @@ -30,7 +30,16 @@ to remove the call to pci_bus_add_devices() in pci_scan_root_bus() to make registration work, calling pci_bus_add_devices() later again does not fix this problem. +edit: imk +It appears the BCM53012 has a similar problem to the BCM53011. + +If the top 24 bits of the dev->class field isn't PCI_CLASS_BRIDGE_PCI +the kernel will not do the bridge setup so add an early fixup for it +too. +end edit: imk + Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> +Signed-off-by: Ian Kent <ra...@themaw.net> --- arch/arm/mach-bcm/Kconfig | 1 + drivers/pci/host/Kconfig | 7 + @@ -72,7 +81,7 @@ Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> +obj-$(CONFIG_PCI_BCM5301X) += pci-host-bcm5301x.o --- /dev/null +++ b/drivers/pci/host/pci-host-bcm5301x.c -@@ -0,0 +1,459 @@ +@@ -0,0 +1,460 @@ +/* + * Northstar PCI-Express driver + * Only supports Root-Complex (RC) mode @@ -220,6 +229,7 @@ Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> + dev->class = PCI_CLASS_BRIDGE_PCI << 8; +} +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x8011, bcma_pcie2_fixup_class); ++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x8012, bcma_pcie2_fixup_class); + +/* + * Check link status, return 0 if link is up in RC mode, diff --git a/target/linux/bcm53xx/patches-3.18/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch b/target/linux/bcm53xx/patches-3.18/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch index 1a84604..94fdea1 100644 --- a/target/linux/bcm53xx/patches-3.18/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch +++ b/target/linux/bcm53xx/patches-3.18/170-pcie2-bcma-add-new-PCIe2-driver-for-bcma.patch @@ -30,7 +30,16 @@ to remove the call to pci_bus_add_devices() in pci_scan_root_bus() to make registration work, calling pci_bus_add_devices() later again does not fix this problem. +edit: imk +It appears the BCM53012 has a similar problem to the BCM53011. + +If the top 24 bits of the dev->class field isn't PCI_CLASS_BRIDGE_PCI +the kernel will not do the bridge setup so add an early fixup for it +too. +end edit: imk + Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> +Signed-off-by: Ian Kent <ra...@themaw.net> --- arch/arm/mach-bcm/Kconfig | 1 + drivers/pci/host/Kconfig | 7 + @@ -72,7 +81,7 @@ Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> +obj-$(CONFIG_PCI_BCM5301X) += pci-host-bcm5301x.o --- /dev/null +++ b/drivers/pci/host/pci-host-bcm5301x.c -@@ -0,0 +1,459 @@ +@@ -0,0 +1,460 @@ +/* + * Northstar PCI-Express driver + * Only supports Root-Complex (RC) mode @@ -220,6 +229,7 @@ Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de> + dev->class = PCI_CLASS_BRIDGE_PCI << 8; +} +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x8011, bcma_pcie2_fixup_class); ++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x8012, bcma_pcie2_fixup_class); + +/* + * Check link status, return 0 if link is up in RC mode, _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel