diff options
Diffstat (limited to 'target/linux/brcm47xx/patches-2.6.39/240-ssb_no_sprom_on_pci.patch')
-rw-r--r-- | target/linux/brcm47xx/patches-2.6.39/240-ssb_no_sprom_on_pci.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.39/240-ssb_no_sprom_on_pci.patch b/target/linux/brcm47xx/patches-2.6.39/240-ssb_no_sprom_on_pci.patch new file mode 100644 index 0000000000..52c8fe95f3 --- /dev/null +++ b/target/linux/brcm47xx/patches-2.6.39/240-ssb_no_sprom_on_pci.patch @@ -0,0 +1,28 @@ +--- a/drivers/ssb/driver_pcicore.c ++++ b/drivers/ssb/driver_pcicore.c +@@ -412,16 +412,6 @@ static int __devinit pcicore_is_in_hostm + * Workarounds. + **************************************************/ + +-static void __devinit ssb_pcicore_fix_sprom_core_index(struct ssb_pcicore *pc) +-{ +- u16 tmp = pcicore_read16(pc, SSB_PCICORE_SPROM(0)); +- if (((tmp & 0xF000) >> 12) != pc->dev->core_index) { +- tmp &= ~0xF000; +- tmp |= (pc->dev->core_index << 12); +- pcicore_write16(pc, SSB_PCICORE_SPROM(0), tmp); +- } +-} +- + static u8 ssb_pcicore_polarity_workaround(struct ssb_pcicore *pc) + { + return (ssb_pcie_read(pc, 0x204) & 0x10) ? 0xC0 : 0x80; +@@ -529,8 +519,6 @@ void __devinit ssb_pcicore_init(struct s + if (!ssb_device_is_enabled(dev)) + ssb_device_enable(dev, 0); + +- ssb_pcicore_fix_sprom_core_index(pc); +- + #ifdef CONFIG_SSB_PCICORE_HOSTMODE + pc->hostmode = pcicore_is_in_hostmode(pc); + if (pc->hostmode) |