aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch')
-rw-r--r--target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch78
1 files changed, 0 insertions, 78 deletions
diff --git a/target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch b/target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch
deleted file mode 100644
index 31641aeff2..0000000000
--- a/target/linux/bcm63xx/patches-5.10/366-MIPS-BCM63XX-fallback-sprom-override-devid.patch
+++ /dev/null
@@ -1,78 +0,0 @@
---- a/arch/mips/bcm63xx/sprom.c
-+++ b/arch/mips/bcm63xx/sprom.c
-@@ -384,6 +384,7 @@ static __initconst u16 bcm4331_sprom[] =
- struct fallback_sprom_match {
- u8 pci_bus;
- u8 pci_dev;
-+ int override_devid;
- struct ssb_sprom sprom;
- };
-
-@@ -399,6 +400,8 @@ int bcm63xx_get_fallback_ssb_sprom(struc
- fallback_sprom.pci_bus, fallback_sprom.pci_dev,
- bus->host_pci->bus->number,
- PCI_SLOT(bus->host_pci->devfn));
-+ if (fallback_sprom.override_devid)
-+ bus->host_pci->device = fallback_sprom.sprom.dev_id;
- memcpy(out, &fallback_sprom.sprom, sizeof(struct ssb_sprom));
- return 0;
- } else {
-@@ -418,6 +421,8 @@ int bcm63xx_get_fallback_bcma_sprom(stru
- fallback_sprom.pci_bus, fallback_sprom.pci_dev,
- bus->host_pci->bus->number,
- PCI_SLOT(bus->host_pci->devfn));
-+ if (fallback_sprom.override_devid)
-+ bus->host_pci->device = fallback_sprom.sprom.dev_id;
- memcpy(out, &fallback_sprom.sprom, sizeof(struct ssb_sprom));
- return 0;
- } else {
-@@ -965,6 +970,37 @@ static int sprom_extract(struct ssb_spro
- return 0;
- }
-
-+int sprom_override_devid(struct fallback_sprom_data *data,
-+ struct ssb_sprom *out, const u16 *in)
-+{
-+ switch (data->type) {
-+#if defined(CONFIG_SSB_PCIHOST)
-+ case SPROM_BCM4306:
-+ case SPROM_BCM4318:
-+ case SPROM_BCM4321:
-+ case SPROM_BCM4322:
-+ case SPROM_BCM43222:
-+ SPEX(dev_id, SSB_SPROM1_PID, 0xFFFF, 0);
-+ return !!out->dev_id;
-+#endif /* CONFIG_SSB_PCIHOST */
-+#if defined(CONFIG_BCMA_HOST_PCI)
-+ case SPROM_BCM4313:
-+ case SPROM_BCM43131:
-+ case SPROM_BCM43217:
-+ case SPROM_BCM43225:
-+ case SPROM_BCM43227:
-+ case SPROM_BCM43228:
-+ case SPROM_BCM4331:
-+ SPEX(dev_id, 0x0060, 0xFFFF, 0);
-+ return !!out->dev_id;
-+#endif /* CONFIG_BCMA_HOST_PCI */
-+ case SPROM_DEFAULT:
-+ return 0;
-+ }
-+
-+ return 0;
-+}
-+
- void sprom_apply_fixups(u16 *sprom, struct sprom_fixup *fixups, int n)
- {
- unsigned int i;
-@@ -1056,6 +1092,11 @@ int __init bcm63xx_register_fallback_spr
- data->num_board_fixups);
-
- sprom_extract(&fallback_sprom.sprom, template_sprom, size);
-+
-+ fallback_sprom.override_devid =
-+ sprom_override_devid(data, &fallback_sprom.sprom, template_sprom);
-+ } else {
-+ fallback_sprom.override_devid = 0;
- }
-
- memcpy(fallback_sprom.sprom.il0mac, data->mac_addr, ETH_ALEN);