1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-02-17 20:24:42 +02:00

brcm43xx: Update to 2.6.22-rc5 target

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7697 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
noz 2007-06-21 23:37:39 +00:00
parent 3912d46a72
commit ec783b6671
8 changed files with 157 additions and 128 deletions

View File

@ -1,6 +1,7 @@
diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig Index: linux-2.6.22-rc4/arch/mips/Kconfig
--- linux.old/arch/mips/Kconfig 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/arch/mips/Kconfig 2007-01-26 00:51:18.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/Kconfig 2007-06-10 21:32:36.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/Kconfig 2007-06-10 21:33:12.000000000 +0100
@@ -4,6 +4,10 @@ @@ -4,6 +4,10 @@
# Horrible source of confusion. Die, die, die ... # Horrible source of confusion. Die, die, die ...
select EMBEDDED select EMBEDDED
@ -12,7 +13,7 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
mainmenu "Linux/MIPS Kernel Configuration" mainmenu "Linux/MIPS Kernel Configuration"
menu "Machine selection" menu "Machine selection"
@@ -240,6 +240,23 @@ @@ -126,6 +130,23 @@
Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
Olivetti M700-10 workstations. Olivetti M700-10 workstations.
@ -36,9 +37,10 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
config LASAT config LASAT
bool "LASAT Networks platforms" bool "LASAT Networks platforms"
select DMA_NONCOHERENT select DMA_NONCOHERENT
diff -urN linux.old/arch/mips/kernel/cpu-probe.c linux.dev/arch/mips/kernel/cpu-probe.c Index: linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c
--- linux.old/arch/mips/kernel/cpu-probe.c 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/arch/mips/kernel/cpu-probe.c 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/kernel/cpu-probe.c 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c 2007-06-10 21:33:12.000000000 +0100
@@ -711,6 +711,28 @@ @@ -711,6 +711,28 @@
} }
@ -78,9 +80,10 @@ diff -urN linux.old/arch/mips/kernel/cpu-probe.c linux.dev/arch/mips/kernel/cpu-
case PRID_COMP_SANDCRAFT: case PRID_COMP_SANDCRAFT:
cpu_probe_sandcraft(c); cpu_probe_sandcraft(c);
break; break;
diff -urN linux.old/arch/mips/kernel/proc.c linux.dev/arch/mips/kernel/proc.c Index: linux-2.6.22-rc4/arch/mips/kernel/proc.c
--- linux.old/arch/mips/kernel/proc.c 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/arch/mips/kernel/proc.c 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/kernel/proc.c 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/kernel/proc.c 2007-06-10 21:33:12.000000000 +0100
@@ -83,6 +83,8 @@ @@ -83,6 +83,8 @@
[CPU_VR4181] = "NEC VR4181", [CPU_VR4181] = "NEC VR4181",
[CPU_VR4181A] = "NEC VR4181A", [CPU_VR4181A] = "NEC VR4181A",
@ -90,10 +93,11 @@ diff -urN linux.old/arch/mips/kernel/proc.c linux.dev/arch/mips/kernel/proc.c
[CPU_PR4450] = "Philips PR4450", [CPU_PR4450] = "Philips PR4450",
}; };
diff -urN linux.old/arch/mips/Makefile linux.dev/arch/mips/Makefile Index: linux-2.6.22-rc4/arch/mips/Makefile
--- linux.old/arch/mips/Makefile 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/arch/mips/Makefile 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/Makefile 2007-06-10 21:32:56.000000000 +0100
@@ -576,6 +576,18 @@ +++ linux-2.6.22-rc4/arch/mips/Makefile 2007-06-10 21:33:12.000000000 +0100
@@ -560,6 +560,18 @@
load-$(CONFIG_SIBYTE_BIGSUR) := 0xffffffff80100000 load-$(CONFIG_SIBYTE_BIGSUR) := 0xffffffff80100000
# #
@ -112,9 +116,10 @@ diff -urN linux.old/arch/mips/Makefile linux.dev/arch/mips/Makefile
# SNI RM # SNI RM
# #
core-$(CONFIG_SNI_RM) += arch/mips/sni/ core-$(CONFIG_SNI_RM) += arch/mips/sni/
diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c Index: linux-2.6.22-rc4/arch/mips/mm/tlbex.c
--- linux.old/arch/mips/mm/tlbex.c 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/arch/mips/mm/tlbex.c 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/mm/tlbex.c 2007-06-10 21:32:35.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/tlbex.c 2007-06-10 21:33:12.000000000 +0100
@@ -892,6 +892,8 @@ @@ -892,6 +892,8 @@
case CPU_4KSC: case CPU_4KSC:
case CPU_20KC: case CPU_20KC:
@ -124,9 +129,10 @@ diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
tlbw(p); tlbw(p);
break; break;
diff -urN linux.old/drivers/Kconfig linux.dev/drivers/Kconfig Index: linux-2.6.22-rc4/drivers/Kconfig
--- linux.old/drivers/Kconfig 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/drivers/Kconfig 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/Kconfig 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/drivers/Kconfig 2007-06-10 21:33:12.000000000 +0100
@@ -56,6 +56,8 @@ @@ -56,6 +56,8 @@
source "drivers/hwmon/Kconfig" source "drivers/hwmon/Kconfig"
@ -136,17 +142,19 @@ diff -urN linux.old/drivers/Kconfig linux.dev/drivers/Kconfig
source "drivers/mfd/Kconfig" source "drivers/mfd/Kconfig"
source "drivers/media/Kconfig" source "drivers/media/Kconfig"
diff -urN linux.old/drivers/Makefile linux.dev/drivers/Makefile Index: linux-2.6.22-rc4/drivers/Makefile
--- linux.old/drivers/Makefile 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/drivers/Makefile 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/Makefile 2007-06-10 21:32:14.000000000 +0100
+++ linux-2.6.22-rc4/drivers/Makefile 2007-06-10 21:33:12.000000000 +0100
@@ -81,3 +81,4 @@ @@ -81,3 +81,4 @@
obj-$(CONFIG_DMA_ENGINE) += dma/ obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_HID) += hid/ obj-$(CONFIG_HID) += hid/
obj-$(CONFIG_PPC_PS3) += ps3/ obj-$(CONFIG_PPC_PS3) += ps3/
+obj-$(CONFIG_SSB) += ssb/ +obj-$(CONFIG_SSB) += ssb/
diff -urN linux.old/include/asm-mips/bootinfo.h linux.dev/include/asm-mips/bootinfo.h Index: linux-2.6.22-rc4/include/asm-mips/bootinfo.h
--- linux.old/include/asm-mips/bootinfo.h 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/include/asm-mips/bootinfo.h 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/include/asm-mips/bootinfo.h 2007-06-10 21:32:14.000000000 +0100
+++ linux-2.6.22-rc4/include/asm-mips/bootinfo.h 2007-06-10 21:33:12.000000000 +0100
@@ -213,6 +213,12 @@ @@ -213,6 +213,12 @@
#define MACH_GROUP_NEC_EMMA2RH 25 /* NEC EMMA2RH (was 23) */ #define MACH_GROUP_NEC_EMMA2RH 25 /* NEC EMMA2RH (was 23) */
#define MACH_NEC_MARKEINS 0 /* NEC EMMA2RH Mark-eins */ #define MACH_NEC_MARKEINS 0 /* NEC EMMA2RH Mark-eins */
@ -160,9 +168,10 @@ diff -urN linux.old/include/asm-mips/bootinfo.h linux.dev/include/asm-mips/booti
#define CL_SIZE COMMAND_LINE_SIZE #define CL_SIZE COMMAND_LINE_SIZE
const char *get_system_type(void); const char *get_system_type(void);
diff -urN linux.old/include/asm-mips/cpu.h linux.dev/include/asm-mips/cpu.h Index: linux-2.6.22-rc4/include/asm-mips/cpu.h
--- linux.old/include/asm-mips/cpu.h 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/include/asm-mips/cpu.h 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/include/asm-mips/cpu.h 2007-06-10 21:32:14.000000000 +0100
+++ linux-2.6.22-rc4/include/asm-mips/cpu.h 2007-06-10 21:33:12.000000000 +0100
@@ -104,6 +104,13 @@ @@ -104,6 +104,13 @@
#define PRID_IMP_SR71000 0x0400 #define PRID_IMP_SR71000 0x0400
@ -188,10 +197,11 @@ diff -urN linux.old/include/asm-mips/cpu.h linux.dev/include/asm-mips/cpu.h
/* /*
* ISA Level encodings * ISA Level encodings
diff -urN linux.old/include/linux/pci_ids.h linux.dev/include/linux/pci_ids.h Index: linux-2.6.22-rc4/include/linux/pci_ids.h
--- linux.old/include/linux/pci_ids.h 2007-01-26 00:51:33.000000000 +0100 ===================================================================
+++ linux.dev/include/linux/pci_ids.h 2007-01-25 23:34:01.000000000 +0100 --- linux-2.6.22-rc4.orig/include/linux/pci_ids.h 2007-06-10 21:32:14.000000000 +0100
@@ -1981,6 +1981,7 @@ +++ linux-2.6.22-rc4/include/linux/pci_ids.h 2007-06-10 21:33:12.000000000 +0100
@@ -1991,6 +1991,7 @@
#define PCI_DEVICE_ID_TIGON3_5906M 0x1713 #define PCI_DEVICE_ID_TIGON3_5906M 0x1713
#define PCI_DEVICE_ID_BCM4401 0x4401 #define PCI_DEVICE_ID_BCM4401 0x4401
#define PCI_DEVICE_ID_BCM4401B0 0x4402 #define PCI_DEVICE_ID_BCM4401B0 0x4402
@ -199,4 +209,3 @@ diff -urN linux.old/include/linux/pci_ids.h linux.dev/include/linux/pci_ids.h
#define PCI_VENDOR_ID_TOPIC 0x151f #define PCI_VENDOR_ID_TOPIC 0x151f
#define PCI_DEVICE_ID_TOPIC_TP560 0x0000 #define PCI_DEVICE_ID_TOPIC_TP560 0x0000

View File

@ -1,7 +1,8 @@
diff -urN linux.old/drivers/mtd/maps/Kconfig linux.dev/drivers/mtd/maps/Kconfig Index: linux-2.6.22-rc4/drivers/mtd/maps/Kconfig
--- linux.old/drivers/mtd/maps/Kconfig 2006-12-11 20:32:53.000000000 +0100 ===================================================================
+++ linux.dev/drivers/mtd/maps/Kconfig 2007-01-03 02:26:02.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/mtd/maps/Kconfig 2007-06-10 21:32:13.000000000 +0100
@@ -326,6 +326,12 @@ +++ linux-2.6.22-rc4/drivers/mtd/maps/Kconfig 2007-06-10 21:33:14.000000000 +0100
@@ -358,6 +358,12 @@
Mapping for the Flaga digital module. If you don't have one, ignore Mapping for the Flaga digital module. If you don't have one, ignore
this setting. this setting.
@ -11,13 +12,14 @@ diff -urN linux.old/drivers/mtd/maps/Kconfig linux.dev/drivers/mtd/maps/Kconfig
+ help + help
+ Support for the flash chips on the BCM947xx board. + Support for the flash chips on the BCM947xx board.
+ +
config MTD_BEECH config MTD_WALNUT
tristate "CFI Flash device mapped on IBM 405LP Beech" tristate "Flash device mapped on IBM 405GP Walnut"
depends on MTD_CFI && BEECH depends on MTD_JEDECPROBE && WALNUT
diff -urN linux.old/drivers/mtd/maps/Makefile linux.dev/drivers/mtd/maps/Makefile Index: linux-2.6.22-rc4/drivers/mtd/maps/Makefile
--- linux.old/drivers/mtd/maps/Makefile 2006-12-11 20:32:53.000000000 +0100 ===================================================================
+++ linux.dev/drivers/mtd/maps/Makefile 2007-01-03 02:26:02.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/mtd/maps/Makefile 2007-06-10 21:32:13.000000000 +0100
@@ -31,6 +31,7 @@ +++ linux-2.6.22-rc4/drivers/mtd/maps/Makefile 2007-06-10 21:33:14.000000000 +0100
@@ -33,6 +33,7 @@
obj-$(CONFIG_MTD_PCMCIA) += pcmciamtd.o obj-$(CONFIG_MTD_PCMCIA) += pcmciamtd.o
obj-$(CONFIG_MTD_RPXLITE) += rpxlite.o obj-$(CONFIG_MTD_RPXLITE) += rpxlite.o
obj-$(CONFIG_MTD_TQM8XXL) += tqm8xxl.o obj-$(CONFIG_MTD_TQM8XXL) += tqm8xxl.o
@ -25,4 +27,3 @@ diff -urN linux.old/drivers/mtd/maps/Makefile linux.dev/drivers/mtd/maps/Makefil
obj-$(CONFIG_MTD_SA1100) += sa1100-flash.o obj-$(CONFIG_MTD_SA1100) += sa1100-flash.o
obj-$(CONFIG_MTD_IPAQ) += ipaq-flash.o obj-$(CONFIG_MTD_IPAQ) += ipaq-flash.o
obj-$(CONFIG_MTD_SBC_GXX) += sbc_gxx.o obj-$(CONFIG_MTD_SBC_GXX) += sbc_gxx.o

View File

@ -1,6 +1,7 @@
diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c Index: linux-2.6.22-rc4/drivers/net/b44.c
--- linux.old/drivers/net/b44.c 2006-12-11 20:32:53.000000000 +0100 ===================================================================
+++ linux.dev/drivers/net/b44.c 2007-01-03 02:26:02.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/net/b44.c 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/drivers/net/b44.c 2007-06-10 21:33:15.000000000 +0100
@@ -1,7 +1,9 @@ @@ -1,7 +1,9 @@
-/* b44.c: Broadcom 4400 device driver. -/* b44.c: Broadcom 4400 device driver.
+/* b44.c: Broadcom 4400/47xx device driver. +/* b44.c: Broadcom 4400/47xx device driver.
@ -200,36 +201,37 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
- bw32(bp, B44_SBTMSLOW, (SBTMSLOW_CLOCK | SBTMSLOW_FGC)); - bw32(bp, B44_SBTMSLOW, (SBTMSLOW_CLOCK | SBTMSLOW_FGC));
- br32(bp, B44_SBTMSLOW); - br32(bp, B44_SBTMSLOW);
- udelay(1); - udelay(1);
- + bw32(bp, B44_CAM_CTRL, (CAM_CTRL_READ |
+ (index << CAM_CTRL_INDEX_SHIFT)));
- bw32(bp, B44_SBTMSLOW, (SBTMSLOW_CLOCK)); - bw32(bp, B44_SBTMSLOW, (SBTMSLOW_CLOCK));
- br32(bp, B44_SBTMSLOW); - br32(bp, B44_SBTMSLOW);
- udelay(1); - udelay(1);
-} -}
+ bw32(bp, B44_CAM_CTRL, (CAM_CTRL_READ | + b44_wait_bit(bp, B44_CAM_CTRL, CAM_CTRL_BUSY, 100, 1);
+ (index << CAM_CTRL_INDEX_SHIFT)));
-static int ssb_core_unit(struct b44 *bp) -static int ssb_core_unit(struct b44 *bp)
-{ -{
-#if 0 -#if 0
- u32 val = br32(bp, B44_SBADMATCH0); - u32 val = br32(bp, B44_SBADMATCH0);
- u32 base; - u32 base;
+ b44_wait_bit(bp, B44_CAM_CTRL, CAM_CTRL_BUSY, 100, 1); + val = br32(bp, B44_CAM_DATA_LO);
- type = val & SBADMATCH0_TYPE_MASK; - type = val & SBADMATCH0_TYPE_MASK;
- switch (type) { - switch (type) {
- case 0: - case 0:
- base = val & SBADMATCH0_BS0_MASK; - base = val & SBADMATCH0_BS0_MASK;
- break; - break;
+ val = br32(bp, B44_CAM_DATA_LO);
- case 1:
- base = val & SBADMATCH0_BS1_MASK;
- break;
+ data[2] = (val >> 24) & 0xFF; + data[2] = (val >> 24) & 0xFF;
+ data[3] = (val >> 16) & 0xFF; + data[3] = (val >> 16) & 0xFF;
+ data[4] = (val >> 8) & 0xFF; + data[4] = (val >> 8) & 0xFF;
+ data[5] = (val >> 0) & 0xFF; + data[5] = (val >> 0) & 0xFF;
- case 1:
- base = val & SBADMATCH0_BS1_MASK;
- break;
+ val = br32(bp, B44_CAM_DATA_HI);
- case 2: - case 2:
- default: - default:
- base = val & SBADMATCH0_BS2_MASK; - base = val & SBADMATCH0_BS2_MASK;
@ -238,8 +240,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
-#endif -#endif
- return 0; - return 0;
-} -}
+ val = br32(bp, B44_CAM_DATA_HI); -
-static int ssb_is_core_up(struct b44 *bp) -static int ssb_is_core_up(struct b44 *bp)
-{ -{
- return ((br32(bp, B44_SBTMSLOW) & (SBTMSLOW_RESET | SBTMSLOW_REJECT | SBTMSLOW_CLOCK)) - return ((br32(bp, B44_SBTMSLOW) & (SBTMSLOW_RESET | SBTMSLOW_REJECT | SBTMSLOW_CLOCK))
@ -487,7 +488,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
} else { } else {
struct sk_buff *copy_skb; struct sk_buff *copy_skb;
@@ -986,23 +932,23 @@ @@ -985,23 +931,23 @@
goto err_out; goto err_out;
} }
@ -1098,13 +1099,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
- if (err) - if (err)
- goto out; - goto out;
+ bp->dma_offset = ssb_dma_translation(sdev); + bp->dma_offset = ssb_dma_translation(sdev);
+
- bp->dev->dev_addr[0] = eeprom[79];
- bp->dev->dev_addr[1] = eeprom[78];
- bp->dev->dev_addr[2] = eeprom[81];
- bp->dev->dev_addr[3] = eeprom[80];
- bp->dev->dev_addr[4] = eeprom[83];
- bp->dev->dev_addr[5] = eeprom[82];
+ switch (instance) { + switch (instance) {
+ case 1: + case 1:
+ addr = sdev->bus->sprom.r1.et0mac; + addr = sdev->bus->sprom.r1.et0mac;
@ -1115,7 +1110,13 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
+ bp->phy_addr = sdev->bus->sprom.r1.et1phyaddr; + bp->phy_addr = sdev->bus->sprom.r1.et1phyaddr;
+ break; + break;
+ } + }
+
- bp->dev->dev_addr[0] = eeprom[79];
- bp->dev->dev_addr[1] = eeprom[78];
- bp->dev->dev_addr[2] = eeprom[81];
- bp->dev->dev_addr[3] = eeprom[80];
- bp->dev->dev_addr[4] = eeprom[83];
- bp->dev->dev_addr[5] = eeprom[82];
+ memcpy(bp->dev->dev_addr, addr, 6); + memcpy(bp->dev->dev_addr, addr, 6);
if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){ if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){
@ -1139,11 +1140,11 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
/* XXX - really required? /* XXX - really required?
bp->flags |= B44_FLAG_BUGGY_TXPTR; bp->flags |= B44_FLAG_BUGGY_TXPTR;
- */ - */
+ */ -
- if (ssb_get_core_rev(bp) >= 7) - if (ssb_get_core_rev(bp) >= 7)
- bp->flags |= B44_FLAG_B0_ANDLATER; - bp->flags |= B44_FLAG_B0_ANDLATER;
- + */
-out: -out:
return err; return err;
} }
@ -1351,7 +1352,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
- struct net_device *dev = pci_get_drvdata(pdev); - struct net_device *dev = pci_get_drvdata(pdev);
+ struct net_device *dev = ssb_get_drvdata(pdev); + struct net_device *dev = ssb_get_drvdata(pdev);
struct b44 *bp = netdev_priv(dev); struct b44 *bp = netdev_priv(dev);
int rc = 0; int rc = 0;
- pci_restore_state(pdev); - pci_restore_state(pdev);
- rc = pci_enable_device(pdev); - rc = pci_enable_device(pdev);
@ -1404,9 +1405,10 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
} }
module_init(b44_init); module_init(b44_init);
diff -urN linux.old/drivers/net/b44.h linux.dev/drivers/net/b44.h Index: linux-2.6.22-rc4/drivers/net/b44.h
--- linux.old/drivers/net/b44.h 2006-12-11 20:32:53.000000000 +0100 ===================================================================
+++ linux.dev/drivers/net/b44.h 2007-01-03 02:26:02.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/net/b44.h 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/drivers/net/b44.h 2007-06-10 21:33:15.000000000 +0100
@@ -129,6 +129,7 @@ @@ -129,6 +129,7 @@
#define RXCONFIG_FLOW 0x00000020 /* Flow Control Enable */ #define RXCONFIG_FLOW 0x00000020 /* Flow Control Enable */
#define RXCONFIG_FLOW_ACCEPT 0x00000040 /* Accept Unicast Flow Control Frame */ #define RXCONFIG_FLOW_ACCEPT 0x00000040 /* Accept Unicast Flow Control Frame */
@ -1530,9 +1532,10 @@ diff -urN linux.old/drivers/net/b44.h linux.dev/drivers/net/b44.h
struct net_device *dev; struct net_device *dev;
dma_addr_t rx_ring_dma, tx_ring_dma; dma_addr_t rx_ring_dma, tx_ring_dma;
diff -urN linux.old/drivers/net/Kconfig linux.dev/drivers/net/Kconfig Index: linux-2.6.22-rc4/drivers/net/Kconfig
--- linux.old/drivers/net/Kconfig 2007-01-03 02:25:09.000000000 +0100 ===================================================================
+++ linux.dev/drivers/net/Kconfig 2007-01-03 02:26:02.000000000 +0100 --- linux-2.6.22-rc4.orig/drivers/net/Kconfig 2007-06-10 21:32:48.000000000 +0100
+++ linux-2.6.22-rc4/drivers/net/Kconfig 2007-06-10 21:33:15.000000000 +0100
@@ -1511,7 +1511,7 @@ @@ -1511,7 +1511,7 @@
config B44 config B44
@ -1542,4 +1545,3 @@ diff -urN linux.old/drivers/net/Kconfig linux.dev/drivers/net/Kconfig
select MII select MII
help help
If you have a network (Ethernet) controller of this type, say Y and If you have a network (Ethernet) controller of this type, say Y and

View File

@ -1,15 +1,16 @@
diff -urN linux-2.6.19.ref/arch/mips/Kconfig linux-2.6.19/arch/mips/Kconfig Index: linux-2.6.22-rc4/arch/mips/Kconfig
--- linux-2.6.19.ref/arch/mips/Kconfig 2006-12-04 21:33:48.000000000 +0100 ===================================================================
+++ linux-2.6.19/arch/mips/Kconfig 2006-12-04 21:34:04.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/Kconfig 2007-06-10 21:33:12.000000000 +0100
@@ -315,7 +315,6 @@ +++ linux-2.6.22-rc4/arch/mips/Kconfig 2007-06-10 21:33:17.000000000 +0100
@@ -202,7 +202,6 @@
select I8259 select I8259
select MIPS_BOARDS_GEN select MIPS_BOARDS_GEN
select MIPS_BONITO64 select MIPS_BONITO64
- select MIPS_CPU_SCACHE - select MIPS_CPU_SCACHE
select MIPS_GT64120 select PCI_GT64XXX_PCI0
select MIPS_MSC select MIPS_MSC
select SWAP_IO_SPACE select SWAP_IO_SPACE
@@ -1538,13 +1537,6 @@ @@ -1345,13 +1344,6 @@
bool bool
select BOARD_SCACHE select BOARD_SCACHE
@ -23,9 +24,10 @@ diff -urN linux-2.6.19.ref/arch/mips/Kconfig linux-2.6.19/arch/mips/Kconfig
config R5000_CPU_SCACHE config R5000_CPU_SCACHE
bool bool
select BOARD_SCACHE select BOARD_SCACHE
diff -urN linux-2.6.19.ref/arch/mips/kernel/cpu-probe.c linux-2.6.19/arch/mips/kernel/cpu-probe.c Index: linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c
--- linux-2.6.19.ref/arch/mips/kernel/cpu-probe.c 2006-12-04 21:33:48.000000000 +0100 ===================================================================
+++ linux-2.6.19/arch/mips/kernel/cpu-probe.c 2006-12-04 21:34:04.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/kernel/cpu-probe.c 2007-06-10 21:33:12.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c 2007-06-10 21:33:17.000000000 +0100
@@ -619,6 +619,8 @@ @@ -619,6 +619,8 @@
break; break;
case PRID_IMP_25KF: case PRID_IMP_25KF:
@ -35,9 +37,10 @@ diff -urN linux-2.6.19.ref/arch/mips/kernel/cpu-probe.c linux-2.6.19/arch/mips/k
break; break;
case PRID_IMP_34K: case PRID_IMP_34K:
c->cputype = CPU_34K; c->cputype = CPU_34K;
diff -urN linux-2.6.19.ref/arch/mips/mm/c-r4k.c linux-2.6.19/arch/mips/mm/c-r4k.c Index: linux-2.6.22-rc4/arch/mips/mm/c-r4k.c
--- linux-2.6.19.ref/arch/mips/mm/c-r4k.c 2006-11-29 22:57:37.000000000 +0100 ===================================================================
+++ linux-2.6.19/arch/mips/mm/c-r4k.c 2006-12-04 21:34:04.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/mm/c-r4k.c 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/c-r4k.c 2007-06-10 21:33:17.000000000 +0100
@@ -1038,7 +1038,6 @@ @@ -1038,7 +1038,6 @@
extern int r5k_sc_init(void); extern int r5k_sc_init(void);
@ -81,9 +84,10 @@ diff -urN linux-2.6.19.ref/arch/mips/mm/c-r4k.c linux-2.6.19/arch/mips/mm/c-r4k.
/* compute a couple of other cache variables */ /* compute a couple of other cache variables */
c->scache.waysize = scache_size / c->scache.ways; c->scache.waysize = scache_size / c->scache.ways;
diff -urN linux-2.6.19.ref/arch/mips/mm/Makefile linux-2.6.19/arch/mips/mm/Makefile Index: linux-2.6.22-rc4/arch/mips/mm/Makefile
--- linux-2.6.19.ref/arch/mips/mm/Makefile 2006-11-29 22:57:37.000000000 +0100 ===================================================================
+++ linux-2.6.19/arch/mips/mm/Makefile 2006-12-04 21:34:04.000000000 +0100 --- linux-2.6.22-rc4.orig/arch/mips/mm/Makefile 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/Makefile 2007-06-10 21:33:17.000000000 +0100
@@ -30,4 +30,3 @@ @@ -30,4 +30,3 @@
obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o
obj-$(CONFIG_R5000_CPU_SCACHE) += sc-r5k.o obj-$(CONFIG_R5000_CPU_SCACHE) += sc-r5k.o

View File

@ -1,6 +1,7 @@
diff -urN linux-2.6.19.ref/lib/kobject_uevent.c linux-2.6.19/lib/kobject_uevent.c Index: linux-2.6.22-rc4/lib/kobject_uevent.c
--- linux-2.6.19.ref/lib/kobject_uevent.c 2006-11-29 22:57:37.000000000 +0100 ===================================================================
+++ linux-2.6.19/lib/kobject_uevent.c 2006-12-04 21:33:48.000000000 +0100 --- linux-2.6.22-rc4.orig/lib/kobject_uevent.c 2007-06-10 21:32:13.000000000 +0100
+++ linux-2.6.22-rc4/lib/kobject_uevent.c 2007-06-10 21:33:18.000000000 +0100
@@ -29,6 +29,7 @@ @@ -29,6 +29,7 @@
u64 uevent_seqnum; u64 uevent_seqnum;
char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug"; char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug";

View File

@ -1,6 +1,7 @@
diff -ur linux.old/arch/mips/kernel/genex.S linux.dev/arch/mips/kernel/genex.S Index: linux-2.6.22-rc4/arch/mips/kernel/genex.S
--- linux.old/arch/mips/kernel/genex.S 2007-03-23 16:10:35.572499592 +0100 ===================================================================
+++ linux.dev/arch/mips/kernel/genex.S 2007-03-16 11:54:34.901251992 +0100 --- linux-2.6.22-rc4.orig/arch/mips/kernel/genex.S 2007-06-10 21:32:12.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/kernel/genex.S 2007-06-10 21:33:19.000000000 +0100
@@ -51,6 +51,10 @@ @@ -51,6 +51,10 @@
NESTED(except_vec3_generic, 0, sp) NESTED(except_vec3_generic, 0, sp)
.set push .set push
@ -12,9 +13,10 @@ diff -ur linux.old/arch/mips/kernel/genex.S linux.dev/arch/mips/kernel/genex.S
#if R5432_CP0_INTERRUPT_WAR #if R5432_CP0_INTERRUPT_WAR
mfc0 k0, CP0_INDEX mfc0 k0, CP0_INDEX
#endif #endif
diff -ur linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c Index: linux-2.6.22-rc4/arch/mips/mm/c-r4k.c
--- linux.old/arch/mips/mm/c-r4k.c 2007-03-16 12:11:00.344441000 +0100 ===================================================================
+++ linux.dev/arch/mips/mm/c-r4k.c 2007-03-23 16:03:23.596169976 +0100 --- linux-2.6.22-rc4.orig/arch/mips/mm/c-r4k.c 2007-06-10 21:33:17.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/c-r4k.c 2007-06-10 21:33:19.000000000 +0100
@@ -29,6 +29,9 @@ @@ -29,6 +29,9 @@
#include <asm/cacheflush.h> /* for run_uncached() */ #include <asm/cacheflush.h> /* for run_uncached() */
@ -90,9 +92,10 @@ diff -ur linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
probe_pcache(); probe_pcache();
setup_scache(); setup_scache();
diff -ur linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c Index: linux-2.6.22-rc4/arch/mips/mm/tlbex.c
--- linux.old/arch/mips/mm/tlbex.c 2007-03-16 11:54:34.826263000 +0100 ===================================================================
+++ linux.dev/arch/mips/mm/tlbex.c 2007-03-23 16:03:23.608168152 +0100 --- linux-2.6.22-rc4.orig/arch/mips/mm/tlbex.c 2007-06-10 21:33:12.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/tlbex.c 2007-06-10 21:33:19.000000000 +0100
@@ -1229,6 +1229,10 @@ @@ -1229,6 +1229,10 @@
#endif #endif
} }
@ -117,9 +120,10 @@ diff -ur linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
/* /*
* create the plain linear handler * create the plain linear handler
*/ */
diff -ur linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kcache.h Index: linux-2.6.22-rc4/include/asm-mips/r4kcache.h
--- linux.old/include/asm-mips/r4kcache.h 2007-01-10 20:10:37.000000000 +0100 ===================================================================
+++ linux.dev/include/asm-mips/r4kcache.h 2007-03-23 16:38:44.603727816 +0100 --- linux-2.6.22-rc4.orig/include/asm-mips/r4kcache.h 2007-06-10 21:32:12.000000000 +0100
+++ linux-2.6.22-rc4/include/asm-mips/r4kcache.h 2007-06-10 21:33:19.000000000 +0100
@@ -17,6 +17,20 @@ @@ -17,6 +17,20 @@
#include <asm/cpu-features.h> #include <asm/cpu-features.h>
#include <asm/mipsmtregs.h> #include <asm/mipsmtregs.h>
@ -322,9 +326,10 @@ diff -ur linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kcac
+__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD,,, ) +__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD,,, )
#endif /* _ASM_R4KCACHE_H */ #endif /* _ASM_R4KCACHE_H */
diff -ur linux.old/include/asm-mips/stackframe.h linux.dev/include/asm-mips/stackframe.h Index: linux-2.6.22-rc4/include/asm-mips/stackframe.h
--- linux.old/include/asm-mips/stackframe.h 2007-03-23 16:10:35.573499440 +0100 ===================================================================
+++ linux.dev/include/asm-mips/stackframe.h 2007-03-16 11:54:34.903251688 +0100 --- linux-2.6.22-rc4.orig/include/asm-mips/stackframe.h 2007-06-10 21:32:12.000000000 +0100
+++ linux-2.6.22-rc4/include/asm-mips/stackframe.h 2007-06-10 21:33:19.000000000 +0100
@@ -352,6 +352,10 @@ @@ -352,6 +352,10 @@
.macro RESTORE_SP_AND_RET .macro RESTORE_SP_AND_RET
LONG_L sp, PT_R29(sp) LONG_L sp, PT_R29(sp)

View File

@ -1,5 +1,7 @@
--- ./arch/mips/mm/init.c.orig 2007-03-22 08:08:34.000000000 -0600 Index: linux-2.6.22-rc4/arch/mips/mm/init.c
+++ ./arch/mips/mm/init.c 2007-03-22 08:09:04.000000000 -0600 ===================================================================
--- linux-2.6.22-rc4.orig/arch/mips/mm/init.c 2007-06-10 21:32:12.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/mm/init.c 2007-06-10 21:33:21.000000000 +0100
@@ -207,7 +207,7 @@ @@ -207,7 +207,7 @@
void *vfrom, *vto; void *vfrom, *vto;
@ -8,7 +10,7 @@
+ if (cpu_has_dc_aliases && cpu_use_kmap_coherent) { + if (cpu_has_dc_aliases && cpu_use_kmap_coherent) {
vfrom = kmap_coherent(from, vaddr); vfrom = kmap_coherent(from, vaddr);
copy_page(vto, vfrom); copy_page(vto, vfrom);
kunmap_coherent(from); kunmap_coherent();
@@ -230,7 +230,7 @@ @@ -230,7 +230,7 @@
struct page *page, unsigned long vaddr, void *dst, const void *src, struct page *page, unsigned long vaddr, void *dst, const void *src,
unsigned long len) unsigned long len)
@ -17,7 +19,7 @@
+ if (cpu_has_dc_aliases && cpu_use_kmap_coherent) { + if (cpu_has_dc_aliases && cpu_use_kmap_coherent) {
void *vto = kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK); void *vto = kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
memcpy(vto, src, len); memcpy(vto, src, len);
kunmap_coherent(page); kunmap_coherent();
@@ -246,7 +246,7 @@ @@ -246,7 +246,7 @@
struct page *page, unsigned long vaddr, void *dst, const void *src, struct page *page, unsigned long vaddr, void *dst, const void *src,
unsigned long len) unsigned long len)
@ -27,8 +29,10 @@
void *vfrom = void *vfrom =
kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK); kmap_coherent(page, vaddr) + (vaddr & ~PAGE_MASK);
memcpy(dst, vfrom, len); memcpy(dst, vfrom, len);
--- ./include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h.orig 2007-03-22 08:10:54.000000000 -0600 Index: linux-2.6.22-rc4/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h
+++ ./include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h 2007-03-22 08:10:50.000000000 -0600 ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.22-rc4/include/asm-mips/mach-bcm947xx/cpu-feature-overrides.h 2007-06-10 21:33:21.000000000 +0100
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
+/* +/*
+ * This file is subject to the terms and conditions of the GNU General Public + * This file is subject to the terms and conditions of the GNU General Public
@ -43,8 +47,10 @@
+#define cpu_use_kmap_coherent 0 +#define cpu_use_kmap_coherent 0
+ +
+#endif /* __ASM_MACH_BCM947XX_CPU_FEATURE_OVERRIDES_H */ +#endif /* __ASM_MACH_BCM947XX_CPU_FEATURE_OVERRIDES_H */
--- ./include/asm-mips/cpu-features.h.orig 2007-03-22 08:09:16.000000000 -0600 Index: linux-2.6.22-rc4/include/asm-mips/cpu-features.h
+++ ./include/asm-mips/cpu-features.h 2007-03-22 08:09:52.000000000 -0600 ===================================================================
--- linux-2.6.22-rc4.orig/include/asm-mips/cpu-features.h 2007-06-10 21:32:12.000000000 +0100
+++ linux-2.6.22-rc4/include/asm-mips/cpu-features.h 2007-06-10 21:33:21.000000000 +0100
@@ -101,6 +101,9 @@ @@ -101,6 +101,9 @@
#ifndef cpu_has_pindexed_dcache #ifndef cpu_has_pindexed_dcache
#define cpu_has_pindexed_dcache (cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX) #define cpu_has_pindexed_dcache (cpu_data[0].dcache.flags & MIPS_CACHE_PINDEX)

View File

@ -1,12 +1,13 @@
diff -urN linux-2.6.19.2.old/arch/mips/kernel/cpu-probe.c linux-2.6.19.2/arch/mips/kernel/cpu-probe.c Index: linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c
--- linux-2.6.19.2.old/arch/mips/kernel/cpu-probe.c 2007-05-01 19:28:06.937756121 +0100 ===================================================================
+++ linux-2.6.19.2/arch/mips/kernel/cpu-probe.c 2007-05-01 19:31:46.867756121 +0100 --- linux-2.6.22-rc4.orig/arch/mips/kernel/cpu-probe.c 2007-06-10 21:33:17.000000000 +0100
+++ linux-2.6.22-rc4/arch/mips/kernel/cpu-probe.c 2007-06-10 21:33:22.000000000 +0100
@@ -143,6 +143,8 @@ @@ -143,6 +143,8 @@
case CPU_34K: case CPU_34K:
case CPU_74K: case CPU_74K:
case CPU_PR4450: case CPU_PR4450:
+ case CPU_BCM3302: + case CPU_BCM3302:
+ case CPU_BCM4710: + case CPU_BCM4710:
cpu_wait = r4k_wait; cpu_wait = r4k_wait;
break; break;
case CPU_TX49XX: case CPU_TX49XX: