[brcm47xx] refresh 2.6.23 patches
authorGabor Juhos <juhosg@openwrt.org>
Thu, 14 Aug 2008 18:05:37 +0000 (18:05 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Thu, 14 Aug 2008 18:05:37 +0000 (18:05 +0000)
SVN-Revision: 12311

28 files changed:
target/linux/brcm47xx/patches-2.6.23/001-ssb-fix-gpio-api.patch
target/linux/brcm47xx/patches-2.6.23/100-board_support.patch
target/linux/brcm47xx/patches-2.6.23/110-flash_map.patch
target/linux/brcm47xx/patches-2.6.23/120-b44_ssb_support.patch
target/linux/brcm47xx/patches-2.6.23/121-fix_b44_phyaddr.patch
target/linux/brcm47xx/patches-2.6.23/130-remove_scache.patch
target/linux/brcm47xx/patches-2.6.23/150-cpu_fixes.patch
target/linux/brcm47xx/patches-2.6.23/160-kmap_coherent.patch
target/linux/brcm47xx/patches-2.6.23/170-cpu_wait.patch
target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch
target/linux/brcm47xx/patches-2.6.23/230-ohci-ssb.patch
target/linux/brcm47xx/patches-2.6.23/240-ohci-ssb-pm.patch
target/linux/brcm47xx/patches-2.6.23/250-ohci-ssb-usb2.patch
target/linux/brcm47xx/patches-2.6.23/260-ohci-set-dma-mask.patch
target/linux/brcm47xx/patches-2.6.23/300-fork_cacheflush.patch
target/linux/brcm47xx/patches-2.6.23/310-no_highpage.patch
target/linux/brcm47xx/patches-2.6.23/410-aec62xx_pci_enable.patch
target/linux/brcm47xx/patches-2.6.23/500-lzma_initramfs.patch
target/linux/brcm47xx/patches-2.6.23/600-ssb-fix-pcidevices.patch
target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch
target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch
target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch
target/linux/brcm47xx/patches-2.6.23/620-ssb-modinit-fix.patch
target/linux/brcm47xx/patches-2.6.23/621-ssb-common-gpio-api.patch
target/linux/brcm47xx/patches-2.6.23/622-ssb-cardbus-fixes.patch
target/linux/brcm47xx/patches-2.6.23/680-ssb-support-8bit-writes.patch
target/linux/brcm47xx/patches-2.6.23/690-mips-allow-pciregister-after-boot.patch
target/linux/brcm47xx/patches-2.6.23/700-ssb-gigabit-ethernet-driver.patch

index 93a29c09bc77375003f263c1bae79703661c59fa..f2d0c03911dc272bab200eeb1bf187fdaad5293d 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_chipcommon.c
-+++ linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-@@ -39,12 +39,14 @@ static inline void chipco_write32(struct
+--- a/drivers/ssb/driver_chipcommon.c
++++ b/drivers/ssb/driver_chipcommon.c
+@@ -39,12 +39,14 @@
        ssb_write32(cc->dev, offset, value);
  }
  
        ssb_write32(cc->dev, offset, value);
  }
  
@@ -19,7 +17,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
  }
  
  void ssb_chipco_set_clockmode(struct ssb_chipcommon *cc,
  }
  
  void ssb_chipco_set_clockmode(struct ssb_chipcommon *cc,
-@@ -355,16 +357,37 @@ u32 ssb_chipco_gpio_in(struct ssb_chipco
+@@ -355,16 +357,37 @@
  {
        return chipco_read32(cc, SSB_CHIPCO_GPIOIN) & mask;
  }
  {
        return chipco_read32(cc, SSB_CHIPCO_GPIOIN) & mask;
  }
@@ -61,11 +59,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
  
  #ifdef CONFIG_SSB_SERIAL
  int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
  
  #ifdef CONFIG_SSB_SERIAL
  int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
-Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_extif.c
-+++ linux-2.6.23.17/drivers/ssb/driver_extif.c
-@@ -27,12 +27,14 @@ static inline void extif_write32(struct 
+--- a/drivers/ssb/driver_extif.c
++++ b/drivers/ssb/driver_extif.c
+@@ -27,12 +27,14 @@
        ssb_write32(extif->dev, offset, value);
  }
  
        ssb_write32(extif->dev, offset, value);
  }
  
@@ -82,7 +78,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
  }
  
  #ifdef CONFIG_SSB_SERIAL
  }
  
  #ifdef CONFIG_SSB_SERIAL
-@@ -114,16 +116,30 @@ u32 ssb_extif_gpio_in(struct ssb_extif *
+@@ -114,16 +116,30 @@
  {
        return extif_read32(extif, SSB_EXTIF_GPIO_IN) & mask;
  }
  {
        return extif_read32(extif, SSB_EXTIF_GPIO_IN) & mask;
  }
@@ -115,11 +111,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
 +      return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
 +}
 +EXPORT_SYMBOL(ssb_extif_gpio_intmask);
 +      return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
 +}
 +EXPORT_SYMBOL(ssb_extif_gpio_intmask);
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_chipcommon.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
-@@ -382,11 +382,13 @@ extern void ssb_chipco_set_clockmode(str
+--- a/include/linux/ssb/ssb_driver_chipcommon.h
++++ b/include/linux/ssb/ssb_driver_chipcommon.h
+@@ -382,11 +382,13 @@
  extern void ssb_chipco_watchdog_timer_set(struct ssb_chipcommon *cc,
                                          u32 ticks);
  
  extern void ssb_chipco_watchdog_timer_set(struct ssb_chipcommon *cc,
                                          u32 ticks);
  
@@ -137,11 +131,9 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
  
  #ifdef CONFIG_SSB_SERIAL
  extern int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
  
  #ifdef CONFIG_SSB_SERIAL
  extern int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_extif.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
-@@ -171,11 +171,12 @@ extern void ssb_extif_get_clockcontrol(s
+--- a/include/linux/ssb/ssb_driver_extif.h
++++ b/include/linux/ssb/ssb_driver_extif.h
+@@ -171,11 +171,12 @@
  extern void ssb_extif_timing_init(struct ssb_extif *extif,
                                  unsigned long ns);
  
  extern void ssb_extif_timing_init(struct ssb_extif *extif,
                                  unsigned long ns);
  
index f55c3c57fe8fc7fda67646c11327bd6fc3daa886..4ca569748753fa22a0bdeb20e4162206bf43fad0 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/Kconfig
-+++ linux-2.6.23.17/arch/mips/Kconfig
-@@ -4,6 +4,10 @@ config MIPS
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -4,6 +4,10 @@
        # Horrible source of confusion.  Die, die, die ...
        select EMBEDDED
  
        # Horrible source of confusion.  Die, die, die ...
        select EMBEDDED
  
@@ -13,7 +11,7 @@ Index: linux-2.6.23.17/arch/mips/Kconfig
  mainmenu "Linux/MIPS Kernel Configuration"
  
  menu "Machine selection"
  mainmenu "Linux/MIPS Kernel Configuration"
  
  menu "Machine selection"
-@@ -44,6 +48,23 @@ config BASLER_EXCITE_PROTOTYPE
+@@ -44,6 +48,23 @@
          note that a kernel built with this option selected will not be
          able to run on normal units.
  
          note that a kernel built with this option selected will not be
          able to run on normal units.
  
@@ -37,11 +35,9 @@ Index: linux-2.6.23.17/arch/mips/Kconfig
  config MIPS_COBALT
        bool "Cobalt Server"
        select DMA_NONCOHERENT
  config MIPS_COBALT
        bool "Cobalt Server"
        select DMA_NONCOHERENT
-Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/cpu-probe.c
-+++ linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-@@ -793,6 +793,28 @@ static inline void cpu_probe_philips(str
+--- a/arch/mips/kernel/cpu-probe.c
++++ b/arch/mips/kernel/cpu-probe.c
+@@ -793,6 +793,28 @@
  }
  
  
  }
  
  
@@ -70,7 +66,7 @@ Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
  __init void cpu_probe(void)
  {
        struct cpuinfo_mips *c = &current_cpu_data;
  __init void cpu_probe(void)
  {
        struct cpuinfo_mips *c = &current_cpu_data;
-@@ -815,6 +837,9 @@ __init void cpu_probe(void)
+@@ -815,6 +837,9 @@
        case PRID_COMP_SIBYTE:
                cpu_probe_sibyte(c);
                break;
        case PRID_COMP_SIBYTE:
                cpu_probe_sibyte(c);
                break;
@@ -80,11 +76,9 @@ Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
        case PRID_COMP_SANDCRAFT:
                cpu_probe_sandcraft(c);
                break;
        case PRID_COMP_SANDCRAFT:
                cpu_probe_sandcraft(c);
                break;
-Index: linux-2.6.23.17/arch/mips/kernel/proc.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/proc.c
-+++ linux-2.6.23.17/arch/mips/kernel/proc.c
-@@ -82,6 +82,8 @@ static const char *cpu_name[] = {
+--- a/arch/mips/kernel/proc.c
++++ b/arch/mips/kernel/proc.c
+@@ -82,6 +82,8 @@
        [CPU_VR4181]    = "NEC VR4181",
        [CPU_VR4181A]   = "NEC VR4181A",
        [CPU_SR71000]   = "Sandcraft SR71000",
        [CPU_VR4181]    = "NEC VR4181",
        [CPU_VR4181A]   = "NEC VR4181A",
        [CPU_SR71000]   = "Sandcraft SR71000",
@@ -93,11 +87,9 @@ Index: linux-2.6.23.17/arch/mips/kernel/proc.c
        [CPU_PR4450]    = "Philips PR4450",
        [CPU_LOONGSON2] = "ICT Loongson-2",
  };
        [CPU_PR4450]    = "Philips PR4450",
        [CPU_LOONGSON2] = "ICT Loongson-2",
  };
-Index: linux-2.6.23.17/arch/mips/Makefile
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/Makefile
-+++ linux-2.6.23.17/arch/mips/Makefile
-@@ -533,6 +533,18 @@ libs-$(CONFIG_SIBYTE_BIGSUR)      += arch/mip
+--- a/arch/mips/Makefile
++++ b/arch/mips/Makefile
+@@ -533,6 +533,18 @@
  load-$(CONFIG_SIBYTE_BIGSUR)  := 0xffffffff80100000
  
  #
  load-$(CONFIG_SIBYTE_BIGSUR)  := 0xffffffff80100000
  
  #
@@ -116,11 +108,9 @@ Index: linux-2.6.23.17/arch/mips/Makefile
  # SNI RM
  #
  core-$(CONFIG_SNI_RM)         += arch/mips/sni/
  # SNI RM
  #
  core-$(CONFIG_SNI_RM)         += arch/mips/sni/
-Index: linux-2.6.23.17/arch/mips/mm/tlbex.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/tlbex.c
-+++ linux-2.6.23.17/arch/mips/mm/tlbex.c
-@@ -895,6 +895,8 @@ static __init void build_tlb_write_entry
+--- a/arch/mips/mm/tlbex.c
++++ b/arch/mips/mm/tlbex.c
+@@ -895,6 +895,8 @@
        case CPU_AU1550:
        case CPU_AU1200:
        case CPU_PR4450:
        case CPU_AU1550:
        case CPU_AU1200:
        case CPU_PR4450:
@@ -129,11 +119,9 @@ Index: linux-2.6.23.17/arch/mips/mm/tlbex.c
                i_nop(p);
                tlbw(p);
                break;
                i_nop(p);
                tlbw(p);
                break;
-Index: linux-2.6.23.17/drivers/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/Kconfig
-+++ linux-2.6.23.17/drivers/Kconfig
-@@ -60,6 +60,8 @@ source "drivers/power/Kconfig"
+--- a/drivers/Kconfig
++++ b/drivers/Kconfig
+@@ -60,6 +60,8 @@
  
  source "drivers/hwmon/Kconfig"
  
  
  source "drivers/hwmon/Kconfig"
  
@@ -142,10 +130,8 @@ Index: linux-2.6.23.17/drivers/Kconfig
  source "drivers/mfd/Kconfig"
  
  source "drivers/media/Kconfig"
  source "drivers/mfd/Kconfig"
  
  source "drivers/media/Kconfig"
-Index: linux-2.6.23.17/include/asm-mips/bootinfo.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/bootinfo.h
-+++ linux-2.6.23.17/include/asm-mips/bootinfo.h
+--- a/include/asm-mips/bootinfo.h
++++ b/include/asm-mips/bootinfo.h
 @@ -208,6 +208,12 @@
  #define MACH_GROUP_WINDRIVER   28     /* Windriver boards */
  #define MACH_WRPPMC             1
 @@ -208,6 +208,12 @@
  #define MACH_GROUP_WINDRIVER   28     /* Windriver boards */
  #define MACH_WRPPMC             1
@@ -159,10 +145,8 @@ Index: linux-2.6.23.17/include/asm-mips/bootinfo.h
  #define CL_SIZE                       COMMAND_LINE_SIZE
  
  const char *get_system_type(void);
  #define CL_SIZE                       COMMAND_LINE_SIZE
  
  const char *get_system_type(void);
-Index: linux-2.6.23.17/include/asm-mips/cpu.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/cpu.h
-+++ linux-2.6.23.17/include/asm-mips/cpu.h
+--- a/include/asm-mips/cpu.h
++++ b/include/asm-mips/cpu.h
 @@ -106,6 +106,13 @@
  #define PRID_IMP_SR71000        0x0400
  
 @@ -106,6 +106,13 @@
  #define PRID_IMP_SR71000        0x0400
  
@@ -189,19 +173,16 @@ Index: linux-2.6.23.17/include/asm-mips/cpu.h
  
  /*
   * ISA Level encodings
  
  /*
   * ISA Level encodings
-Index: linux-2.6.23.17/drivers/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/Makefile
-+++ linux-2.6.23.17/drivers/Makefile
-@@ -90,3 +90,4 @@ obj-$(CONFIG_HID)            += hid/
+--- a/drivers/Makefile
++++ b/drivers/Makefile
+@@ -89,3 +89,5 @@
+ obj-$(CONFIG_HID)             += hid/
  obj-$(CONFIG_PPC_PS3)         += ps3/
  obj-$(CONFIG_OF)              += of/
  obj-$(CONFIG_PPC_PS3)         += ps3/
  obj-$(CONFIG_OF)              += of/
- obj-$(CONFIG_GPIO_DEVICE)     += gpio/
 +obj-$(CONFIG_SSB)             += ssb/
 +obj-$(CONFIG_SSB)             += ssb/
-Index: linux-2.6.23.17/include/linux/pci_ids.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/pci_ids.h
-+++ linux-2.6.23.17/include/linux/pci_ids.h
++
+--- a/include/linux/pci_ids.h
++++ b/include/linux/pci_ids.h
 @@ -1980,6 +1980,7 @@
  #define PCI_DEVICE_ID_TIGON3_5906M    0x1713
  #define PCI_DEVICE_ID_BCM4401         0x4401
 @@ -1980,6 +1980,7 @@
  #define PCI_DEVICE_ID_TIGON3_5906M    0x1713
  #define PCI_DEVICE_ID_BCM4401         0x4401
index 47769aeb459fb97a99367dc707b43c901b2688bf..3410d61f7687b50c2b3646296a48138262f9044b 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/mtd/maps/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/mtd/maps/Kconfig
-+++ linux-2.6.23.17/drivers/mtd/maps/Kconfig
-@@ -352,6 +352,12 @@ config MTD_CFI_FLAGADM
+--- a/drivers/mtd/maps/Kconfig
++++ b/drivers/mtd/maps/Kconfig
+@@ -352,6 +352,12 @@
          Mapping for the Flaga digital module. If you don't have one, ignore
          this setting.
  
          Mapping for the Flaga digital module. If you don't have one, ignore
          this setting.
  
@@ -15,11 +13,9 @@ Index: linux-2.6.23.17/drivers/mtd/maps/Kconfig
  config MTD_WALNUT
        tristate "Flash device mapped on IBM 405GP Walnut"
        depends on MTD_JEDECPROBE && WALNUT
  config MTD_WALNUT
        tristate "Flash device mapped on IBM 405GP Walnut"
        depends on MTD_JEDECPROBE && WALNUT
-Index: linux-2.6.23.17/drivers/mtd/maps/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/mtd/maps/Makefile
-+++ linux-2.6.23.17/drivers/mtd/maps/Makefile
-@@ -33,6 +33,7 @@ obj-$(CONFIG_MTD_PNC2000)    += pnc2000.o
+--- a/drivers/mtd/maps/Makefile
++++ b/drivers/mtd/maps/Makefile
+@@ -33,6 +33,7 @@
  obj-$(CONFIG_MTD_PCMCIA)      += pcmciamtd.o
  obj-$(CONFIG_MTD_RPXLITE)     += rpxlite.o
  obj-$(CONFIG_MTD_TQM8XXL)     += tqm8xxl.o
  obj-$(CONFIG_MTD_PCMCIA)      += pcmciamtd.o
  obj-$(CONFIG_MTD_RPXLITE)     += rpxlite.o
  obj-$(CONFIG_MTD_TQM8XXL)     += tqm8xxl.o
index 7921f91e843069e7c15a1842876739f581fa563e..4f33615a513c7f5ee39fd1400a389fc70ba88015 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-2.6.23.17/drivers/net/b44.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/b44.c
-+++ linux-2.6.23.17/drivers/net/b44.c
+--- a/drivers/net/b44.c
++++ b/drivers/net/b44.c
 @@ -1,7 +1,9 @@
 -/* b44.c: Broadcom 4400 device driver.
 +/* b44.c: Broadcom 4400/47xx device driver.
 @@ -1,7 +1,9 @@
 -/* b44.c: Broadcom 4400 device driver.
 +/* b44.c: Broadcom 4400/47xx device driver.
@@ -39,7 +37,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  MODULE_LICENSE("GPL");
  MODULE_VERSION(DRV_MODULE_VERSION);
  
  MODULE_LICENSE("GPL");
  MODULE_VERSION(DRV_MODULE_VERSION);
  
-@@ -96,18 +100,11 @@ static int b44_debug = -1;        /* -1 == use 
+@@ -96,18 +100,11 @@
  module_param(b44_debug, int, 0);
  MODULE_PARM_DESC(b44_debug, "B44 bitmapped debugging message enable value");
  
  module_param(b44_debug, int, 0);
  MODULE_PARM_DESC(b44_debug, "B44 bitmapped debugging message enable value");
  
@@ -61,7 +59,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  static void b44_halt(struct b44 *);
  static void b44_init_rings(struct b44 *);
  
  static void b44_halt(struct b44 *);
  static void b44_init_rings(struct b44 *);
  
-@@ -119,6 +116,7 @@ static void b44_init_hw(struct b44 *, in
+@@ -119,6 +116,7 @@
  
  static int dma_desc_align_mask;
  static int dma_desc_sync_size;
  
  static int dma_desc_align_mask;
  static int dma_desc_sync_size;
@@ -69,7 +67,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
  static const char b44_gstrings[][ETH_GSTRING_LEN] = {
  #define _B44(x...)    # x,
  
  static const char b44_gstrings[][ETH_GSTRING_LEN] = {
  #define _B44(x...)    # x,
-@@ -126,35 +124,24 @@ B44_STAT_REG_DECLARE
+@@ -126,35 +124,24 @@
  #undef _B44
  };
  
  #undef _B44
  };
  
@@ -123,7 +121,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  }
  
  static int b44_wait_bit(struct b44 *bp, unsigned long reg,
  }
  
  static int b44_wait_bit(struct b44 *bp, unsigned long reg,
-@@ -182,117 +169,29 @@ static int b44_wait_bit(struct b44 *bp, 
+@@ -182,117 +169,29 @@
        return 0;
  }
  
        return 0;
  }
  
@@ -254,7 +252,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  {
        u32 val;
  
  {
        u32 val;
  
-@@ -328,14 +227,14 @@ static void b44_enable_ints(struct b44 *
+@@ -328,14 +227,14 @@
        bw32(bp, B44_IMASK, bp->imask);
  }
  
        bw32(bp, B44_IMASK, bp->imask);
  }
  
@@ -271,7 +269,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                             (reg << MDIO_DATA_RA_SHIFT) |
                             (MDIO_TA_VALID << MDIO_DATA_TA_SHIFT)));
        err = b44_wait_bit(bp, B44_EMAC_ISTAT, EMAC_INT_MII, 100, 0);
                             (reg << MDIO_DATA_RA_SHIFT) |
                             (MDIO_TA_VALID << MDIO_DATA_TA_SHIFT)));
        err = b44_wait_bit(bp, B44_EMAC_ISTAT, EMAC_INT_MII, 100, 0);
-@@ -344,18 +243,34 @@ static int b44_readphy(struct b44 *bp, i
+@@ -344,18 +243,34 @@
        return err;
  }
  
        return err;
  }
  
@@ -308,7 +306,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  /* miilib interface */
  /* FIXME FIXME: phy_id is ignored, bp->phy_addr use is unconditional
   * due to code existing before miilib use was added to this driver.
  /* miilib interface */
  /* FIXME FIXME: phy_id is ignored, bp->phy_addr use is unconditional
   * due to code existing before miilib use was added to this driver.
-@@ -384,6 +299,8 @@ static int b44_phy_reset(struct b44 *bp)
+@@ -384,6 +299,8 @@
        u32 val;
        int err;
  
        u32 val;
        int err;
  
@@ -317,7 +315,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        err = b44_writephy(bp, MII_BMCR, BMCR_RESET);
        if (err)
                return err;
        err = b44_writephy(bp, MII_BMCR, BMCR_RESET);
        if (err)
                return err;
-@@ -442,11 +359,27 @@ static void b44_set_flow_ctrl(struct b44
+@@ -442,11 +359,27 @@
        __b44_set_flow_ctrl(bp, pause_enab);
  }
  
        __b44_set_flow_ctrl(bp, pause_enab);
  }
  
@@ -345,7 +343,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        if ((err = b44_readphy(bp, B44_MII_ALEDCTRL, &val)) != 0)
                goto out;
        if ((err = b44_writephy(bp, B44_MII_ALEDCTRL,
        if ((err = b44_readphy(bp, B44_MII_ALEDCTRL, &val)) != 0)
                goto out;
        if ((err = b44_writephy(bp, B44_MII_ALEDCTRL,
-@@ -542,6 +475,19 @@ static void b44_check_phy(struct b44 *bp
+@@ -542,6 +475,19 @@
  {
        u32 bmsr, aux;
  
  {
        u32 bmsr, aux;
  
@@ -365,7 +363,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        if (!b44_readphy(bp, MII_BMSR, &bmsr) &&
            !b44_readphy(bp, B44_MII_AUXCTRL, &aux) &&
            (bmsr != 0xffff)) {
        if (!b44_readphy(bp, MII_BMSR, &bmsr) &&
            !b44_readphy(bp, B44_MII_AUXCTRL, &aux) &&
            (bmsr != 0xffff)) {
-@@ -617,10 +563,10 @@ static void b44_tx(struct b44 *bp)
+@@ -617,10 +563,10 @@
  
                BUG_ON(skb == NULL);
  
  
                BUG_ON(skb == NULL);
  
@@ -378,7 +376,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                rp->skb = NULL;
                dev_kfree_skb_irq(skb);
        }
                rp->skb = NULL;
                dev_kfree_skb_irq(skb);
        }
-@@ -657,9 +603,9 @@ static int b44_alloc_rx_skb(struct b44 *
+@@ -657,9 +603,9 @@
        if (skb == NULL)
                return -ENOMEM;
  
        if (skb == NULL)
                return -ENOMEM;
  
@@ -390,7 +388,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        /* Hardware bug work-around, the chip is unable to do PCI DMA
           to/from anything above 1GB :-( */
  
        /* Hardware bug work-around, the chip is unable to do PCI DMA
           to/from anything above 1GB :-( */
-@@ -667,18 +613,18 @@ static int b44_alloc_rx_skb(struct b44 *
+@@ -667,18 +613,18 @@
                mapping + RX_PKT_BUF_SZ > DMA_30BIT_MASK) {
                /* Sigh... */
                if (!dma_mapping_error(mapping))
                mapping + RX_PKT_BUF_SZ > DMA_30BIT_MASK) {
                /* Sigh... */
                if (!dma_mapping_error(mapping))
@@ -413,7 +411,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                        dev_kfree_skb_any(skb);
                        return -ENOMEM;
                }
                        dev_kfree_skb_any(skb);
                        return -ENOMEM;
                }
-@@ -705,9 +651,9 @@ static int b44_alloc_rx_skb(struct b44 *
+@@ -705,9 +651,9 @@
        dp->addr = cpu_to_le32((u32) mapping + RX_PKT_OFFSET + bp->dma_offset);
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
        dp->addr = cpu_to_le32((u32) mapping + RX_PKT_OFFSET + bp->dma_offset);
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
@@ -426,7 +424,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        return RX_PKT_BUF_SZ;
  }
  
        return RX_PKT_BUF_SZ;
  }
-@@ -734,9 +680,9 @@ static void b44_recycle_rx(struct b44 *b
+@@ -734,9 +680,9 @@
                           pci_unmap_addr(src_map, mapping));
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
                           pci_unmap_addr(src_map, mapping));
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
@@ -439,7 +437,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        ctrl = src_desc->ctrl;
        if (dest_idx == (B44_RX_RING_SIZE - 1))
  
        ctrl = src_desc->ctrl;
        if (dest_idx == (B44_RX_RING_SIZE - 1))
-@@ -750,13 +696,13 @@ static void b44_recycle_rx(struct b44 *b
+@@ -750,13 +696,13 @@
        src_map->skb = NULL;
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
        src_map->skb = NULL;
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
@@ -458,7 +456,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  }
  
  static int b44_rx(struct b44 *bp, int budget)
  }
  
  static int b44_rx(struct b44 *bp, int budget)
-@@ -776,9 +722,9 @@ static int b44_rx(struct b44 *bp, int bu
+@@ -776,9 +722,9 @@
                struct rx_header *rh;
                u16 len;
  
                struct rx_header *rh;
                u16 len;
  
@@ -470,7 +468,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                rh = (struct rx_header *) skb->data;
                len = le16_to_cpu(rh->len);
                if ((len > (RX_PKT_BUF_SZ - RX_PKT_OFFSET)) ||
                rh = (struct rx_header *) skb->data;
                len = le16_to_cpu(rh->len);
                if ((len > (RX_PKT_BUF_SZ - RX_PKT_OFFSET)) ||
-@@ -810,8 +756,8 @@ static int b44_rx(struct b44 *bp, int bu
+@@ -810,8 +756,8 @@
                        skb_size = b44_alloc_rx_skb(bp, cons, bp->rx_prod);
                        if (skb_size < 0)
                                goto drop_it;
                        skb_size = b44_alloc_rx_skb(bp, cons, bp->rx_prod);
                        if (skb_size < 0)
                                goto drop_it;
@@ -481,7 +479,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                        /* Leave out rx_header */
                        skb_put(skb, len + RX_PKT_OFFSET);
                        skb_pull(skb, RX_PKT_OFFSET);
                        /* Leave out rx_header */
                        skb_put(skb, len + RX_PKT_OFFSET);
                        skb_pull(skb, RX_PKT_OFFSET);
-@@ -982,24 +928,24 @@ static int b44_start_xmit(struct sk_buff
+@@ -982,24 +928,24 @@
                goto err_out;
        }
  
                goto err_out;
        }
  
@@ -512,7 +510,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                        dev_kfree_skb_any(bounce_skb);
                        goto err_out;
                }
                        dev_kfree_skb_any(bounce_skb);
                        goto err_out;
                }
-@@ -1022,9 +968,9 @@ static int b44_start_xmit(struct sk_buff
+@@ -1022,9 +968,9 @@
        bp->tx_ring[entry].addr = cpu_to_le32((u32) mapping+bp->dma_offset);
  
        if (bp->flags & B44_FLAG_TX_RING_HACK)
        bp->tx_ring[entry].addr = cpu_to_le32((u32) mapping+bp->dma_offset);
  
        if (bp->flags & B44_FLAG_TX_RING_HACK)
@@ -525,7 +523,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        entry = NEXT_TX(entry);
  
  
        entry = NEXT_TX(entry);
  
-@@ -1097,10 +1043,10 @@ static void b44_free_rings(struct b44 *b
+@@ -1097,10 +1043,10 @@
  
                if (rp->skb == NULL)
                        continue;
  
                if (rp->skb == NULL)
                        continue;
@@ -538,7 +536,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                dev_kfree_skb_any(rp->skb);
                rp->skb = NULL;
        }
                dev_kfree_skb_any(rp->skb);
                rp->skb = NULL;
        }
-@@ -1111,10 +1057,10 @@ static void b44_free_rings(struct b44 *b
+@@ -1111,10 +1057,10 @@
  
                if (rp->skb == NULL)
                        continue;
  
                if (rp->skb == NULL)
                        continue;
@@ -551,7 +549,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                dev_kfree_skb_any(rp->skb);
                rp->skb = NULL;
        }
                dev_kfree_skb_any(rp->skb);
                rp->skb = NULL;
        }
-@@ -1136,14 +1082,14 @@ static void b44_init_rings(struct b44 *b
+@@ -1136,14 +1082,14 @@
        memset(bp->tx_ring, 0, B44_TX_RING_BYTES);
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
        memset(bp->tx_ring, 0, B44_TX_RING_BYTES);
  
        if (bp->flags & B44_FLAG_RX_RING_HACK)
@@ -572,7 +570,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        for (i = 0; i < bp->rx_pending; i++) {
                if (b44_alloc_rx_skb(bp, -1, i) < 0)
  
        for (i = 0; i < bp->rx_pending; i++) {
                if (b44_alloc_rx_skb(bp, -1, i) < 0)
-@@ -1163,24 +1109,24 @@ static void b44_free_consistent(struct b
+@@ -1163,24 +1109,24 @@
        bp->tx_buffers = NULL;
        if (bp->rx_ring) {
                if (bp->flags & B44_FLAG_RX_RING_HACK) {
        bp->tx_buffers = NULL;
        if (bp->rx_ring) {
                if (bp->flags & B44_FLAG_RX_RING_HACK) {
@@ -605,7 +603,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                                            bp->tx_ring, bp->tx_ring_dma);
                bp->tx_ring = NULL;
                bp->flags &= ~B44_FLAG_TX_RING_HACK;
                                            bp->tx_ring, bp->tx_ring_dma);
                bp->tx_ring = NULL;
                bp->flags &= ~B44_FLAG_TX_RING_HACK;
-@@ -1206,7 +1152,7 @@ static int b44_alloc_consistent(struct b
+@@ -1206,7 +1152,7 @@
                goto out_err;
  
        size = DMA_TABLE_BYTES;
                goto out_err;
  
        size = DMA_TABLE_BYTES;
@@ -614,7 +612,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        if (!bp->rx_ring) {
                /* Allocation may have failed due to pci_alloc_consistent
                   insisting on use of GFP_DMA, which is more restrictive
        if (!bp->rx_ring) {
                /* Allocation may have failed due to pci_alloc_consistent
                   insisting on use of GFP_DMA, which is more restrictive
-@@ -1218,9 +1164,9 @@ static int b44_alloc_consistent(struct b
+@@ -1218,9 +1164,9 @@
                if (!rx_ring)
                        goto out_err;
  
                if (!rx_ring)
                        goto out_err;
  
@@ -627,7 +625,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
                if (dma_mapping_error(rx_ring_dma) ||
                        rx_ring_dma + size > DMA_30BIT_MASK) {
  
                if (dma_mapping_error(rx_ring_dma) ||
                        rx_ring_dma + size > DMA_30BIT_MASK) {
-@@ -1233,9 +1179,9 @@ static int b44_alloc_consistent(struct b
+@@ -1233,9 +1179,9 @@
                bp->flags |= B44_FLAG_RX_RING_HACK;
        }
  
                bp->flags |= B44_FLAG_RX_RING_HACK;
        }
  
@@ -639,7 +637,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                   insisting on use of GFP_DMA, which is more restrictive
                   than necessary...  */
                struct dma_desc *tx_ring;
                   insisting on use of GFP_DMA, which is more restrictive
                   than necessary...  */
                struct dma_desc *tx_ring;
-@@ -1245,9 +1191,9 @@ static int b44_alloc_consistent(struct b
+@@ -1245,9 +1191,9 @@
                if (!tx_ring)
                        goto out_err;
  
                if (!tx_ring)
                        goto out_err;
  
@@ -652,7 +650,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
                if (dma_mapping_error(tx_ring_dma) ||
                        tx_ring_dma + size > DMA_30BIT_MASK) {
  
                if (dma_mapping_error(tx_ring_dma) ||
                        tx_ring_dma + size > DMA_30BIT_MASK) {
-@@ -1282,7 +1228,9 @@ static void b44_clear_stats(struct b44 *
+@@ -1282,7 +1228,9 @@
  /* bp->lock is held. */
  static void b44_chip_reset(struct b44 *bp)
  {
  /* bp->lock is held. */
  static void b44_chip_reset(struct b44 *bp)
  {
@@ -663,7 +661,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                bw32(bp, B44_RCV_LAZY, 0);
                bw32(bp, B44_ENET_CTRL, ENET_CTRL_DISABLE);
                b44_wait_bit(bp, B44_ENET_CTRL, ENET_CTRL_DISABLE, 200, 1);
                bw32(bp, B44_RCV_LAZY, 0);
                bw32(bp, B44_ENET_CTRL, ENET_CTRL_DISABLE);
                b44_wait_bit(bp, B44_ENET_CTRL, ENET_CTRL_DISABLE, 200, 1);
-@@ -1294,19 +1242,24 @@ static void b44_chip_reset(struct b44 *b
+@@ -1294,19 +1242,24 @@
                }
                bw32(bp, B44_DMARX_CTRL, 0);
                bp->rx_prod = bp->rx_cons = 0;
                }
                bw32(bp, B44_DMARX_CTRL, 0);
                bp->rx_prod = bp->rx_cons = 0;
@@ -696,7 +694,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        br32(bp, B44_MDIO_CTRL);
  
        if (!(br32(bp, B44_DEVCTRL) & DEVCTRL_IPP)) {
        br32(bp, B44_MDIO_CTRL);
  
        if (!(br32(bp, B44_DEVCTRL) & DEVCTRL_IPP)) {
-@@ -1349,6 +1302,7 @@ static int b44_set_mac_addr(struct net_d
+@@ -1349,6 +1302,7 @@
  {
        struct b44 *bp = netdev_priv(dev);
        struct sockaddr *addr = p;
  {
        struct b44 *bp = netdev_priv(dev);
        struct sockaddr *addr = p;
@@ -704,7 +702,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        if (netif_running(dev))
                return -EBUSY;
  
        if (netif_running(dev))
                return -EBUSY;
-@@ -1359,7 +1313,11 @@ static int b44_set_mac_addr(struct net_d
+@@ -1359,7 +1313,11 @@
        memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
  
        spin_lock_irq(&bp->lock);
        memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
  
        spin_lock_irq(&bp->lock);
@@ -717,7 +715,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        spin_unlock_irq(&bp->lock);
  
        return 0;
        spin_unlock_irq(&bp->lock);
  
        return 0;
-@@ -1445,18 +1403,6 @@ out:
+@@ -1445,18 +1403,6 @@
        return err;
  }
  
        return err;
  }
  
@@ -736,7 +734,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  #ifdef CONFIG_NET_POLL_CONTROLLER
  /*
   * Polling receive - used by netconsole and other diagnostic tools
  #ifdef CONFIG_NET_POLL_CONTROLLER
  /*
   * Polling receive - used by netconsole and other diagnostic tools
-@@ -1570,7 +1516,6 @@ static void b44_setup_pseudo_magicp(stru
+@@ -1570,7 +1516,6 @@
  static void b44_setup_wol(struct b44 *bp)
  {
        u32 val;
  static void b44_setup_wol(struct b44 *bp)
  {
        u32 val;
@@ -744,7 +742,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        bw32(bp, B44_RXCONFIG, RXCONFIG_ALLMULTI);
  
  
        bw32(bp, B44_RXCONFIG, RXCONFIG_ALLMULTI);
  
-@@ -1594,13 +1539,6 @@ static void b44_setup_wol(struct b44 *bp
+@@ -1594,13 +1539,6 @@
        } else {
                b44_setup_pseudo_magicp(bp);
        }
        } else {
                b44_setup_pseudo_magicp(bp);
        }
@@ -758,7 +756,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  }
  
  static int b44_close(struct net_device *dev)
  }
  
  static int b44_close(struct net_device *dev)
-@@ -1700,7 +1638,7 @@ static void __b44_set_rx_mode(struct net
+@@ -1700,7 +1638,7 @@
  
        val = br32(bp, B44_RXCONFIG);
        val &= ~(RXCONFIG_PROMISC | RXCONFIG_ALLMULTI);
  
        val = br32(bp, B44_RXCONFIG);
        val &= ~(RXCONFIG_PROMISC | RXCONFIG_ALLMULTI);
@@ -767,7 +765,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                val |= RXCONFIG_PROMISC;
                bw32(bp, B44_RXCONFIG, val);
        } else {
                val |= RXCONFIG_PROMISC;
                bw32(bp, B44_RXCONFIG, val);
        } else {
-@@ -1747,12 +1685,8 @@ static void b44_set_msglevel(struct net_
+@@ -1747,12 +1685,8 @@
  
  static void b44_get_drvinfo (struct net_device *dev, struct ethtool_drvinfo *info)
  {
  
  static void b44_get_drvinfo (struct net_device *dev, struct ethtool_drvinfo *info)
  {
@@ -780,7 +778,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  }
  
  static int b44_nway_reset(struct net_device *dev)
  }
  
  static int b44_nway_reset(struct net_device *dev)
-@@ -2035,6 +1969,245 @@ static const struct ethtool_ops b44_etht
+@@ -2035,6 +1969,245 @@
        .get_ethtool_stats      = b44_get_ethtool_stats,
  };
  
        .get_ethtool_stats      = b44_get_ethtool_stats,
  };
  
@@ -1026,7 +1024,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  static int b44_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
  {
        struct mii_ioctl_data *data = if_mii(ifr);
  static int b44_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
  {
        struct mii_ioctl_data *data = if_mii(ifr);
-@@ -2044,40 +2217,64 @@ static int b44_ioctl(struct net_device *
+@@ -2044,40 +2217,64 @@
        if (!netif_running(dev))
                goto out;
  
        if (!netif_running(dev))
                goto out;
  
@@ -1116,7 +1114,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){
                printk(KERN_ERR PFX "Invalid MAC address found in EEPROM\n");
  
        if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){
                printk(KERN_ERR PFX "Invalid MAC address found in EEPROM\n");
-@@ -2086,103 +2283,52 @@ static int __devinit b44_get_invariants(
+@@ -2086,103 +2283,52 @@
  
        memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
  
  
        memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
  
@@ -1229,7 +1227,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        bp->rx_pending = B44_DEF_RX_RING_PENDING;
        bp->tx_pending = B44_DEF_TX_RING_PENDING;
  
        bp->rx_pending = B44_DEF_RX_RING_PENDING;
        bp->tx_pending = B44_DEF_TX_RING_PENDING;
  
-@@ -2201,16 +2347,16 @@ static int __devinit b44_init_one(struct
+@@ -2201,16 +2347,16 @@
        dev->poll_controller = b44_poll_controller;
  #endif
        dev->change_mtu = b44_change_mtu;
        dev->poll_controller = b44_poll_controller;
  #endif
        dev->change_mtu = b44_change_mtu;
@@ -1249,7 +1247,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
        }
  
        bp->mii_if.dev = dev;
        }
  
        bp->mii_if.dev = dev;
-@@ -2229,61 +2375,52 @@ static int __devinit b44_init_one(struct
+@@ -2229,61 +2375,52 @@
  
        err = register_netdev(dev);
        if (err) {
  
        err = register_netdev(dev);
        if (err) {
@@ -1327,7 +1325,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  
        del_timer_sync(&bp->timer);
  
  
        del_timer_sync(&bp->timer);
  
-@@ -2301,33 +2438,22 @@ static int b44_suspend(struct pci_dev *p
+@@ -2301,33 +2438,22 @@
                b44_init_hw(bp, B44_PARTIAL_RESET);
                b44_setup_wol(bp);
        }
                b44_init_hw(bp, B44_PARTIAL_RESET);
                b44_setup_wol(bp);
        }
@@ -1364,7 +1362,7 @@ Index: linux-2.6.23.17/drivers/net/b44.c
                return rc;
        }
  
                return rc;
        }
  
-@@ -2346,29 +2472,31 @@ static int b44_resume(struct pci_dev *pd
+@@ -2346,29 +2472,31 @@
        return 0;
  }
  
        return 0;
  }
  
@@ -1402,10 +1400,8 @@ Index: linux-2.6.23.17/drivers/net/b44.c
  }
  
  module_init(b44_init);
  }
  
  module_init(b44_init);
-Index: linux-2.6.23.17/drivers/net/b44.h
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/b44.h
-+++ linux-2.6.23.17/drivers/net/b44.h
+--- a/drivers/net/b44.h
++++ b/drivers/net/b44.h
 @@ -129,6 +129,7 @@
  #define  RXCONFIG_FLOW                0x00000020 /* Flow Control Enable */
  #define  RXCONFIG_FLOW_ACCEPT 0x00000040 /* Accept Unicast Flow Control Frame */
 @@ -129,6 +129,7 @@
  #define  RXCONFIG_FLOW                0x00000020 /* Flow Control Enable */
  #define  RXCONFIG_FLOW_ACCEPT 0x00000040 /* Accept Unicast Flow Control Frame */
@@ -1493,7 +1489,7 @@ Index: linux-2.6.23.17/drivers/net/b44.h
  
  /* 4400 PHY registers */
  #define B44_MII_AUXCTRL               24      /* Auxiliary Control */
  
  /* 4400 PHY registers */
  #define B44_MII_AUXCTRL               24      /* Auxiliary Control */
-@@ -346,10 +281,12 @@ struct rx_header {
+@@ -346,10 +281,12 @@
  
  struct ring_info {
        struct sk_buff          *skb;
  
  struct ring_info {
        struct sk_buff          *skb;
@@ -1507,7 +1503,7 @@ Index: linux-2.6.23.17/drivers/net/b44.h
  
  #define       B44_STAT_REG_DECLARE            \
        _B44(tx_good_octets)            \
  
  #define       B44_STAT_REG_DECLARE            \
        _B44(tx_good_octets)            \
-@@ -425,9 +362,10 @@ struct b44 {
+@@ -425,9 +362,10 @@
  
        u32                     dma_offset;
        u32                     flags;
  
        u32                     dma_offset;
        u32                     flags;
@@ -1519,7 +1515,7 @@ Index: linux-2.6.23.17/drivers/net/b44.h
  #define B44_FLAG_PAUSE_AUTO   0x00008000
  #define B44_FLAG_FULL_DUPLEX  0x00010000
  #define B44_FLAG_100_BASE_T   0x00020000
  #define B44_FLAG_PAUSE_AUTO   0x00008000
  #define B44_FLAG_FULL_DUPLEX  0x00010000
  #define B44_FLAG_100_BASE_T   0x00020000
-@@ -450,8 +388,7 @@ struct b44 {
+@@ -450,8 +388,7 @@
        struct net_device_stats stats;
        struct b44_hw_stats     hw_stats;
  
        struct net_device_stats stats;
        struct b44_hw_stats     hw_stats;
  
@@ -1529,11 +1525,9 @@ Index: linux-2.6.23.17/drivers/net/b44.h
        struct net_device       *dev;
  
        dma_addr_t              rx_ring_dma, tx_ring_dma;
        struct net_device       *dev;
  
        dma_addr_t              rx_ring_dma, tx_ring_dma;
-Index: linux-2.6.23.17/drivers/net/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/Kconfig
-+++ linux-2.6.23.17/drivers/net/Kconfig
-@@ -1577,7 +1577,7 @@ config APRICOT
+--- a/drivers/net/Kconfig
++++ b/drivers/net/Kconfig
+@@ -1577,7 +1577,7 @@
  
  config B44
        tristate "Broadcom 4400 ethernet support"
  
  config B44
        tristate "Broadcom 4400 ethernet support"
index 3dd4f4dab4a79582f3cfe8148354aebf6bb64964..7857c5b57c77cd06ec65f4ae1f74588888dff3c2 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/net/b44.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/b44.c
-+++ linux-2.6.23.17/drivers/net/b44.c
-@@ -2273,6 +2273,10 @@ static int __devinit b44_get_invariants(
+--- a/drivers/net/b44.c
++++ b/drivers/net/b44.c
+@@ -2273,6 +2273,10 @@
               bp->phy_addr = sdev->bus->sprom.et1phyaddr;
               break;
        }
               bp->phy_addr = sdev->bus->sprom.et1phyaddr;
               break;
        }
index b30f7978163443b1ee17370f98087df3fc16e092..8befbf1a85dfbe680b5dec7f55b3180b167ee45c 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/Kconfig
-+++ linux-2.6.23.17/arch/mips/Kconfig
-@@ -192,7 +192,6 @@ config MIPS_MALTA
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -192,7 +192,6 @@
        select I8259
        select MIPS_BOARDS_GEN
        select MIPS_BONITO64
        select I8259
        select MIPS_BOARDS_GEN
        select MIPS_BONITO64
@@ -10,7 +8,7 @@ Index: linux-2.6.23.17/arch/mips/Kconfig
        select PCI_GT64XXX_PCI0
        select MIPS_MSC
        select SWAP_IO_SPACE
        select PCI_GT64XXX_PCI0
        select MIPS_MSC
        select SWAP_IO_SPACE
-@@ -1281,13 +1280,6 @@ config IP22_CPU_SCACHE
+@@ -1281,13 +1280,6 @@
        bool
        select BOARD_SCACHE
  
        bool
        select BOARD_SCACHE
  
@@ -24,11 +22,9 @@ Index: linux-2.6.23.17/arch/mips/Kconfig
  config R5000_CPU_SCACHE
        bool
        select BOARD_SCACHE
  config R5000_CPU_SCACHE
        bool
        select BOARD_SCACHE
-Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/cpu-probe.c
-+++ linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-@@ -701,6 +701,8 @@ static inline void cpu_probe_mips(struct
+--- a/arch/mips/kernel/cpu-probe.c
++++ b/arch/mips/kernel/cpu-probe.c
+@@ -701,6 +701,8 @@
                break;
        case PRID_IMP_25KF:
                c->cputype = CPU_25KF;
                break;
        case PRID_IMP_25KF:
                c->cputype = CPU_25KF;
@@ -37,11 +33,9 @@ Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
                break;
        case PRID_IMP_34K:
                c->cputype = CPU_34K;
                break;
        case PRID_IMP_34K:
                c->cputype = CPU_34K;
-Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/c-r4k.c
-+++ linux-2.6.23.17/arch/mips/mm/c-r4k.c
-@@ -1101,7 +1101,6 @@ static void __init loongson2_sc_init(voi
+--- a/arch/mips/mm/c-r4k.c
++++ b/arch/mips/mm/c-r4k.c
+@@ -1101,7 +1101,6 @@
  
  extern int r5k_sc_init(void);
  extern int rm7k_sc_init(void);
  
  extern int r5k_sc_init(void);
  extern int rm7k_sc_init(void);
@@ -49,7 +43,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
  
  static void __init setup_scache(void)
  {
  
  static void __init setup_scache(void)
  {
-@@ -1155,29 +1154,17 @@ static void __init setup_scache(void)
+@@ -1155,29 +1154,17 @@
  #endif
  
        default:
  #endif
  
        default:
@@ -84,11 +78,9 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        /* compute a couple of other cache variables */
        c->scache.waysize = scache_size / c->scache.ways;
  
        /* compute a couple of other cache variables */
        c->scache.waysize = scache_size / c->scache.ways;
  
-Index: linux-2.6.23.17/arch/mips/mm/Makefile
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/Makefile
-+++ linux-2.6.23.17/arch/mips/mm/Makefile
-@@ -31,6 +31,5 @@ obj-$(CONFIG_CPU_VR41XX)     += c-r4k.o cex-
+--- a/arch/mips/mm/Makefile
++++ b/arch/mips/mm/Makefile
+@@ -31,6 +31,5 @@
  obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o
  obj-$(CONFIG_R5000_CPU_SCACHE)  += sc-r5k.o
  obj-$(CONFIG_RM7000_CPU_SCACHE)       += sc-rm7k.o
  obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o
  obj-$(CONFIG_R5000_CPU_SCACHE)  += sc-r5k.o
  obj-$(CONFIG_RM7000_CPU_SCACHE)       += sc-rm7k.o
index f155de70b4f816c069c93f063e9d9fb76d2d93aa..de1dc19f9067a9c6bfa822e36ef7c9c306de4cf0 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/kernel/genex.S
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/genex.S
-+++ linux-2.6.23.17/arch/mips/kernel/genex.S
-@@ -51,6 +51,10 @@ NESTED(except_vec1_generic, 0, sp)
+--- a/arch/mips/kernel/genex.S
++++ b/arch/mips/kernel/genex.S
+@@ -51,6 +51,10 @@
  NESTED(except_vec3_generic, 0, sp)
        .set    push
        .set    noat
  NESTED(except_vec3_generic, 0, sp)
        .set    push
        .set    noat
@@ -13,10 +11,8 @@ Index: linux-2.6.23.17/arch/mips/kernel/genex.S
  #if R5432_CP0_INTERRUPT_WAR
        mfc0    k0, CP0_INDEX
  #endif
  #if R5432_CP0_INTERRUPT_WAR
        mfc0    k0, CP0_INDEX
  #endif
-Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/c-r4k.c
-+++ linux-2.6.23.17/arch/mips/mm/c-r4k.c
+--- a/arch/mips/mm/c-r4k.c
++++ b/arch/mips/mm/c-r4k.c
 @@ -30,6 +30,9 @@
  #include <asm/cacheflush.h> /* for run_uncached() */
  
 @@ -30,6 +30,9 @@
  #include <asm/cacheflush.h> /* for run_uncached() */
  
@@ -27,7 +23,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
  /*
   * Special Variant of smp_call_function for use by cache functions:
   *
  /*
   * Special Variant of smp_call_function for use by cache functions:
   *
-@@ -94,6 +97,9 @@ static void __init r4k_blast_dcache_page
+@@ -94,6 +97,9 @@
  {
        unsigned long  dc_lsize = cpu_dcache_line_size();
  
  {
        unsigned long  dc_lsize = cpu_dcache_line_size();
  
@@ -37,7 +33,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        if (dc_lsize == 0)
                r4k_blast_dcache_page = (void *)cache_noop;
        else if (dc_lsize == 16)
        if (dc_lsize == 0)
                r4k_blast_dcache_page = (void *)cache_noop;
        else if (dc_lsize == 16)
-@@ -108,6 +114,9 @@ static void __init r4k_blast_dcache_page
+@@ -108,6 +114,9 @@
  {
        unsigned long dc_lsize = cpu_dcache_line_size();
  
  {
        unsigned long dc_lsize = cpu_dcache_line_size();
  
@@ -47,7 +43,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        if (dc_lsize == 0)
                r4k_blast_dcache_page_indexed = (void *)cache_noop;
        else if (dc_lsize == 16)
        if (dc_lsize == 0)
                r4k_blast_dcache_page_indexed = (void *)cache_noop;
        else if (dc_lsize == 16)
-@@ -122,6 +131,9 @@ static void __init r4k_blast_dcache_setu
+@@ -122,6 +131,9 @@
  {
        unsigned long dc_lsize = cpu_dcache_line_size();
  
  {
        unsigned long dc_lsize = cpu_dcache_line_size();
  
@@ -57,7 +53,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        if (dc_lsize == 0)
                r4k_blast_dcache = (void *)cache_noop;
        else if (dc_lsize == 16)
        if (dc_lsize == 0)
                r4k_blast_dcache = (void *)cache_noop;
        else if (dc_lsize == 16)
-@@ -638,6 +650,8 @@ static void local_r4k_flush_cache_sigtra
+@@ -638,6 +650,8 @@
        unsigned long addr = (unsigned long) arg;
  
        R4600_HIT_CACHEOP_WAR_IMPL;
        unsigned long addr = (unsigned long) arg;
  
        R4600_HIT_CACHEOP_WAR_IMPL;
@@ -66,7 +62,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        if (dc_lsize)
                protected_writeback_dcache_line(addr & ~(dc_lsize - 1));
        if (!cpu_icache_snoops_remote_store && scache_size)
        if (dc_lsize)
                protected_writeback_dcache_line(addr & ~(dc_lsize - 1));
        if (!cpu_icache_snoops_remote_store && scache_size)
-@@ -1213,6 +1227,17 @@ static void __init coherency_setup(void)
+@@ -1213,6 +1227,17 @@
         * silly idea of putting something else there ...
         */
        switch (current_cpu_data.cputype) {
         * silly idea of putting something else there ...
         */
        switch (current_cpu_data.cputype) {
@@ -84,7 +80,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        case CPU_R4000PC:
        case CPU_R4000SC:
        case CPU_R4000MC:
        case CPU_R4000PC:
        case CPU_R4000SC:
        case CPU_R4000MC:
-@@ -1243,6 +1268,15 @@ void __init r4k_cache_init(void)
+@@ -1243,6 +1268,15 @@
        /* Default cache error handler for R4000 and R5000 family */
        set_uncached_handler (0x100, &except_vec2_generic, 0x80);
  
        /* Default cache error handler for R4000 and R5000 family */
        set_uncached_handler (0x100, &except_vec2_generic, 0x80);
  
@@ -100,7 +96,7 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        probe_pcache();
        setup_scache();
  
        probe_pcache();
        setup_scache();
  
-@@ -1288,5 +1322,13 @@ void __init r4k_cache_init(void)
+@@ -1288,5 +1322,13 @@
        build_clear_page();
        build_copy_page();
        local_r4k___flush_cache_all(NULL);
        build_clear_page();
        build_copy_page();
        local_r4k___flush_cache_all(NULL);
@@ -114,11 +110,9 @@ Index: linux-2.6.23.17/arch/mips/mm/c-r4k.c
        coherency_setup();
 +#endif
  }
        coherency_setup();
 +#endif
  }
-Index: linux-2.6.23.17/arch/mips/mm/tlbex.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/tlbex.c
-+++ linux-2.6.23.17/arch/mips/mm/tlbex.c
-@@ -1273,6 +1273,9 @@ static void __init build_r4000_tlb_refil
+--- a/arch/mips/mm/tlbex.c
++++ b/arch/mips/mm/tlbex.c
+@@ -1273,6 +1273,9 @@
                /* No need for i_nop */
        }
  
                /* No need for i_nop */
        }
  
@@ -128,7 +122,7 @@ Index: linux-2.6.23.17/arch/mips/mm/tlbex.c
  #ifdef CONFIG_64BIT
        build_get_pmde64(&p, &l, &r, K0, K1); /* get pmd in K1 */
  #else
  #ifdef CONFIG_64BIT
        build_get_pmde64(&p, &l, &r, K0, K1); /* get pmd in K1 */
  #else
-@@ -1708,6 +1711,9 @@ build_r4000_tlbchange_handler_head(u32 *
+@@ -1708,6 +1711,9 @@
                                   struct reloc **r, unsigned int pte,
                                   unsigned int ptr)
  {
                                   struct reloc **r, unsigned int pte,
                                   unsigned int ptr)
  {
@@ -138,10 +132,8 @@ Index: linux-2.6.23.17/arch/mips/mm/tlbex.c
  #ifdef CONFIG_64BIT
        build_get_pmde64(p, l, r, pte, ptr); /* get pmd in ptr */
  #else
  #ifdef CONFIG_64BIT
        build_get_pmde64(p, l, r, pte, ptr); /* get pmd in ptr */
  #else
-Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/r4kcache.h
-+++ linux-2.6.23.17/include/asm-mips/r4kcache.h
+--- a/include/asm-mips/r4kcache.h
++++ b/include/asm-mips/r4kcache.h
 @@ -17,6 +17,20 @@
  #include <asm/cpu-features.h>
  #include <asm/mipsmtregs.h>
 @@ -17,6 +17,20 @@
  #include <asm/cpu-features.h>
  #include <asm/mipsmtregs.h>
@@ -163,7 +155,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
  /*
   * This macro return a properly sign-extended address suitable as base address
   * for indexed cache operations.  Two issues here:
  /*
   * This macro return a properly sign-extended address suitable as base address
   * for indexed cache operations.  Two issues here:
-@@ -150,6 +164,7 @@ static inline void flush_icache_line_ind
+@@ -150,6 +164,7 @@
  static inline void flush_dcache_line_indexed(unsigned long addr)
  {
        __dflush_prologue
  static inline void flush_dcache_line_indexed(unsigned long addr)
  {
        __dflush_prologue
@@ -171,7 +163,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        cache_op(Index_Writeback_Inv_D, addr);
        __dflush_epilogue
  }
        cache_op(Index_Writeback_Inv_D, addr);
        __dflush_epilogue
  }
-@@ -169,6 +184,7 @@ static inline void flush_icache_line(uns
+@@ -169,6 +184,7 @@
  static inline void flush_dcache_line(unsigned long addr)
  {
        __dflush_prologue
  static inline void flush_dcache_line(unsigned long addr)
  {
        __dflush_prologue
@@ -179,7 +171,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        cache_op(Hit_Writeback_Inv_D, addr);
        __dflush_epilogue
  }
        cache_op(Hit_Writeback_Inv_D, addr);
        __dflush_epilogue
  }
-@@ -176,6 +192,7 @@ static inline void flush_dcache_line(uns
+@@ -176,6 +192,7 @@
  static inline void invalidate_dcache_line(unsigned long addr)
  {
        __dflush_prologue
  static inline void invalidate_dcache_line(unsigned long addr)
  {
        __dflush_prologue
@@ -187,7 +179,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        cache_op(Hit_Invalidate_D, addr);
        __dflush_epilogue
  }
        cache_op(Hit_Invalidate_D, addr);
        __dflush_epilogue
  }
-@@ -208,6 +225,7 @@ static inline void flush_scache_line(uns
+@@ -208,6 +225,7 @@
   */
  static inline void protected_flush_icache_line(unsigned long addr)
  {
   */
  static inline void protected_flush_icache_line(unsigned long addr)
  {
@@ -195,7 +187,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        protected_cache_op(Hit_Invalidate_I, addr);
  }
  
        protected_cache_op(Hit_Invalidate_I, addr);
  }
  
-@@ -219,6 +237,7 @@ static inline void protected_flush_icach
+@@ -219,6 +237,7 @@
   */
  static inline void protected_writeback_dcache_line(unsigned long addr)
  {
   */
  static inline void protected_writeback_dcache_line(unsigned long addr)
  {
@@ -203,7 +195,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        protected_cache_op(Hit_Writeback_Inv_D, addr);
  }
  
        protected_cache_op(Hit_Writeback_Inv_D, addr);
  }
  
-@@ -339,8 +358,52 @@ static inline void invalidate_tcache_pag
+@@ -339,8 +358,52 @@
                : "r" (base),                                           \
                  "i" (op));
  
                : "r" (base),                                           \
                  "i" (op));
  
@@ -257,7 +249,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
  static inline void blast_##pfx##cache##lsize(void)                    \
  {                                                                     \
        unsigned long start = INDEX_BASE;                               \
  static inline void blast_##pfx##cache##lsize(void)                    \
  {                                                                     \
        unsigned long start = INDEX_BASE;                               \
-@@ -352,6 +415,7 @@ static inline void blast_##pfx##cache##l
+@@ -352,6 +415,7 @@
                                                                        \
        __##pfx##flush_prologue                                         \
                                                                        \
                                                                        \
        __##pfx##flush_prologue                                         \
                                                                        \
@@ -265,7 +257,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        for (ws = 0; ws < ws_end; ws += ws_inc)                         \
                for (addr = start; addr < end; addr += lsize * 32)      \
                        cache##lsize##_unroll32(addr|ws,indexop);       \
        for (ws = 0; ws < ws_end; ws += ws_inc)                         \
                for (addr = start; addr < end; addr += lsize * 32)      \
                        cache##lsize##_unroll32(addr|ws,indexop);       \
-@@ -366,6 +430,7 @@ static inline void blast_##pfx##cache##l
+@@ -366,6 +430,7 @@
                                                                        \
        __##pfx##flush_prologue                                         \
                                                                        \
                                                                        \
        __##pfx##flush_prologue                                         \
                                                                        \
@@ -273,7 +265,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        do {                                                            \
                cache##lsize##_unroll32(start,hitop);                   \
                start += lsize * 32;                                    \
        do {                                                            \
                cache##lsize##_unroll32(start,hitop);                   \
                start += lsize * 32;                                    \
-@@ -384,6 +449,8 @@ static inline void blast_##pfx##cache##l
+@@ -384,6 +449,8 @@
                               current_cpu_data.desc.waybit;            \
        unsigned long ws, addr;                                         \
                                                                        \
                               current_cpu_data.desc.waybit;            \
        unsigned long ws, addr;                                         \
                                                                        \
@@ -282,7 +274,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
        __##pfx##flush_prologue                                         \
                                                                        \
        for (ws = 0; ws < ws_end; ws += ws_inc)                         \
        __##pfx##flush_prologue                                         \
                                                                        \
        for (ws = 0; ws < ws_end; ws += ws_inc)                         \
-@@ -393,28 +460,30 @@ static inline void blast_##pfx##cache##l
+@@ -393,28 +460,30 @@
        __##pfx##flush_epilogue                                         \
  }
  
        __##pfx##flush_epilogue                                         \
  }
  
@@ -323,7 +315,7 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
                prot##cache_op(hitop, addr);                            \
                if (addr == aend)                                       \
                        break;                                          \
                prot##cache_op(hitop, addr);                            \
                if (addr == aend)                                       \
                        break;                                          \
-@@ -424,13 +493,13 @@ static inline void prot##blast_##pfx##ca
+@@ -424,13 +493,13 @@
        __##pfx##flush_epilogue                                         \
  }
  
        __##pfx##flush_epilogue                                         \
  }
  
@@ -344,10 +336,8 @@ Index: linux-2.6.23.17/include/asm-mips/r4kcache.h
 +__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD,,, )
  
  #endif /* _ASM_R4KCACHE_H */
 +__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD,,, )
  
  #endif /* _ASM_R4KCACHE_H */
-Index: linux-2.6.23.17/include/asm-mips/stackframe.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/stackframe.h
-+++ linux-2.6.23.17/include/asm-mips/stackframe.h
+--- a/include/asm-mips/stackframe.h
++++ b/include/asm-mips/stackframe.h
 @@ -350,6 +350,10 @@
                .macro  RESTORE_SP_AND_RET
                LONG_L  sp, PT_R29(sp)
 @@ -350,6 +350,10 @@
                .macro  RESTORE_SP_AND_RET
                LONG_L  sp, PT_R29(sp)
index 753e5ad42f5ef75aca88c88d7f1a5ac0a94b54f1..009ec43b8240b6aa0f8e3713ab58db44f800a49a 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/mm/init.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/init.c
-+++ linux-2.6.23.17/arch/mips/mm/init.c
-@@ -211,7 +211,7 @@ void copy_user_highpage(struct page *to,
+--- a/arch/mips/mm/init.c
++++ b/arch/mips/mm/init.c
+@@ -211,7 +211,7 @@
        void *vfrom, *vto;
  
        vto = kmap_atomic(to, KM_USER1);
        void *vfrom, *vto;
  
        vto = kmap_atomic(to, KM_USER1);
@@ -11,7 +9,7 @@ Index: linux-2.6.23.17/arch/mips/mm/init.c
                vfrom = kmap_coherent(from, vaddr);
                copy_page(vto, vfrom);
                kunmap_coherent();
                vfrom = kmap_coherent(from, vaddr);
                copy_page(vto, vfrom);
                kunmap_coherent();
-@@ -234,7 +234,7 @@ void copy_to_user_page(struct vm_area_st
+@@ -234,7 +234,7 @@
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
  {
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
  {
@@ -20,7 +18,7 @@ Index: linux-2.6.23.17/arch/mips/mm/init.c
                void *vto = kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
                memcpy(vto, src, len);
                kunmap_coherent();
                void *vto = kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
                memcpy(vto, src, len);
                kunmap_coherent();
-@@ -250,7 +250,7 @@ void copy_from_user_page(struct vm_area_
+@@ -250,7 +250,7 @@
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
  {
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
  {
@@ -29,10 +27,8 @@ Index: linux-2.6.23.17/arch/mips/mm/init.c
                void *vfrom =
                        kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
                memcpy(dst, vfrom, len);
                void *vfrom =
                        kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
                memcpy(dst, vfrom, len);
-Index: linux-2.6.23.17/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h
++++ b/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h
 @@ -0,0 +1,13 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
 @@ -0,0 +1,13 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
@@ -47,10 +43,8 @@ Index: linux-2.6.23.17/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h
 +#define cpu_use_kmap_coherent 0
 +
 +#endif /* __ASM_MACH_BCM947XX_CPU_FEATURE_OVERRIDES_H */
 +#define cpu_use_kmap_coherent 0
 +
 +#endif /* __ASM_MACH_BCM947XX_CPU_FEATURE_OVERRIDES_H */
-Index: linux-2.6.23.17/include/asm-mips/cpu-features.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/cpu-features.h
-+++ linux-2.6.23.17/include/asm-mips/cpu-features.h
+--- a/include/asm-mips/cpu-features.h
++++ b/include/asm-mips/cpu-features.h
 @@ -101,6 +101,9 @@
  #ifndef cpu_has_pindexed_dcache
  #define cpu_has_pindexed_dcache       (cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX)
 @@ -101,6 +101,9 @@
  #ifndef cpu_has_pindexed_dcache
  #define cpu_has_pindexed_dcache       (cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX)
index 331a27dcc7bf22aaf0edef1f28a7452d6caaf169..0ffe59147f92ac9579d2af56aac493ecede0bec0 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/cpu-probe.c
-+++ linux-2.6.23.17/arch/mips/kernel/cpu-probe.c
-@@ -159,6 +159,7 @@ static inline void check_wait(void)
+--- a/arch/mips/kernel/cpu-probe.c
++++ b/arch/mips/kernel/cpu-probe.c
+@@ -159,6 +159,7 @@
        case CPU_5KC:
        case CPU_25KF:
        case CPU_PR4450:
        case CPU_5KC:
        case CPU_25KF:
        case CPU_PR4450:
index e0333389ebb6cdc48dd3881950155c7122aa7793..732178c5bbf03e53e3af94467f3e0d4aa4d3ec4f 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_chipcommon.c
-+++ linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-@@ -270,6 +270,8 @@ void ssb_chipco_resume(struct ssb_chipco
+--- a/drivers/ssb/driver_chipcommon.c
++++ b/drivers/ssb/driver_chipcommon.c
+@@ -270,6 +270,8 @@
  void ssb_chipco_get_clockcpu(struct ssb_chipcommon *cc,
                               u32 *plltype, u32 *n, u32 *m)
  {
  void ssb_chipco_get_clockcpu(struct ssb_chipcommon *cc,
                               u32 *plltype, u32 *n, u32 *m)
  {
@@ -11,7 +9,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
        *n = chipco_read32(cc, SSB_CHIPCO_CLOCK_N);
        *plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        switch (*plltype) {
        *n = chipco_read32(cc, SSB_CHIPCO_CLOCK_N);
        *plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        switch (*plltype) {
-@@ -293,6 +295,8 @@ void ssb_chipco_get_clockcpu(struct ssb_
+@@ -293,6 +295,8 @@
  void ssb_chipco_get_clockcontrol(struct ssb_chipcommon *cc,
                                 u32 *plltype, u32 *n, u32 *m)
  {
  void ssb_chipco_get_clockcontrol(struct ssb_chipcommon *cc,
                                 u32 *plltype, u32 *n, u32 *m)
  {
@@ -20,11 +18,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
        *n = chipco_read32(cc, SSB_CHIPCO_CLOCK_N);
        *plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        switch (*plltype) {
        *n = chipco_read32(cc, SSB_CHIPCO_CLOCK_N);
        *plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        switch (*plltype) {
-Index: linux-2.6.23.17/drivers/ssb/driver_mipscore.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_mipscore.c
-+++ linux-2.6.23.17/drivers/ssb/driver_mipscore.c
-@@ -161,6 +161,8 @@ u32 ssb_cpu_clock(struct ssb_mipscore *m
+--- a/drivers/ssb/driver_mipscore.c
++++ b/drivers/ssb/driver_mipscore.c
+@@ -161,6 +161,8 @@
  
        if ((pll_type == SSB_PLLTYPE_5) || (bus->chip_id == 0x5365)) {
                rate = 200000000;
  
        if ((pll_type == SSB_PLLTYPE_5) || (bus->chip_id == 0x5365)) {
                rate = 200000000;
@@ -33,11 +29,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_mipscore.c
        } else {
                rate = ssb_calc_clock_rate(pll_type, n, m);
        }
        } else {
                rate = ssb_calc_clock_rate(pll_type, n, m);
        }
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -862,6 +862,8 @@ u32 ssb_clockspeed(struct ssb_bus *bus)
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -862,6 +862,8 @@
  
        if (bus->chip_id == 0x5365) {
                rate = 100000000;
  
        if (bus->chip_id == 0x5365) {
                rate = 100000000;
index b74778e1a40dd3808056c5bca409e7afb0bac519..19b6a79129f8beaacd7caac7b609ab20db200719 100644 (file)
@@ -13,11 +13,9 @@ Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 ---
 
 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 ---
 
-Index: linux-2.6.23.17/drivers/usb/host/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/usb/host/Kconfig
-+++ linux-2.6.23.17/drivers/usb/host/Kconfig
-@@ -154,6 +154,19 @@ config USB_OHCI_HCD_PCI
+--- a/drivers/usb/host/Kconfig
++++ b/drivers/usb/host/Kconfig
+@@ -154,6 +154,19 @@
          Enables support for PCI-bus plug-in USB controller cards.
          If unsure, say Y.
  
          Enables support for PCI-bus plug-in USB controller cards.
          If unsure, say Y.
  
@@ -37,11 +35,9 @@ Index: linux-2.6.23.17/drivers/usb/host/Kconfig
  config USB_OHCI_BIG_ENDIAN_DESC
        bool
        depends on USB_OHCI_HCD
  config USB_OHCI_BIG_ENDIAN_DESC
        bool
        depends on USB_OHCI_HCD
-Index: linux-2.6.23.17/drivers/usb/host/ohci-hcd.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/usb/host/ohci-hcd.c
-+++ linux-2.6.23.17/drivers/usb/host/ohci-hcd.c
-@@ -926,11 +926,17 @@ MODULE_LICENSE ("GPL");
+--- a/drivers/usb/host/ohci-hcd.c
++++ b/drivers/usb/host/ohci-hcd.c
+@@ -926,11 +926,17 @@
  #define PS3_SYSTEM_BUS_DRIVER ps3_ohci_driver
  #endif
  
  #define PS3_SYSTEM_BUS_DRIVER ps3_ohci_driver
  #endif
  
@@ -60,7 +56,7 @@ Index: linux-2.6.23.17/drivers/usb/host/ohci-hcd.c
  #error "missing bus glue for ohci-hcd"
  #endif
  
  #error "missing bus glue for ohci-hcd"
  #endif
  
-@@ -975,10 +981,20 @@ static int __init ohci_hcd_mod_init(void
+@@ -975,10 +981,20 @@
                goto error_pci;
  #endif
  
                goto error_pci;
  #endif
  
@@ -81,7 +77,7 @@ Index: linux-2.6.23.17/drivers/usb/host/ohci-hcd.c
   error_pci:
  #endif
  #ifdef SA1111_DRIVER
   error_pci:
  #endif
  #ifdef SA1111_DRIVER
-@@ -1003,6 +1019,9 @@ module_init(ohci_hcd_mod_init);
+@@ -1003,6 +1019,9 @@
  
  static void __exit ohci_hcd_mod_exit(void)
  {
  
  static void __exit ohci_hcd_mod_exit(void)
  {
@@ -91,10 +87,8 @@ Index: linux-2.6.23.17/drivers/usb/host/ohci-hcd.c
  #ifdef PCI_DRIVER
        pci_unregister_driver(&PCI_DRIVER);
  #endif
  #ifdef PCI_DRIVER
        pci_unregister_driver(&PCI_DRIVER);
  #endif
-Index: linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
++++ b/drivers/usb/host/ohci-ssb.c
 @@ -0,0 +1,247 @@
 +/*
 + * Sonics Silicon Backplane
 @@ -0,0 +1,247 @@
 +/*
 + * Sonics Silicon Backplane
index f8c03aba9ba5b35ece04521133a195247e655adf..4aeefdb788b9a70ed495cfface678395fd8dc6dd 100644 (file)
@@ -13,11 +13,9 @@ Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 ---
 
 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 ---
 
-Index: linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/usb/host/ohci-ssb.c
-+++ linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-@@ -117,8 +117,10 @@ static const struct hc_driver ssb_ohci_h
+--- a/drivers/usb/host/ohci-ssb.c
++++ b/drivers/usb/host/ohci-ssb.c
+@@ -117,8 +117,10 @@
        .hub_status_data        = ohci_hub_status_data,
        .hub_control            = ohci_hub_control,
        .hub_irq_enable         = ohci_rhsc_enable,
        .hub_status_data        = ohci_hub_status_data,
        .hub_control            = ohci_hub_control,
        .hub_irq_enable         = ohci_rhsc_enable,
index 84f989bca27c701791739ba7ddb59f290d6d4a8e..b59e41f511338ebe9e25dd3790e1921d44f5a5bc 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/usb/host/ohci-ssb.c
-+++ linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-@@ -142,10 +142,59 @@ static int ssb_ohci_attach(struct ssb_de
+--- a/drivers/usb/host/ohci-ssb.c
++++ b/drivers/usb/host/ohci-ssb.c
+@@ -142,10 +142,59 @@
        int err = -ENOMEM;
        u32 tmp, flags = 0;
  
        int err = -ENOMEM;
        u32 tmp, flags = 0;
  
@@ -64,7 +62,7 @@ Index: linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
  
        hcd = usb_create_hcd(&ssb_ohci_hc_driver, dev->dev,
                        dev->dev->bus_id);
  
        hcd = usb_create_hcd(&ssb_ohci_hc_driver, dev->dev,
                        dev->dev->bus_id);
-@@ -235,6 +284,7 @@ static int ssb_ohci_resume(struct ssb_de
+@@ -235,6 +284,7 @@
  static const struct ssb_device_id ssb_ohci_table[] = {
        SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_USB11_HOSTDEV, SSB_ANY_REV),
        SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_USB11_HOST, SSB_ANY_REV),
  static const struct ssb_device_id ssb_ohci_table[] = {
        SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_USB11_HOSTDEV, SSB_ANY_REV),
        SSB_DEVICE(SSB_VENDOR_BROADCOM, SSB_DEV_USB11_HOST, SSB_ANY_REV),
index d1bf24f8de6d498c953650a735f29c5e28c01102..21fac47407b38cff8cce4e56958d87f779c24b5e 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/usb/host/ohci-ssb.c
-+++ linux-2.6.23.17/drivers/usb/host/ohci-ssb.c
-@@ -195,6 +195,11 @@ static int ssb_ohci_attach(struct ssb_de
+--- a/drivers/usb/host/ohci-ssb.c
++++ b/drivers/usb/host/ohci-ssb.c
+@@ -195,6 +195,11 @@
        else
                ssb_device_enable(dev, 0);
  
        else
                ssb_device_enable(dev, 0);
  
index d786d78ecf32f1c71f93c77784b95b2b7a7eb14a..f5b5d776821c7ae474164a335e35ae8520c94756 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-2.6.23.17/include/asm-mips/cacheflush.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/cacheflush.h
-+++ linux-2.6.23.17/include/asm-mips/cacheflush.h
+--- a/include/asm-mips/cacheflush.h
++++ b/include/asm-mips/cacheflush.h
 @@ -32,7 +32,7 @@
  extern void (*flush_cache_all)(void);
  extern void (*__flush_cache_all)(void);
 @@ -32,7 +32,7 @@
  extern void (*flush_cache_all)(void);
  extern void (*__flush_cache_all)(void);
index f42726daa8299c1ceab93572e20060a30b0569ea..411ebdbf9ced5969ee308c83964785caefc5fe21 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/arch/mips/mm/init.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/mm/init.c
-+++ linux-2.6.23.17/arch/mips/mm/init.c
-@@ -205,31 +205,6 @@ void kunmap_coherent(void)
+--- a/arch/mips/mm/init.c
++++ b/arch/mips/mm/init.c
+@@ -205,31 +205,6 @@
        preempt_check_resched();
  }
  
        preempt_check_resched();
  }
  
@@ -34,10 +32,8 @@ Index: linux-2.6.23.17/arch/mips/mm/init.c
  void copy_to_user_page(struct vm_area_struct *vma,
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
  void copy_to_user_page(struct vm_area_struct *vma,
        struct page *page, unsigned long vaddr, void *dst, const void *src,
        unsigned long len)
-Index: linux-2.6.23.17/include/asm-mips/page.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/page.h
-+++ linux-2.6.23.17/include/asm-mips/page.h
+--- a/include/asm-mips/page.h
++++ b/include/asm-mips/page.h
 @@ -35,6 +35,7 @@
  #ifndef __ASSEMBLY__
  
 @@ -35,6 +35,7 @@
  #ifndef __ASSEMBLY__
  
@@ -46,7 +42,7 @@ Index: linux-2.6.23.17/include/asm-mips/page.h
  #include <asm/io.h>
  
  /*
  #include <asm/io.h>
  
  /*
-@@ -67,13 +68,16 @@ static inline void clear_user_page(void 
+@@ -67,13 +68,16 @@
                flush_data_cache_page((unsigned long)addr);
  }
  
                flush_data_cache_page((unsigned long)addr);
  }
  
index 303c2382ba67b77c3f5e95d8523f62a09272df85..4e57ecbdafade620c0863f6170e12e4c789a0802 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ide/pci/aec62xx.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ide/pci/aec62xx.c
-+++ linux-2.6.23.17/drivers/ide/pci/aec62xx.c
-@@ -248,7 +248,14 @@ static int __devinit init_setup_aec62xx(
+--- a/drivers/ide/pci/aec62xx.c
++++ b/drivers/ide/pci/aec62xx.c
+@@ -248,7 +248,14 @@
  
  static int __devinit init_setup_aec6x80(struct pci_dev *dev, ide_pci_device_t *d)
  {
  
  static int __devinit init_setup_aec6x80(struct pci_dev *dev, ide_pci_device_t *d)
  {
@@ -18,7 +16,7 @@ Index: linux-2.6.23.17/drivers/ide/pci/aec62xx.c
  
        if (inb(dma_base + 2) & 0x10) {
                d->name = (dev->device == PCI_DEVICE_ID_ARTOP_ATP865R) ?
  
        if (inb(dma_base + 2) & 0x10) {
                d->name = (dev->device == PCI_DEVICE_ID_ARTOP_ATP865R) ?
-@@ -256,7 +263,11 @@ static int __devinit init_setup_aec6x80(
+@@ -256,7 +263,11 @@
                d->udma_mask = 0x7f; /* udma0-6 */
        }
  
                d->udma_mask = 0x7f; /* udma0-6 */
        }
  
index 88ce8052c7a68e0e1bfa5d5144b19150d5a6eea3..a2e4c2b85c40af805f957ab07aa4b6fa2695aaa7 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/scripts/gen_initramfs_list.sh
-===================================================================
---- linux-2.6.23.17.orig/scripts/gen_initramfs_list.sh
-+++ linux-2.6.23.17/scripts/gen_initramfs_list.sh
-@@ -287,7 +287,7 @@ if [ ! -z ${output_file} ]; then
+--- a/scripts/gen_initramfs_list.sh
++++ b/scripts/gen_initramfs_list.sh
+@@ -287,7 +287,7 @@
        if [ "${is_cpio_compressed}" = "compressed" ]; then
                cat ${cpio_tfile} > ${output_file}
        else
        if [ "${is_cpio_compressed}" = "compressed" ]; then
                cat ${cpio_tfile} > ${output_file}
        else
@@ -11,11 +9,9 @@ Index: linux-2.6.23.17/scripts/gen_initramfs_list.sh
        fi
        [ -z ${cpio_file} ] && rm ${cpio_tfile}
  fi
        fi
        [ -z ${cpio_file} ] && rm ${cpio_tfile}
  fi
-Index: linux-2.6.23.17/init/initramfs.c
-===================================================================
---- linux-2.6.23.17.orig/init/initramfs.c
-+++ linux-2.6.23.17/init/initramfs.c
-@@ -441,6 +441,69 @@ static void __init flush_window(void)
+--- a/init/initramfs.c
++++ b/init/initramfs.c
+@@ -441,6 +441,69 @@
        outcnt = 0;
  }
  
        outcnt = 0;
  }
  
@@ -85,7 +81,7 @@ Index: linux-2.6.23.17/init/initramfs.c
  static char * __init unpack_to_rootfs(char *buf, unsigned len, int check_only)
  {
        int written;
  static char * __init unpack_to_rootfs(char *buf, unsigned len, int check_only)
  {
        int written;
-@@ -475,12 +538,28 @@ static char * __init unpack_to_rootfs(ch
+@@ -475,12 +538,28 @@
                inptr = 0;
                outcnt = 0;             /* bytes in output buffer */
                bytes_out = 0;
                inptr = 0;
                outcnt = 0;             /* bytes in output buffer */
                bytes_out = 0;
index ee1358c082f1d12b024da3b29b09e9d629817813..bcc61ac957d57978cc81c93e00ae076c8ddeaeea 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_pcicore.c
-+++ linux-2.6.23.17/drivers/ssb/driver_pcicore.c
-@@ -66,6 +66,7 @@ int pcibios_plat_dev_init(struct pci_dev
+--- a/drivers/ssb/driver_pcicore.c
++++ b/drivers/ssb/driver_pcicore.c
+@@ -66,6 +66,7 @@
                        base = &ssb_pcicore_pcibus_iobase;
                else
                        base = &ssb_pcicore_pcibus_membase;
                        base = &ssb_pcicore_pcibus_iobase;
                else
                        base = &ssb_pcicore_pcibus_membase;
@@ -10,7 +8,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
                if (res->end) {
                        size = res->end - res->start + 1;
                        if (*base & (size - 1))
                if (res->end) {
                        size = res->end - res->start + 1;
                        if (*base & (size - 1))
-@@ -88,10 +89,12 @@ int pcibios_plat_dev_init(struct pci_dev
+@@ -88,10 +89,12 @@
  
  static void __init ssb_fixup_pcibridge(struct pci_dev *dev)
  {
  
  static void __init ssb_fixup_pcibridge(struct pci_dev *dev)
  {
@@ -24,7 +22,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  
        /* Enable PCI bridge bus mastering and memory space */
        pci_set_master(dev);
  
        /* Enable PCI bridge bus mastering and memory space */
        pci_set_master(dev);
-@@ -101,7 +104,10 @@ static void __init ssb_fixup_pcibridge(s
+@@ -101,7 +104,10 @@
        pci_write_config_dword(dev, SSB_BAR1_CONTROL, 3);
  
        /* Make sure our latency is high enough to handle the devices behind us */
        pci_write_config_dword(dev, SSB_BAR1_CONTROL, 3);
  
        /* Make sure our latency is high enough to handle the devices behind us */
@@ -36,7 +34,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  }
  DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, ssb_fixup_pcibridge);
  
  }
  DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, ssb_fixup_pcibridge);
  
-@@ -279,14 +285,14 @@ static struct resource ssb_pcicore_mem_r
+@@ -279,14 +285,14 @@
        .name   = "SSB PCIcore external memory",
        .start  = SSB_PCI_DMA,
        .end    = SSB_PCI_DMA + SSB_PCI_DMA_SZ - 1,
        .name   = "SSB PCIcore external memory",
        .start  = SSB_PCI_DMA,
        .end    = SSB_PCI_DMA + SSB_PCI_DMA_SZ - 1,
@@ -53,7 +51,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  };
  
  static struct pci_controller ssb_pcicore_controller = {
  };
  
  static struct pci_controller ssb_pcicore_controller = {
-@@ -344,7 +350,8 @@ static void ssb_pcicore_init_hostmode(st
+@@ -344,7 +350,8 @@
        /* Ok, ready to run, register it to the system.
         * The following needs change, if we want to port hostmode
         * to non-MIPS platform. */
        /* Ok, ready to run, register it to the system.
         * The following needs change, if we want to port hostmode
         * to non-MIPS platform. */
index 7a7fb4e80c79be7a15880f37a89028ec1419488a..5597ed5529c39c64e9b5d8be7d6dbf82dc133b62 100644 (file)
@@ -2,11 +2,9 @@ The SSB pcicore driver does create some MMIO resource collisions.
 However, the pcicore PCI-fixup routine fixes these collisions afterwards.
 Remove this sanity check for now until we find a better solution.
 --mb
 However, the pcicore PCI-fixup routine fixes these collisions afterwards.
 Remove this sanity check for now until we find a better solution.
 --mb
-Index: linux-2.6.23.17/arch/mips/pci/pci.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/pci/pci.c
-+++ linux-2.6.23.17/arch/mips/pci/pci.c
-@@ -177,10 +177,8 @@ static int pcibios_enable_resources(stru
+--- a/arch/mips/pci/pci.c
++++ b/arch/mips/pci/pci.c
+@@ -177,10 +177,8 @@
                        continue;
  
                r = &dev->resource[idx];
                        continue;
  
                r = &dev->resource[idx];
index bf16997c419f08717b8f4fbe28365fe895d3f3b6..a2857fecbb6319b5152475ebef8a868fc3d55a94 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_chipcommon.c
-+++ linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-@@ -403,6 +403,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+--- a/drivers/ssb/driver_chipcommon.c
++++ b/drivers/ssb/driver_chipcommon.c
+@@ -403,6 +403,7 @@
        unsigned int irq;
        u32 baud_base, div;
        u32 i, n;
        unsigned int irq;
        u32 baud_base, div;
        u32 i, n;
@@ -10,7 +8,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
  
        plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        irq = ssb_mips_irq(cc->dev);
  
        plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
        irq = ssb_mips_irq(cc->dev);
-@@ -414,14 +415,39 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -414,14 +415,39 @@
                                                chipco_read32(cc, SSB_CHIPCO_CLOCK_M2));
                div = 1;
        } else {
                                                chipco_read32(cc, SSB_CHIPCO_CLOCK_M2));
                div = 1;
        } else {
@@ -53,7 +51,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
                        /* Internal backplane clock */
                        baud_base = ssb_clockspeed(bus);
                        div = chipco_read32(cc, SSB_CHIPCO_CLKDIV)
                        /* Internal backplane clock */
                        baud_base = ssb_clockspeed(bus);
                        div = chipco_read32(cc, SSB_CHIPCO_CLKDIV)
-@@ -433,7 +459,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -433,7 +459,7 @@
                }
  
                /* Clock source depends on strapping if UartClkOverride is unset */
                }
  
                /* Clock source depends on strapping if UartClkOverride is unset */
@@ -62,7 +60,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
                    !(chipco_read32(cc, SSB_CHIPCO_CORECTL) & SSB_CHIPCO_CORECTL_UARTCLK0)) {
                        if ((cc->capabilities & SSB_CHIPCO_CAP_UARTCLK) ==
                            SSB_CHIPCO_CAP_UARTCLK_INT) {
                    !(chipco_read32(cc, SSB_CHIPCO_CORECTL) & SSB_CHIPCO_CORECTL_UARTCLK0)) {
                        if ((cc->capabilities & SSB_CHIPCO_CAP_UARTCLK) ==
                            SSB_CHIPCO_CAP_UARTCLK_INT) {
-@@ -455,7 +481,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -455,7 +481,7 @@
                cc_mmio = cc->dev->bus->mmio + (cc->dev->core_index * SSB_CORE_SIZE);
                uart_regs = cc_mmio + SSB_CHIPCO_UART0_DATA;
                /* Offset changed at after rev 0 */
                cc_mmio = cc->dev->bus->mmio + (cc->dev->core_index * SSB_CORE_SIZE);
                uart_regs = cc_mmio + SSB_CHIPCO_UART0_DATA;
                /* Offset changed at after rev 0 */
@@ -71,10 +69,8 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
                        uart_regs += (i * 8);
                else
                        uart_regs += (i * 256);
                        uart_regs += (i * 8);
                else
                        uart_regs += (i * 256);
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_chipcommon.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
+--- a/include/linux/ssb/ssb_driver_chipcommon.h
++++ b/include/linux/ssb/ssb_driver_chipcommon.h
 @@ -51,9 +51,12 @@
  #define  SSB_CHIPCO_CAP_JTAGM         0x00400000      /* JTAG master present */
  #define  SSB_CHIPCO_CAP_BROM          0x00800000      /* Internal boot ROM active */
 @@ -51,9 +51,12 @@
  #define  SSB_CHIPCO_CAP_JTAGM         0x00400000      /* JTAG master present */
  #define  SSB_CHIPCO_CAP_BROM          0x00800000      /* Internal boot ROM active */
index de1c1a91a925a478269d56d38d96fa9fa72fd6f9..f0a8772ced42b7cb57f78876203473ab80faf109 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/Kconfig
-+++ linux-2.6.23.17/drivers/ssb/Kconfig
-@@ -105,6 +105,12 @@ config SSB_DRIVER_MIPS
+--- a/drivers/ssb/Kconfig
++++ b/drivers/ssb/Kconfig
+@@ -105,6 +105,12 @@
  
          If unsure, say N
  
  
          If unsure, say N
  
@@ -15,10 +13,8 @@ Index: linux-2.6.23.17/drivers/ssb/Kconfig
  config SSB_DRIVER_EXTIF
        bool "SSB Broadcom EXTIF core driver (EXPERIMENTAL)"
        depends on SSB_DRIVER_MIPS && EXPERIMENTAL
  config SSB_DRIVER_EXTIF
        bool "SSB Broadcom EXTIF core driver (EXPERIMENTAL)"
        depends on SSB_DRIVER_MIPS && EXPERIMENTAL
-Index: linux-2.6.23.17/drivers/ssb/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/Makefile
-+++ linux-2.6.23.17/drivers/ssb/Makefile
+--- a/drivers/ssb/Makefile
++++ b/drivers/ssb/Makefile
 @@ -1,5 +1,6 @@
  # core
  ssb-y                                 += main.o scan.o
 @@ -1,5 +1,6 @@
  # core
  ssb-y                                 += main.o scan.o
@@ -26,11 +22,9 @@ Index: linux-2.6.23.17/drivers/ssb/Makefile
  
  # host support
  ssb-$(CONFIG_SSB_PCIHOST)             += pci.o pcihost_wrapper.o
  
  # host support
  ssb-$(CONFIG_SSB_PCIHOST)             += pci.o pcihost_wrapper.o
-Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_extif.c
-+++ linux-2.6.23.17/drivers/ssb/driver_extif.c
-@@ -37,6 +37,12 @@ static inline u32 extif_write32_masked(s
+--- a/drivers/ssb/driver_extif.c
++++ b/drivers/ssb/driver_extif.c
+@@ -37,6 +37,12 @@
        return value;
  }
  
        return value;
  }
  
@@ -43,10 +37,8 @@ Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
  #ifdef CONFIG_SSB_SERIAL
  static bool serial_exists(u8 *regs)
  {
  #ifdef CONFIG_SSB_SERIAL
  static bool serial_exists(u8 *regs)
  {
-Index: linux-2.6.23.17/drivers/ssb/embedded.c
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/drivers/ssb/embedded.c
++++ b/drivers/ssb/embedded.c
 @@ -0,0 +1,26 @@
 +/*
 + * Sonics Silicon Backplane
 @@ -0,0 +1,26 @@
 +/*
 + * Sonics Silicon Backplane
@@ -74,11 +66,9 @@ Index: linux-2.6.23.17/drivers/ssb/embedded.c
 +      }
 +      return -ENODEV;
 +}
 +      }
 +      return -ENODEV;
 +}
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_chipcommon.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
-@@ -360,6 +360,11 @@ struct ssb_chipcommon {
+--- a/include/linux/ssb/ssb_driver_chipcommon.h
++++ b/include/linux/ssb/ssb_driver_chipcommon.h
+@@ -360,6 +360,11 @@
        u16 fast_pwrup_delay;
  };
  
        u16 fast_pwrup_delay;
  };
  
@@ -90,11 +80,9 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_chipcommon.h
  extern void ssb_chipcommon_init(struct ssb_chipcommon *cc);
  
  #include <linux/pm.h>
  extern void ssb_chipcommon_init(struct ssb_chipcommon *cc);
  
  #include <linux/pm.h>
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_extif.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
-@@ -178,6 +178,9 @@ u32 ssb_extif_gpio_outen(struct ssb_exti
+--- a/include/linux/ssb/ssb_driver_extif.h
++++ b/include/linux/ssb/ssb_driver_extif.h
+@@ -178,6 +178,9 @@
  u32 ssb_extif_gpio_polarity(struct ssb_extif *extif, u32 mask, u32 value);
  u32 ssb_extif_gpio_intmask(struct ssb_extif *extif, u32 mask, u32 value);
  
  u32 ssb_extif_gpio_polarity(struct ssb_extif *extif, u32 mask, u32 value);
  u32 ssb_extif_gpio_intmask(struct ssb_extif *extif, u32 mask, u32 value);
  
@@ -104,7 +92,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
  #ifdef CONFIG_SSB_SERIAL
  extern int ssb_extif_serial_init(struct ssb_extif *extif,
                                 struct ssb_serial_port *ports);
  #ifdef CONFIG_SSB_SERIAL
  extern int ssb_extif_serial_init(struct ssb_extif *extif,
                                 struct ssb_serial_port *ports);
-@@ -201,5 +204,11 @@ void ssb_extif_get_clockcontrol(struct s
+@@ -201,5 +204,11 @@
  {
  }
  
  {
  }
  
@@ -116,10 +104,8 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_extif.h
 +
  #endif /* CONFIG_SSB_DRIVER_EXTIF */
  #endif /* LINUX_SSB_EXTIFCORE_H_ */
 +
  #endif /* CONFIG_SSB_DRIVER_EXTIF */
  #endif /* LINUX_SSB_EXTIFCORE_H_ */
-Index: linux-2.6.23.17/include/linux/ssb/ssb_embedded.h
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/include/linux/ssb/ssb_embedded.h
++++ b/include/linux/ssb/ssb_embedded.h
 @@ -0,0 +1,10 @@
 +#ifndef LINUX_SSB_EMBEDDED_H_
 +#define LINUX_SSB_EMBEDDED_H_
 @@ -0,0 +1,10 @@
 +#ifndef LINUX_SSB_EMBEDDED_H_
 +#define LINUX_SSB_EMBEDDED_H_
index 0963bde7449bbde52a94ee29a88904db9fec7c40..3b0e6f6a43b58eb0c69875aa236b4efc20f0998a 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -1163,7 +1163,9 @@ static int __init ssb_modinit(void)
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -1163,7 +1163,9 @@
  /* ssb must be initialized after PCI but before the ssb drivers.
   * That means we must use some initcall between subsys_initcall
   * and device_initcall. */
  /* ssb must be initialized after PCI but before the ssb drivers.
   * That means we must use some initcall between subsys_initcall
   * and device_initcall. */
index 5b96c29952f0f3f37b5bc4ee0ffb97da33a16228..ca0699122c62468dfc432e67286b2084b5e415ca 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_chipcommon.c
-+++ linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
-@@ -361,37 +361,31 @@ u32 ssb_chipco_gpio_in(struct ssb_chipco
+--- a/drivers/ssb/driver_chipcommon.c
++++ b/drivers/ssb/driver_chipcommon.c
+@@ -361,37 +361,31 @@
  {
        return chipco_read32(cc, SSB_CHIPCO_GPIOIN) & mask;
  }
  {
        return chipco_read32(cc, SSB_CHIPCO_GPIOIN) & mask;
  }
@@ -40,11 +38,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_chipcommon.c
  
  #ifdef CONFIG_SSB_SERIAL
  int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
  
  #ifdef CONFIG_SSB_SERIAL
  int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
-Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_extif.c
-+++ linux-2.6.23.17/drivers/ssb/driver_extif.c
-@@ -122,30 +122,25 @@ u32 ssb_extif_gpio_in(struct ssb_extif *
+--- a/drivers/ssb/driver_extif.c
++++ b/drivers/ssb/driver_extif.c
+@@ -122,30 +122,25 @@
  {
        return extif_read32(extif, SSB_EXTIF_GPIO_IN) & mask;
  }
  {
        return extif_read32(extif, SSB_EXTIF_GPIO_IN) & mask;
  }
@@ -75,10 +71,8 @@ Index: linux-2.6.23.17/drivers/ssb/driver_extif.c
        return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
  }
 -EXPORT_SYMBOL(ssb_extif_gpio_intmask);
        return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
  }
 -EXPORT_SYMBOL(ssb_extif_gpio_intmask);
-Index: linux-2.6.23.17/drivers/ssb/embedded.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/embedded.c
-+++ linux-2.6.23.17/drivers/ssb/embedded.c
+--- a/drivers/ssb/embedded.c
++++ b/drivers/ssb/embedded.c
 @@ -11,6 +11,8 @@
  #include <linux/ssb/ssb.h>
  #include <linux/ssb/ssb_embedded.h>
 @@ -11,6 +11,8 @@
  #include <linux/ssb/ssb.h>
  #include <linux/ssb/ssb_embedded.h>
@@ -88,7 +82,7 @@ Index: linux-2.6.23.17/drivers/ssb/embedded.c
  
  int ssb_watchdog_timer_set(struct ssb_bus *bus, u32 ticks)
  {
  
  int ssb_watchdog_timer_set(struct ssb_bus *bus, u32 ticks)
  {
-@@ -24,3 +26,107 @@ int ssb_watchdog_timer_set(struct ssb_bu
+@@ -24,3 +26,107 @@
        }
        return -ENODEV;
  }
        }
        return -ENODEV;
  }
@@ -196,11 +190,9 @@ Index: linux-2.6.23.17/drivers/ssb/embedded.c
 +      return res;
 +}
 +EXPORT_SYMBOL(ssb_gpio_polarity);
 +      return res;
 +}
 +EXPORT_SYMBOL(ssb_gpio_polarity);
-Index: linux-2.6.23.17/include/linux/ssb/ssb.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb.h
-@@ -283,6 +283,11 @@ struct ssb_bus {
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -283,6 +283,11 @@
        /* Contents of the SPROM. */
        struct ssb_sprom sprom;
  
        /* Contents of the SPROM. */
        struct ssb_sprom sprom;
  
@@ -212,10 +204,8 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
        /* Internal-only stuff follows. Do not touch. */
        struct list_head list;
  #ifdef CONFIG_SSB_DEBUG
        /* Internal-only stuff follows. Do not touch. */
        struct list_head list;
  #ifdef CONFIG_SSB_DEBUG
-Index: linux-2.6.23.17/include/linux/ssb/ssb_embedded.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_embedded.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_embedded.h
+--- a/include/linux/ssb/ssb_embedded.h
++++ b/include/linux/ssb/ssb_embedded.h
 @@ -7,4 +7,12 @@
  
  extern int ssb_watchdog_timer_set(struct ssb_bus *bus, u32 ticks);
 @@ -7,4 +7,12 @@
  
  extern int ssb_watchdog_timer_set(struct ssb_bus *bus, u32 ticks);
@@ -229,11 +219,9 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_embedded.h
 +u32 ssb_gpio_polarity(struct ssb_bus *bus, u32 mask, u32 value);
 +
  #endif /* LINUX_SSB_EMBEDDED_H_ */
 +u32 ssb_gpio_polarity(struct ssb_bus *bus, u32 mask, u32 value);
 +
  #endif /* LINUX_SSB_EMBEDDED_H_ */
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -571,6 +571,9 @@ static int ssb_bus_register(struct ssb_b
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -571,6 +571,9 @@
  
        spin_lock_init(&bus->bar_lock);
        INIT_LIST_HEAD(&bus->list);
  
        spin_lock_init(&bus->bar_lock);
        INIT_LIST_HEAD(&bus->list);
index 5dea9b75600d47c11062f168a594d3ddc68c524e..9f93572a9539d025a3a524faa9105b0ac1e93b85 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_pcicore.c
-+++ linux-2.6.23.17/drivers/ssb/driver_pcicore.c
+--- a/drivers/ssb/driver_pcicore.c
++++ b/drivers/ssb/driver_pcicore.c
 @@ -11,6 +11,7 @@
  #include <linux/ssb/ssb.h>
  #include <linux/pci.h>
 @@ -11,6 +11,7 @@
  #include <linux/ssb/ssb.h>
  #include <linux/pci.h>
@@ -10,7 +8,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  
  #include "ssb_private.h"
  
  
  #include "ssb_private.h"
  
-@@ -27,6 +28,18 @@ void pcicore_write32(struct ssb_pcicore 
+@@ -27,6 +28,18 @@
        ssb_write32(pc->dev, offset, value);
  }
  
        ssb_write32(pc->dev, offset, value);
  }
  
@@ -29,7 +27,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  /**************************************************
   * Code for hostmode operation.
   **************************************************/
  /**************************************************
   * Code for hostmode operation.
   **************************************************/
-@@ -123,8 +136,10 @@ static u32 get_cfgspace_addr(struct ssb_
+@@ -123,8 +136,10 @@
        u32 addr = 0;
        u32 tmp;
  
        u32 addr = 0;
        u32 tmp;
  
@@ -41,7 +39,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
        if (bus == 0) {
                /* Type 0 transaction */
                if (unlikely(dev >= SSB_PCI_SLOT_MAX))
        if (bus == 0) {
                /* Type 0 transaction */
                if (unlikely(dev >= SSB_PCI_SLOT_MAX))
-@@ -324,7 +339,16 @@ static void ssb_pcicore_init_hostmode(st
+@@ -324,7 +339,16 @@
        pcicore_write32(pc, SSB_PCICORE_ARBCTL, val);
        udelay(1); /* Assertion time demanded by the PCI standard */
  
        pcicore_write32(pc, SSB_PCICORE_ARBCTL, val);
        udelay(1); /* Assertion time demanded by the PCI standard */
  
@@ -59,11 +57,9 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  
        /* 64MB I/O window */
        pcicore_write32(pc, SSB_PCICORE_SBTOPCI0,
  
        /* 64MB I/O window */
        pcicore_write32(pc, SSB_PCICORE_SBTOPCI0,
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -559,6 +559,7 @@ static int ssb_fetch_invariants(struct s
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -559,6 +559,7 @@
                goto out;
        memcpy(&bus->boardinfo, &iv.boardinfo, sizeof(iv.boardinfo));
        memcpy(&bus->sprom, &iv.sprom, sizeof(iv.sprom));
                goto out;
        memcpy(&bus->boardinfo, &iv.boardinfo, sizeof(iv.boardinfo));
        memcpy(&bus->sprom, &iv.sprom, sizeof(iv.sprom));
@@ -71,11 +67,9 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
  out:
        return err;
  }
  out:
        return err;
  }
-Index: linux-2.6.23.17/include/linux/ssb/ssb.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb.h
-@@ -282,6 +282,8 @@ struct ssb_bus {
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -282,6 +282,8 @@
        struct ssb_boardinfo boardinfo;
        /* Contents of the SPROM. */
        struct ssb_sprom sprom;
        struct ssb_boardinfo boardinfo;
        /* Contents of the SPROM. */
        struct ssb_sprom sprom;
@@ -84,7 +78,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
  
  #ifdef CONFIG_SSB_EMBEDDED
        /* Lock for GPIO register access. */
  
  #ifdef CONFIG_SSB_EMBEDDED
        /* Lock for GPIO register access. */
-@@ -299,8 +301,13 @@ struct ssb_bus {
+@@ -299,8 +301,13 @@
  
  /* The initialization-invariants. */
  struct ssb_init_invariants {
  
  /* The initialization-invariants. */
  struct ssb_init_invariants {
@@ -98,10 +92,8 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
  };
  /* Type of function to fetch the invariants. */
  typedef int (*ssb_invariants_func_t)(struct ssb_bus *bus,
  };
  /* Type of function to fetch the invariants. */
  typedef int (*ssb_invariants_func_t)(struct ssb_bus *bus,
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_pci.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
+--- a/include/linux/ssb/ssb_driver_pci.h
++++ b/include/linux/ssb/ssb_driver_pci.h
 @@ -51,6 +51,11 @@
  #define  SSB_PCICORE_SBTOPCI1_MASK    0xFC000000
  #define SSB_PCICORE_SBTOPCI2          0x0108  /* Backplane to PCI translation 2 (sbtopci2) */
 @@ -51,6 +51,11 @@
  #define  SSB_PCICORE_SBTOPCI1_MASK    0xFC000000
  #define SSB_PCICORE_SBTOPCI2          0x0108  /* Backplane to PCI translation 2 (sbtopci2) */
index 939fed2f953556c9d12341b2ef5a58e176b3fb1a..cd60df8bf63a898c7fa148978e3a05ec99997007 100644 (file)
@@ -1,9 +1,7 @@
 Add support for 8bit reads/writes to SSB.
 Add support for 8bit reads/writes to SSB.
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -507,6 +507,14 @@ error:
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -507,6 +507,14 @@
        return err;
  }
  
        return err;
  }
  
@@ -18,7 +16,7 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
  static u16 ssb_ssb_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
  static u16 ssb_ssb_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -523,6 +531,14 @@ static u32 ssb_ssb_read32(struct ssb_dev
+@@ -523,6 +531,14 @@
        return readl(bus->mmio + offset);
  }
  
        return readl(bus->mmio + offset);
  }
  
@@ -33,7 +31,7 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
  static void ssb_ssb_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
  static void ssb_ssb_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -541,8 +557,10 @@ static void ssb_ssb_write32(struct ssb_d
+@@ -541,8 +557,10 @@
  
  /* Ops for the plain SSB bus without a host-device (no PCI or PCMCIA). */
  static const struct ssb_bus_ops ssb_ssb_ops = {
  
  /* Ops for the plain SSB bus without a host-device (no PCI or PCMCIA). */
  static const struct ssb_bus_ops ssb_ssb_ops = {
@@ -44,11 +42,9 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
        .write16        = ssb_ssb_write16,
        .write32        = ssb_ssb_write32,
  };
        .write16        = ssb_ssb_write16,
        .write32        = ssb_ssb_write32,
  };
-Index: linux-2.6.23.17/drivers/ssb/pci.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/pci.c
-+++ linux-2.6.23.17/drivers/ssb/pci.c
-@@ -572,6 +572,19 @@ static inline int ssb_pci_assert_buspowe
+--- a/drivers/ssb/pci.c
++++ b/drivers/ssb/pci.c
+@@ -572,6 +572,19 @@
  }
  #endif /* DEBUG */
  
  }
  #endif /* DEBUG */
  
@@ -68,7 +64,7 @@ Index: linux-2.6.23.17/drivers/ssb/pci.c
  static u16 ssb_pci_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
  static u16 ssb_pci_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -598,6 +611,19 @@ static u32 ssb_pci_read32(struct ssb_dev
+@@ -598,6 +611,19 @@
        return ioread32(bus->mmio + offset);
  }
  
        return ioread32(bus->mmio + offset);
  }
  
@@ -88,7 +84,7 @@ Index: linux-2.6.23.17/drivers/ssb/pci.c
  static void ssb_pci_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
  static void ssb_pci_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -626,8 +652,10 @@ static void ssb_pci_write32(struct ssb_d
+@@ -626,8 +652,10 @@
  
  /* Not "static", as it's used in main.c */
  const struct ssb_bus_ops ssb_pci_ops = {
  
  /* Not "static", as it's used in main.c */
  const struct ssb_bus_ops ssb_pci_ops = {
@@ -99,11 +95,9 @@ Index: linux-2.6.23.17/drivers/ssb/pci.c
        .write16        = ssb_pci_write16,
        .write32        = ssb_pci_write32,
  };
        .write16        = ssb_pci_write16,
        .write32        = ssb_pci_write32,
  };
-Index: linux-2.6.23.17/drivers/ssb/pcmcia.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/pcmcia.c
-+++ linux-2.6.23.17/drivers/ssb/pcmcia.c
-@@ -172,6 +172,22 @@ static int select_core_and_segment(struc
+--- a/drivers/ssb/pcmcia.c
++++ b/drivers/ssb/pcmcia.c
+@@ -172,6 +172,22 @@
        return 0;
  }
  
        return 0;
  }
  
@@ -126,7 +120,7 @@ Index: linux-2.6.23.17/drivers/ssb/pcmcia.c
  static u16 ssb_pcmcia_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
  static u16 ssb_pcmcia_read16(struct ssb_device *dev, u16 offset)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -206,6 +222,20 @@ static u32 ssb_pcmcia_read32(struct ssb_
+@@ -206,6 +222,20 @@
        return (lo | (hi << 16));
  }
  
        return (lo | (hi << 16));
  }
  
@@ -147,7 +141,7 @@ Index: linux-2.6.23.17/drivers/ssb/pcmcia.c
  static void ssb_pcmcia_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
  static void ssb_pcmcia_write16(struct ssb_device *dev, u16 offset, u16 value)
  {
        struct ssb_bus *bus = dev->bus;
-@@ -238,8 +268,10 @@ static void ssb_pcmcia_write32(struct ss
+@@ -238,8 +268,10 @@
  
  /* Not "static", as it's used in main.c */
  const struct ssb_bus_ops ssb_pcmcia_ops = {
  
  /* Not "static", as it's used in main.c */
  const struct ssb_bus_ops ssb_pcmcia_ops = {
@@ -158,11 +152,9 @@ Index: linux-2.6.23.17/drivers/ssb/pcmcia.c
        .write16        = ssb_pcmcia_write16,
        .write32        = ssb_pcmcia_write32,
  };
        .write16        = ssb_pcmcia_write16,
        .write32        = ssb_pcmcia_write32,
  };
-Index: linux-2.6.23.17/include/linux/ssb/ssb.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb.h
-@@ -72,8 +72,10 @@ struct ssb_device;
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -72,8 +72,10 @@
  /* Lowlevel read/write operations on the device MMIO.
   * Internal, don't use that outside of ssb. */
  struct ssb_bus_ops {
  /* Lowlevel read/write operations on the device MMIO.
   * Internal, don't use that outside of ssb. */
  struct ssb_bus_ops {
@@ -173,7 +165,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
        void (*write16)(struct ssb_device *dev, u16 offset, u16 value);
        void (*write32)(struct ssb_device *dev, u16 offset, u32 value);
  };
        void (*write16)(struct ssb_device *dev, u16 offset, u16 value);
        void (*write32)(struct ssb_device *dev, u16 offset, u32 value);
  };
-@@ -344,6 +346,10 @@ void ssb_device_disable(struct ssb_devic
+@@ -344,6 +346,10 @@
  
  
  /* Device MMIO register read/write functions. */
  
  
  /* Device MMIO register read/write functions. */
@@ -184,7 +176,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
  static inline u16 ssb_read16(struct ssb_device *dev, u16 offset)
  {
        return dev->ops->read16(dev, offset);
  static inline u16 ssb_read16(struct ssb_device *dev, u16 offset)
  {
        return dev->ops->read16(dev, offset);
-@@ -352,6 +358,10 @@ static inline u32 ssb_read32(struct ssb_
+@@ -352,6 +358,10 @@
  {
        return dev->ops->read32(dev, offset);
  }
  {
        return dev->ops->read32(dev, offset);
  }
index a52160a872fe4254ade4ee86754bedc97b041864..b6b5c2619a0eda31a78d14cbd2dcb11e0df3f797 100644 (file)
@@ -1,10 +1,8 @@
 Allow registering PCI devices after early boot.
 
 This is an ugly hack and needs to be rewritten before going upstream.
 Allow registering PCI devices after early boot.
 
 This is an ugly hack and needs to be rewritten before going upstream.
-Index: linux-2.6.23.17/arch/mips/pci/pci.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/pci/pci.c
-+++ linux-2.6.23.17/arch/mips/pci/pci.c
+--- a/arch/mips/pci/pci.c
++++ b/arch/mips/pci/pci.c
 @@ -21,6 +21,17 @@
   */
  int pci_probe_only;
 @@ -21,6 +21,17 @@
   */
  int pci_probe_only;
@@ -23,7 +21,7 @@ Index: linux-2.6.23.17/arch/mips/pci/pci.c
  #define PCI_ASSIGN_ALL_BUSSES 1
  
  unsigned int pci_probe = PCI_ASSIGN_ALL_BUSSES;
  #define PCI_ASSIGN_ALL_BUSSES 1
  
  unsigned int pci_probe = PCI_ASSIGN_ALL_BUSSES;
-@@ -75,8 +86,32 @@ pcibios_align_resource(void *data, struc
+@@ -75,8 +86,32 @@
        res->start = start;
  }
  
        res->start = start;
  }
  
@@ -57,7 +55,7 @@ Index: linux-2.6.23.17/arch/mips/pci/pci.c
        if (request_resource(&iomem_resource, hose->mem_resource) < 0)
                goto out;
        if (request_resource(&ioport_resource, hose->io_resource) < 0) {
        if (request_resource(&iomem_resource, hose->mem_resource) < 0)
                goto out;
        if (request_resource(&ioport_resource, hose->io_resource) < 0) {
-@@ -84,9 +119,6 @@ void __devinit register_pci_controller(s
+@@ -84,9 +119,6 @@
                goto out;
        }
  
                goto out;
        }
  
@@ -67,7 +65,7 @@ Index: linux-2.6.23.17/arch/mips/pci/pci.c
        /*
         * Do not panic here but later - this might hapen before console init.
         */
        /*
         * Do not panic here but later - this might hapen before console init.
         */
-@@ -94,41 +126,47 @@ void __devinit register_pci_controller(s
+@@ -94,41 +126,47 @@
                printk(KERN_WARNING
                       "registering PCI controller with io_map_base unset\n");
        }
                printk(KERN_WARNING
                       "registering PCI controller with io_map_base unset\n");
        }
@@ -138,7 +136,7 @@ Index: linux-2.6.23.17/arch/mips/pci/pci.c
  
        /* Scan all of the recorded PCI controllers.  */
        for (next_busno = 0, hose = hose_head; hose; hose = hose->next) {
  
        /* Scan all of the recorded PCI controllers.  */
        for (next_busno = 0, hose = hose_head; hose; hose = hose->next) {
-@@ -157,6 +195,7 @@ static int __init pcibios_init(void)
+@@ -157,6 +195,7 @@
        if (!pci_probe_only)
                pci_assign_unassigned_resources();
        pci_fixup_irqs(common_swizzle, pcibios_map_irq);
        if (!pci_probe_only)
                pci_assign_unassigned_resources();
        pci_fixup_irqs(common_swizzle, pcibios_map_irq);
@@ -146,11 +144,9 @@ Index: linux-2.6.23.17/arch/mips/pci/pci.c
  
        return 0;
  }
  
        return 0;
  }
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
-@@ -1185,9 +1185,7 @@ static int __init ssb_modinit(void)
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
+@@ -1185,9 +1185,7 @@
  /* ssb must be initialized after PCI but before the ssb drivers.
   * That means we must use some initcall between subsys_initcall
   * and device_initcall. */
  /* ssb must be initialized after PCI but before the ssb drivers.
   * That means we must use some initcall between subsys_initcall
   * and device_initcall. */
index c396395fd3c70983b12051569bc03dd8242e5812..9e308133cb3222c8c4c36efe4f4bdfd17a0a94e9 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-2.6.23.17/drivers/ssb/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/Kconfig
-+++ linux-2.6.23.17/drivers/ssb/Kconfig
-@@ -120,4 +120,13 @@ config SSB_DRIVER_EXTIF
+--- a/drivers/ssb/Kconfig
++++ b/drivers/ssb/Kconfig
+@@ -120,4 +120,13 @@
  
          If unsure, say N
  
  
          If unsure, say N
  
@@ -16,11 +14,9 @@ Index: linux-2.6.23.17/drivers/ssb/Kconfig
 +        If unsure, say N
 +
  endmenu
 +        If unsure, say N
 +
  endmenu
-Index: linux-2.6.23.17/drivers/ssb/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/Makefile
-+++ linux-2.6.23.17/drivers/ssb/Makefile
-@@ -11,6 +11,7 @@ ssb-y                                        += driver_chipcommon.o
+--- a/drivers/ssb/Makefile
++++ b/drivers/ssb/Makefile
+@@ -11,6 +11,7 @@
  ssb-$(CONFIG_SSB_DRIVER_MIPS)         += driver_mipscore.o
  ssb-$(CONFIG_SSB_DRIVER_EXTIF)                += driver_extif.o
  ssb-$(CONFIG_SSB_DRIVER_PCICORE)      += driver_pcicore.o
  ssb-$(CONFIG_SSB_DRIVER_MIPS)         += driver_mipscore.o
  ssb-$(CONFIG_SSB_DRIVER_EXTIF)                += driver_extif.o
  ssb-$(CONFIG_SSB_DRIVER_PCICORE)      += driver_pcicore.o
@@ -28,10 +24,8 @@ Index: linux-2.6.23.17/drivers/ssb/Makefile
  
  # b43 pci-ssb-bridge driver
  # Not strictly a part of SSB, but kept here for convenience
  
  # b43 pci-ssb-bridge driver
  # Not strictly a part of SSB, but kept here for convenience
-Index: linux-2.6.23.17/drivers/ssb/driver_gige.c
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/drivers/ssb/driver_gige.c
++++ b/drivers/ssb/driver_gige.c
 @@ -0,0 +1,294 @@
 +/*
 + * Sonics Silicon Backplane
 @@ -0,0 +1,294 @@
 +/*
 + * Sonics Silicon Backplane
@@ -327,10 +321,8 @@ Index: linux-2.6.23.17/drivers/ssb/driver_gige.c
 +{
 +      return ssb_driver_register(&ssb_gige_driver);
 +}
 +{
 +      return ssb_driver_register(&ssb_gige_driver);
 +}
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_gige.h
-===================================================================
 --- /dev/null
 --- /dev/null
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_gige.h
++++ b/include/linux/ssb/ssb_driver_gige.h
 @@ -0,0 +1,174 @@
 +#ifndef LINUX_SSB_DRIVER_GIGE_H_
 +#define LINUX_SSB_DRIVER_GIGE_H_
 @@ -0,0 +1,174 @@
 +#ifndef LINUX_SSB_DRIVER_GIGE_H_
 +#define LINUX_SSB_DRIVER_GIGE_H_
@@ -506,11 +498,9 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_gige.h
 +
 +#endif /* CONFIG_SSB_DRIVER_GIGE */
 +#endif /* LINUX_SSB_DRIVER_GIGE_H_ */
 +
 +#endif /* CONFIG_SSB_DRIVER_GIGE */
 +#endif /* LINUX_SSB_DRIVER_GIGE_H_ */
-Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_pcicore.c
-+++ linux-2.6.23.17/drivers/ssb/driver_pcicore.c
-@@ -60,74 +60,6 @@ static DEFINE_SPINLOCK(cfgspace_lock);
+--- a/drivers/ssb/driver_pcicore.c
++++ b/drivers/ssb/driver_pcicore.c
+@@ -60,74 +60,6 @@
  /* Core to access the external PCI config space. Can only have one. */
  static struct ssb_pcicore *extpci_core;
  
  /* Core to access the external PCI config space. Can only have one. */
  static struct ssb_pcicore *extpci_core;
  
@@ -585,7 +575,7 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  
  static u32 get_cfgspace_addr(struct ssb_pcicore *pc,
                             unsigned int bus, unsigned int dev,
  
  static u32 get_cfgspace_addr(struct ssb_pcicore *pc,
                             unsigned int bus, unsigned int dev,
-@@ -317,6 +249,92 @@ static struct pci_controller ssb_pcicore
+@@ -317,6 +249,92 @@
        .mem_offset     = 0x24000000,
  };
  
        .mem_offset     = 0x24000000,
  };
  
@@ -678,10 +668,8 @@ Index: linux-2.6.23.17/drivers/ssb/driver_pcicore.c
  static void ssb_pcicore_init_hostmode(struct ssb_pcicore *pc)
  {
        u32 val;
  static void ssb_pcicore_init_hostmode(struct ssb_pcicore *pc)
  {
        u32 val;
-Index: linux-2.6.23.17/drivers/ssb/embedded.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/embedded.c
-+++ linux-2.6.23.17/drivers/ssb/embedded.c
+--- a/drivers/ssb/embedded.c
++++ b/drivers/ssb/embedded.c
 @@ -10,6 +10,9 @@
  
  #include <linux/ssb/ssb.h>
 @@ -10,6 +10,9 @@
  
  #include <linux/ssb/ssb.h>
@@ -692,7 +680,7 @@ Index: linux-2.6.23.17/drivers/ssb/embedded.c
  
  #include "ssb_private.h"
  
  
  #include "ssb_private.h"
  
-@@ -130,3 +133,90 @@ u32 ssb_gpio_polarity(struct ssb_bus *bu
+@@ -130,3 +133,90 @@
        return res;
  }
  EXPORT_SYMBOL(ssb_gpio_polarity);
        return res;
  }
  EXPORT_SYMBOL(ssb_gpio_polarity);
@@ -783,11 +771,9 @@ Index: linux-2.6.23.17/drivers/ssb/embedded.c
 +
 +      return -ENODEV;
 +}
 +
 +      return -ENODEV;
 +}
-Index: linux-2.6.23.17/include/linux/ssb/ssb.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb.h
-@@ -422,5 +422,12 @@ extern int ssb_bus_powerup(struct ssb_bu
+--- a/include/linux/ssb/ssb.h
++++ b/include/linux/ssb/ssb.h
+@@ -422,5 +422,12 @@
  extern u32 ssb_admatch_base(u32 adm);
  extern u32 ssb_admatch_size(u32 adm);
  
  extern u32 ssb_admatch_base(u32 adm);
  extern u32 ssb_admatch_size(u32 adm);
  
@@ -800,10 +786,8 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb.h
 +#endif /* CONFIG_SSB_EMBEDDED */
  
  #endif /* LINUX_SSB_H_ */
 +#endif /* CONFIG_SSB_EMBEDDED */
  
  #endif /* LINUX_SSB_H_ */
-Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/ssb/ssb_driver_pci.h
-+++ linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
+--- a/include/linux/ssb/ssb_driver_pci.h
++++ b/include/linux/ssb/ssb_driver_pci.h
 @@ -1,6 +1,11 @@
  #ifndef LINUX_SSB_PCICORE_H_
  #define LINUX_SSB_PCICORE_H_
 @@ -1,6 +1,11 @@
  #ifndef LINUX_SSB_PCICORE_H_
  #define LINUX_SSB_PCICORE_H_
@@ -816,7 +800,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
  #ifdef CONFIG_SSB_DRIVER_PCICORE
  
  /* PCI core registers. */
  #ifdef CONFIG_SSB_DRIVER_PCICORE
  
  /* PCI core registers. */
-@@ -88,6 +93,9 @@ extern void ssb_pcicore_init(struct ssb_
+@@ -88,6 +93,9 @@
  extern int ssb_pcicore_dev_irqvecs_enable(struct ssb_pcicore *pc,
                                          struct ssb_device *dev);
  
  extern int ssb_pcicore_dev_irqvecs_enable(struct ssb_pcicore *pc,
                                          struct ssb_device *dev);
  
@@ -826,7 +810,7 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
  
  #else /* CONFIG_SSB_DRIVER_PCICORE */
  
  
  #else /* CONFIG_SSB_DRIVER_PCICORE */
  
-@@ -107,5 +115,16 @@ int ssb_pcicore_dev_irqvecs_enable(struc
+@@ -107,5 +115,16 @@
        return 0;
  }
  
        return 0;
  }
  
@@ -843,10 +827,8 @@ Index: linux-2.6.23.17/include/linux/ssb/ssb_driver_pci.h
 +
  #endif /* CONFIG_SSB_DRIVER_PCICORE */
  #endif /* LINUX_SSB_PCICORE_H_ */
 +
  #endif /* CONFIG_SSB_DRIVER_PCICORE */
  #endif /* LINUX_SSB_PCICORE_H_ */
-Index: linux-2.6.23.17/drivers/ssb/main.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/main.c
-+++ linux-2.6.23.17/drivers/ssb/main.c
+--- a/drivers/ssb/main.c
++++ b/drivers/ssb/main.c
 @@ -14,6 +14,7 @@
  #include <linux/io.h>
  #include <linux/ssb/ssb.h>
 @@ -14,6 +14,7 @@
  #include <linux/io.h>
  #include <linux/ssb/ssb.h>
@@ -855,7 +837,7 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
  #include <linux/dma-mapping.h>
  #include <linux/pci.h>
  
  #include <linux/dma-mapping.h>
  #include <linux/pci.h>
  
-@@ -68,6 +69,25 @@ found:
+@@ -68,6 +69,25 @@
  }
  #endif /* CONFIG_SSB_PCIHOST */
  
  }
  #endif /* CONFIG_SSB_PCIHOST */
  
@@ -881,7 +863,7 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
  static struct ssb_device *ssb_device_get(struct ssb_device *dev)
  {
        if (dev)
  static struct ssb_device *ssb_device_get(struct ssb_device *dev)
  {
        if (dev)
-@@ -1175,7 +1195,14 @@ static int __init ssb_modinit(void)
+@@ -1175,7 +1195,14 @@
        err = b43_pci_ssb_bridge_init();
        if (err) {
                ssb_printk(KERN_ERR "Broadcom 43xx PCI-SSB-bridge "
        err = b43_pci_ssb_bridge_init();
        if (err) {
                ssb_printk(KERN_ERR "Broadcom 43xx PCI-SSB-bridge "
@@ -897,7 +879,7 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
                /* don't fail SSB init because of this */
                err = 0;
        }
                /* don't fail SSB init because of this */
                err = 0;
        }
-@@ -1189,6 +1216,7 @@ fs_initcall(ssb_modinit);
+@@ -1189,6 +1216,7 @@
  
  static void __exit ssb_modexit(void)
  {
  
  static void __exit ssb_modexit(void)
  {
@@ -905,11 +887,9 @@ Index: linux-2.6.23.17/drivers/ssb/main.c
        b43_pci_ssb_bridge_exit();
        bus_unregister(&ssb_bustype);
  }
        b43_pci_ssb_bridge_exit();
        bus_unregister(&ssb_bustype);
  }
-Index: linux-2.6.23.17/drivers/ssb/ssb_private.h
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/ssb_private.h
-+++ linux-2.6.23.17/drivers/ssb/ssb_private.h
-@@ -118,6 +118,8 @@ extern u32 ssb_calc_clock_rate(u32 pllty
+--- a/drivers/ssb/ssb_private.h
++++ b/drivers/ssb/ssb_private.h
+@@ -118,6 +118,8 @@
  extern int ssb_devices_freeze(struct ssb_bus *bus);
  extern int ssb_devices_thaw(struct ssb_bus *bus);
  extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
  extern int ssb_devices_freeze(struct ssb_bus *bus);
  extern int ssb_devices_thaw(struct ssb_bus *bus);
  extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
@@ -918,10 +898,8 @@ Index: linux-2.6.23.17/drivers/ssb/ssb_private.h
  
  /* b43_pci_bridge.c */
  #ifdef CONFIG_SSB_PCIHOST
  
  /* b43_pci_bridge.c */
  #ifdef CONFIG_SSB_PCIHOST
-Index: linux-2.6.23.17/drivers/net/tg3.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/tg3.c
-+++ linux-2.6.23.17/drivers/net/tg3.c
+--- a/drivers/net/tg3.c
++++ b/drivers/net/tg3.c
 @@ -38,6 +38,7 @@
  #include <linux/workqueue.h>
  #include <linux/prefetch.h>
 @@ -38,6 +38,7 @@
  #include <linux/workqueue.h>
  #include <linux/prefetch.h>
@@ -930,7 +908,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  
  #include <net/checksum.h>
  #include <net/ip.h>
  
  #include <net/checksum.h>
  #include <net/ip.h>
-@@ -410,8 +411,9 @@ static void _tw32_flush(struct tg3 *tp, 
+@@ -410,8 +411,9 @@
  static inline void tw32_mailbox_flush(struct tg3 *tp, u32 off, u32 val)
  {
        tp->write32_mbox(tp, off, val);
  static inline void tw32_mailbox_flush(struct tg3 *tp, u32 off, u32 val)
  {
        tp->write32_mbox(tp, off, val);
@@ -942,7 +920,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
                tp->read32_mbox(tp, off);
  }
  
                tp->read32_mbox(tp, off);
  }
  
-@@ -623,7 +625,7 @@ static void tg3_switch_clocks(struct tg3
+@@ -623,7 +625,7 @@
  
  #define PHY_BUSY_LOOPS        5000
  
  
  #define PHY_BUSY_LOOPS        5000
  
@@ -951,7 +929,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  {
        u32 frame_val;
        unsigned int loops;
  {
        u32 frame_val;
        unsigned int loops;
-@@ -637,7 +639,7 @@ static int tg3_readphy(struct tg3 *tp, i
+@@ -637,7 +639,7 @@
  
        *val = 0x0;
  
  
        *val = 0x0;
  
@@ -960,7 +938,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
                      MI_COM_PHY_ADDR_MASK);
        frame_val |= ((reg << MI_COM_REG_ADDR_SHIFT) &
                      MI_COM_REG_ADDR_MASK);
                      MI_COM_PHY_ADDR_MASK);
        frame_val |= ((reg << MI_COM_REG_ADDR_SHIFT) &
                      MI_COM_REG_ADDR_MASK);
-@@ -672,7 +674,12 @@ static int tg3_readphy(struct tg3 *tp, i
+@@ -672,7 +674,12 @@
        return ret;
  }
  
        return ret;
  }
  
@@ -974,7 +952,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  {
        u32 frame_val;
        unsigned int loops;
  {
        u32 frame_val;
        unsigned int loops;
-@@ -688,7 +695,7 @@ static int tg3_writephy(struct tg3 *tp, 
+@@ -688,7 +695,7 @@
                udelay(80);
        }
  
                udelay(80);
        }
  
@@ -983,7 +961,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
                      MI_COM_PHY_ADDR_MASK);
        frame_val |= ((reg << MI_COM_REG_ADDR_SHIFT) &
                      MI_COM_REG_ADDR_MASK);
                      MI_COM_PHY_ADDR_MASK);
        frame_val |= ((reg << MI_COM_REG_ADDR_SHIFT) &
                      MI_COM_REG_ADDR_MASK);
-@@ -721,6 +728,11 @@ static int tg3_writephy(struct tg3 *tp, 
+@@ -721,6 +728,11 @@
        return ret;
  }
  
        return ret;
  }
  
@@ -995,7 +973,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  static void tg3_phy_toggle_automdix(struct tg3 *tp, int enable)
  {
        u32 phy;
  static void tg3_phy_toggle_automdix(struct tg3 *tp, int enable)
  {
        u32 phy;
-@@ -1988,6 +2000,14 @@ static int tg3_setup_copper_phy(struct t
+@@ -1988,6 +2000,14 @@
                tp->link_config.active_duplex = current_duplex;
        }
  
                tp->link_config.active_duplex = current_duplex;
        }
  
@@ -1010,7 +988,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (current_link_up == 1 &&
            (tp->link_config.active_duplex == DUPLEX_FULL) &&
            (tp->link_config.autoneg == AUTONEG_ENABLE)) {
        if (current_link_up == 1 &&
            (tp->link_config.active_duplex == DUPLEX_FULL) &&
            (tp->link_config.autoneg == AUTONEG_ENABLE)) {
-@@ -4813,6 +4833,11 @@ static int tg3_poll_fw(struct tg3 *tp)
+@@ -4813,6 +4833,11 @@
        int i;
        u32 val;
  
        int i;
        u32 val;
  
@@ -1022,7 +1000,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5906) {
                /* Wait up to 20ms for init done. */
                for (i = 0; i < 200; i++) {
        if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5906) {
                /* Wait up to 20ms for init done. */
                for (i = 0; i < 200; i++) {
-@@ -5040,6 +5065,14 @@ static int tg3_chip_reset(struct tg3 *tp
+@@ -5040,6 +5065,14 @@
                tw32(0x5000, 0x400);
        }
  
                tw32(0x5000, 0x400);
        }
  
@@ -1037,7 +1015,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        tw32(GRC_MODE, tp->grc_mode);
  
        if (tp->pci_chip_rev_id == CHIPREV_ID_5705_A0) {
        tw32(GRC_MODE, tp->grc_mode);
  
        if (tp->pci_chip_rev_id == CHIPREV_ID_5705_A0) {
-@@ -5308,9 +5341,12 @@ static int tg3_halt_cpu(struct tg3 *tp, 
+@@ -5308,9 +5341,12 @@
                return -ENODEV;
        }
  
                return -ENODEV;
        }
  
@@ -1053,7 +1031,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        return 0;
  }
  
        return 0;
  }
  
-@@ -5391,6 +5427,11 @@ static int tg3_load_5701_a0_firmware_fix
+@@ -5391,6 +5427,11 @@
        struct fw_info info;
        int err, i;
  
        struct fw_info info;
        int err, i;
  
@@ -1065,7 +1043,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        info.text_base = TG3_FW_TEXT_ADDR;
        info.text_len = TG3_FW_TEXT_LEN;
        info.text_data = &tg3FwText[0];
        info.text_base = TG3_FW_TEXT_ADDR;
        info.text_len = TG3_FW_TEXT_LEN;
        info.text_data = &tg3FwText[0];
-@@ -5949,6 +5990,11 @@ static int tg3_load_tso_firmware(struct 
+@@ -5949,6 +5990,11 @@
        unsigned long cpu_base, cpu_scratch_base, cpu_scratch_size;
        int err, i;
  
        unsigned long cpu_base, cpu_scratch_base, cpu_scratch_size;
        int err, i;
  
@@ -1077,7 +1055,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (tp->tg3_flags2 & TG3_FLG2_HW_TSO)
                return 0;
  
        if (tp->tg3_flags2 & TG3_FLG2_HW_TSO)
                return 0;
  
-@@ -6850,6 +6896,11 @@ static void tg3_timer(unsigned long __op
+@@ -6850,6 +6896,11 @@
  
        spin_lock(&tp->lock);
  
  
        spin_lock(&tp->lock);
  
@@ -1089,7 +1067,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (!(tp->tg3_flags & TG3_FLAG_TAGGED_STATUS)) {
                /* All of this garbage is because when using non-tagged
                 * IRQ status the mailbox/status_block protocol the chip
        if (!(tp->tg3_flags & TG3_FLAG_TAGGED_STATUS)) {
                /* All of this garbage is because when using non-tagged
                 * IRQ status the mailbox/status_block protocol the chip
-@@ -8432,6 +8483,11 @@ static int tg3_test_nvram(struct tg3 *tp
+@@ -8432,6 +8483,11 @@
        u32 *buf, csum, magic;
        int i, j, err = 0, size;
  
        u32 *buf, csum, magic;
        int i, j, err = 0, size;
  
@@ -1101,7 +1079,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (tg3_nvram_read_swab(tp, 0, &magic) != 0)
                return -EIO;
  
        if (tg3_nvram_read_swab(tp, 0, &magic) != 0)
                return -EIO;
  
-@@ -9154,7 +9210,7 @@ static int tg3_ioctl(struct net_device *
+@@ -9154,7 +9210,7 @@
                        return -EAGAIN;
  
                spin_lock_bh(&tp->lock);
                        return -EAGAIN;
  
                spin_lock_bh(&tp->lock);
@@ -1110,7 +1088,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
                spin_unlock_bh(&tp->lock);
  
                data->val_out = mii_regval;
                spin_unlock_bh(&tp->lock);
  
                data->val_out = mii_regval;
-@@ -9173,7 +9229,7 @@ static int tg3_ioctl(struct net_device *
+@@ -9173,7 +9229,7 @@
                        return -EAGAIN;
  
                spin_lock_bh(&tp->lock);
                        return -EAGAIN;
  
                spin_lock_bh(&tp->lock);
@@ -1119,7 +1097,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
                spin_unlock_bh(&tp->lock);
  
                return err;
                spin_unlock_bh(&tp->lock);
  
                return err;
-@@ -9571,6 +9627,12 @@ static void __devinit tg3_get_5906_nvram
+@@ -9571,6 +9627,12 @@
  /* Chips other than 5700/5701 use the NVRAM for fetching info. */
  static void __devinit tg3_nvram_init(struct tg3 *tp)
  {
  /* Chips other than 5700/5701 use the NVRAM for fetching info. */
  static void __devinit tg3_nvram_init(struct tg3 *tp)
  {
@@ -1132,7 +1110,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        tw32_f(GRC_EEPROM_ADDR,
             (EEPROM_ADDR_FSM_RESET |
              (EEPROM_DEFAULT_CLOCK_PERIOD <<
        tw32_f(GRC_EEPROM_ADDR,
             (EEPROM_ADDR_FSM_RESET |
              (EEPROM_DEFAULT_CLOCK_PERIOD <<
-@@ -9706,6 +9768,9 @@ static int tg3_nvram_read(struct tg3 *tp
+@@ -9706,6 +9768,9 @@
  {
        int ret;
  
  {
        int ret;
  
@@ -1142,7 +1120,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (!(tp->tg3_flags & TG3_FLAG_NVRAM))
                return tg3_nvram_read_using_eeprom(tp, offset, val);
  
        if (!(tp->tg3_flags & TG3_FLAG_NVRAM))
                return tg3_nvram_read_using_eeprom(tp, offset, val);
  
-@@ -9938,6 +10003,9 @@ static int tg3_nvram_write_block(struct 
+@@ -9938,6 +10003,9 @@
  {
        int ret;
  
  {
        int ret;
  
@@ -1152,7 +1130,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if (tp->tg3_flags & TG3_FLAG_EEPROM_WRITE_PROT) {
                tw32_f(GRC_LOCAL_CTRL, tp->grc_local_ctrl &
                       ~GRC_LCLCTRL_GPIO_OUTPUT1);
        if (tp->tg3_flags & TG3_FLAG_EEPROM_WRITE_PROT) {
                tw32_f(GRC_LOCAL_CTRL, tp->grc_local_ctrl &
                       ~GRC_LCLCTRL_GPIO_OUTPUT1);
-@@ -10804,7 +10872,6 @@ static int __devinit tg3_get_invariants(
+@@ -10804,7 +10872,6 @@
                tp->write32 = tg3_write_flush_reg32;
        }
  
                tp->write32 = tg3_write_flush_reg32;
        }
  
@@ -1160,7 +1138,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        if ((tp->tg3_flags & TG3_FLAG_TXD_MBOX_HWBUG) ||
            (tp->tg3_flags & TG3_FLAG_MBOX_WRITE_REORDER)) {
                tp->write32_tx_mbox = tg3_write32_tx_mbox;
        if ((tp->tg3_flags & TG3_FLAG_TXD_MBOX_HWBUG) ||
            (tp->tg3_flags & TG3_FLAG_MBOX_WRITE_REORDER)) {
                tp->write32_tx_mbox = tg3_write32_tx_mbox;
-@@ -10840,6 +10907,11 @@ static int __devinit tg3_get_invariants(
+@@ -10840,6 +10907,11 @@
              GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701)))
                tp->tg3_flags |= TG3_FLAG_SRAM_USE_CONFIG;
  
              GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5701)))
                tp->tg3_flags |= TG3_FLAG_SRAM_USE_CONFIG;
  
@@ -1172,7 +1150,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        /* Get eeprom hw config before calling tg3_set_power_state().
         * In particular, the TG3_FLG2_IS_NIC flag must be
         * determined before calling tg3_set_power_state() so that
        /* Get eeprom hw config before calling tg3_set_power_state().
         * In particular, the TG3_FLG2_IS_NIC flag must be
         * determined before calling tg3_set_power_state() so that
-@@ -11184,6 +11256,10 @@ static int __devinit tg3_get_device_addr
+@@ -11184,6 +11256,10 @@
        }
  
        if (!is_valid_ether_addr(&dev->dev_addr[0])) {
        }
  
        if (!is_valid_ether_addr(&dev->dev_addr[0])) {
@@ -1183,7 +1161,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  #ifdef CONFIG_SPARC64
                if (!tg3_get_default_macaddr_sparc(tp))
                        return 0;
  #ifdef CONFIG_SPARC64
                if (!tg3_get_default_macaddr_sparc(tp))
                        return 0;
-@@ -11675,6 +11751,7 @@ static char * __devinit tg3_phy_string(s
+@@ -11675,6 +11751,7 @@
        case PHY_ID_BCM5704:    return "5704";
        case PHY_ID_BCM5705:    return "5705";
        case PHY_ID_BCM5750:    return "5750";
        case PHY_ID_BCM5704:    return "5704";
        case PHY_ID_BCM5705:    return "5705";
        case PHY_ID_BCM5750:    return "5750";
@@ -1191,7 +1169,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
        case PHY_ID_BCM5752:    return "5752";
        case PHY_ID_BCM5714:    return "5714";
        case PHY_ID_BCM5780:    return "5780";
        case PHY_ID_BCM5752:    return "5752";
        case PHY_ID_BCM5714:    return "5714";
        case PHY_ID_BCM5780:    return "5780";
-@@ -11859,6 +11936,13 @@ static int __devinit tg3_init_one(struct
+@@ -11859,6 +11936,13 @@
                tp->msg_enable = tg3_debug;
        else
                tp->msg_enable = TG3_DEF_MSG_ENABLE;
                tp->msg_enable = tg3_debug;
        else
                tp->msg_enable = TG3_DEF_MSG_ENABLE;
@@ -1205,11 +1183,9 @@ Index: linux-2.6.23.17/drivers/net/tg3.c
  
        /* The word/byte swap controls here control register access byte
         * swapping.  DMA data byte swapping is controlled in the GRC_MODE
  
        /* The word/byte swap controls here control register access byte
         * swapping.  DMA data byte swapping is controlled in the GRC_MODE
-Index: linux-2.6.23.17/drivers/net/tg3.h
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/tg3.h
-+++ linux-2.6.23.17/drivers/net/tg3.h
-@@ -2279,6 +2279,10 @@ struct tg3 {
+--- a/drivers/net/tg3.h
++++ b/drivers/net/tg3.h
+@@ -2279,6 +2279,10 @@
  #define TG3_FLG2_PHY_JITTER_BUG               0x20000000
  #define TG3_FLG2_NO_FWARE_REPORTED    0x40000000
  #define TG3_FLG2_PHY_ADJUST_TRIM      0x80000000
  #define TG3_FLG2_PHY_JITTER_BUG               0x20000000
  #define TG3_FLG2_NO_FWARE_REPORTED    0x40000000
  #define TG3_FLG2_PHY_ADJUST_TRIM      0x80000000
@@ -1220,7 +1196,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.h
  
        struct timer_list               timer;
        u16                             timer_counter;
  
        struct timer_list               timer;
        u16                             timer_counter;
-@@ -2333,6 +2337,7 @@ struct tg3 {
+@@ -2333,6 +2337,7 @@
  #define PHY_ID_BCM5714                        0x60008340
  #define PHY_ID_BCM5780                        0x60008350
  #define PHY_ID_BCM5755                        0xbc050cc0
  #define PHY_ID_BCM5714                        0x60008340
  #define PHY_ID_BCM5780                        0x60008350
  #define PHY_ID_BCM5755                        0xbc050cc0
@@ -1228,7 +1204,7 @@ Index: linux-2.6.23.17/drivers/net/tg3.h
  #define PHY_ID_BCM5787                        0xbc050ce0
  #define PHY_ID_BCM5756                        0xbc050ed0
  #define PHY_ID_BCM5906                        0xdc00ac40
  #define PHY_ID_BCM5787                        0xbc050ce0
  #define PHY_ID_BCM5756                        0xbc050ed0
  #define PHY_ID_BCM5906                        0xdc00ac40
-@@ -2364,7 +2369,8 @@ struct tg3 {
+@@ -2364,7 +2369,8 @@
         (X) == PHY_ID_BCM5752 || (X) == PHY_ID_BCM5714 || \
         (X) == PHY_ID_BCM5780 || (X) == PHY_ID_BCM5787 || \
         (X) == PHY_ID_BCM5755 || (X) == PHY_ID_BCM5756 || \
         (X) == PHY_ID_BCM5752 || (X) == PHY_ID_BCM5714 || \
         (X) == PHY_ID_BCM5780 || (X) == PHY_ID_BCM5787 || \
         (X) == PHY_ID_BCM5755 || (X) == PHY_ID_BCM5756 || \
@@ -1238,11 +1214,9 @@ Index: linux-2.6.23.17/drivers/net/tg3.h
  
        struct tg3_hw_stats             *hw_stats;
        dma_addr_t                      stats_mapping;
  
        struct tg3_hw_stats             *hw_stats;
        dma_addr_t                      stats_mapping;
-Index: linux-2.6.23.17/drivers/ssb/driver_mipscore.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/ssb/driver_mipscore.c
-+++ linux-2.6.23.17/drivers/ssb/driver_mipscore.c
-@@ -212,6 +212,7 @@ void ssb_mipscore_init(struct ssb_mipsco
+--- a/drivers/ssb/driver_mipscore.c
++++ b/drivers/ssb/driver_mipscore.c
+@@ -212,6 +212,7 @@
                        /* fallthrough */
                case SSB_DEV_PCI:
                case SSB_DEV_ETHERNET:
                        /* fallthrough */
                case SSB_DEV_PCI:
                case SSB_DEV_ETHERNET: