Looks like the BCM53012 has a similar problem to the BCM53011. Signed-off-by: Ian Kent <[email protected]> --- .../171-bcm5301x-fixup-early-device-id-8012.patch | 26 ++++++++++++++++++++ .../171-bcm5301x-fixup-early-device-id-8012.patch | 26 ++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 target/linux/bcm53xx/patches-3.14/171-bcm5301x-fixup-early-device-id-8012.patch create mode 100644 target/linux/bcm53xx/patches-3.18/171-bcm5301x-fixup-early-device-id-8012.patch
diff --git a/target/linux/bcm53xx/patches-3.14/171-bcm5301x-fixup-early-device-id-8012.patch b/target/linux/bcm53xx/patches-3.14/171-bcm5301x-fixup-early-device-id-8012.patch new file mode 100644 index 0000000..10168a1 --- /dev/null +++ b/target/linux/bcm53xx/patches-3.14/171-bcm5301x-fixup-early-device-id-8012.patch @@ -0,0 +1,26 @@ +bcm5301x - fixup early device id 8012 + +From: Ian Kent <[email protected]> + +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. + +Signed-off-by: Ian Kent <[email protected]> +--- + drivers/pci/host/pci-host-bcm5301x.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/pci/host/pci-host-bcm5301x.c b/drivers/pci/host/pci-host-bcm5301x.c +index d47405c..1a10622 100644 +--- a/drivers/pci/host/pci-host-bcm5301x.c ++++ b/drivers/pci/host/pci-host-bcm5301x.c +@@ -145,6 +145,7 @@ static void bcma_pcie2_fixup_class(struct pci_dev *dev) + 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/171-bcm5301x-fixup-early-device-id-8012.patch b/target/linux/bcm53xx/patches-3.18/171-bcm5301x-fixup-early-device-id-8012.patch new file mode 100644 index 0000000..10168a1 --- /dev/null +++ b/target/linux/bcm53xx/patches-3.18/171-bcm5301x-fixup-early-device-id-8012.patch @@ -0,0 +1,26 @@ +bcm5301x - fixup early device id 8012 + +From: Ian Kent <[email protected]> + +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. + +Signed-off-by: Ian Kent <[email protected]> +--- + drivers/pci/host/pci-host-bcm5301x.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/pci/host/pci-host-bcm5301x.c b/drivers/pci/host/pci-host-bcm5301x.c +index d47405c..1a10622 100644 +--- a/drivers/pci/host/pci-host-bcm5301x.c ++++ b/drivers/pci/host/pci-host-bcm5301x.c +@@ -145,6 +145,7 @@ static void bcma_pcie2_fixup_class(struct pci_dev *dev) + 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 [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
