Browse Source

brcm63xx: Fixed 96348GW (Tecom Gx00) LED definitions to match reality (vs reference design)

SVN-Revision: 21631
Daniel Dickinson 15 years ago
parent
commit
f296eeab53

+ 21 - 38
target/linux/brcm63xx/patches-2.6.32/140-new_bcm96348gw_leds.patch

@@ -1,54 +1,48 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -336,24 +336,39 @@ static struct board_info __initdata boar
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:36:02.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:40:56.000000000 -0400
+@@ -331,29 +331,28 @@
+
+	.leds = {
+		{
+-			.name		= "adsl-fail",
+-			.gpio		= 2,
++			.name		= "line1",
++			.gpio		= 4,
  			.active_low	= 1,
  		},
  		{
 -			.name		= "ppp",
 -			.gpio		= 3,
-+			.name		= "power",
-+			.gpio		= 0,
++			.name		= "line2",
++			.gpio		= 5,
  			.active_low	= 1,
-+			.default_trigger = "default-on",
  		},
  		{
 -			.name		= "ppp-fail",
-+			.name		= "stop",
-+			.gpio		= 1,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "line1",
- 			.gpio		= 4,
+-			.gpio		= 4,
++			.name		= "line3",
++			.gpio		= 6,
  			.active_low	= 1,
  		},
  		{
 -			.name		= "power",
 -			.gpio		= 0,
-+			.name		= "line2",
-+			.gpio		= 5,
++			.name		= "tel",
++			.gpio		= 7,
  			.active_low	= 1,
 -			.default_trigger = "default-on",
  		},
  		{
 -			.name		= "stop",
 -			.gpio		= 1,
-+			.name		= "line3",
-+			.gpio		= 6,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "tel",
-+			.gpio		= 7,
-+			.active_low	= 1,
-+		},
-+		{
 +			.name		= "eth",
 +			.gpio		= 35,
  			.active_low	= 1,
  		},
  	},
-@@ -855,6 +870,7 @@ static struct platform_device bcm63xx_gp
+@@ -855,6 +854,7 @@
  int __init board_register_devices(void)
  {
  	u32 val;
@@ -56,7 +50,7 @@
  	int button_count = 0;
  
  	if (board.has_pccard)
-@@ -902,7 +918,11 @@ int __init board_register_devices(void)
+@@ -902,7 +902,11 @@
  
  	platform_device_register_simple("GPIODEV", 0, &gpiodev_resource, 1);
  
@@ -69,14 +63,3 @@
  	bcm63xx_led_data.leds = board.leds;
  
  	platform_device_register(&bcm63xx_gpio_leds);
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -54,7 +54,7 @@ struct board_info {
- 	struct bcm63xx_dsp_platform_data dsp;
- 
- 	/* GPIO LEDs */
--	struct gpio_led leds[5];
-+	struct gpio_led leds[8];
- 
- 	/* Buttons */
- 	struct gpio_button buttons[2];

+ 5 - 3
target/linux/brcm63xx/patches-2.6.32/150-alice_gate2_leds.patch

@@ -1,6 +1,8 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -589,6 +589,63 @@ static struct board_info __initdata boar
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:40:56.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:43:41.000000000 -0400
+@@ -573,6 +573,63 @@
  
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,

+ 45 - 29
target/linux/brcm63xx/patches-2.6.32/180-udc_preliminary_support.patch

@@ -1,5 +1,7 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:43:41.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:44:19.000000000 -0400
 @@ -28,6 +28,7 @@
  #include <bcm63xx_dev_pcmcia.h>
  #include <bcm63xx_dev_usb_ohci.h>
@@ -8,7 +10,7 @@
  #include <board_bcm963xx.h>
  
  #define PFX	"board_bcm963xx: "
-@@ -406,6 +407,7 @@ static struct board_info __initdata boar
+@@ -390,6 +391,7 @@
          .has_ohci0 = 1,
          .has_pccard = 1,
          .has_ehci0 = 1,
@@ -16,7 +18,7 @@
  };
  
  static struct board_info __initdata board_rta1025w_16 = {
-@@ -950,6 +952,9 @@ int __init board_register_devices(void)
+@@ -934,6 +936,9 @@
  	if (board.has_dsp)
  		bcm63xx_dsp_register(&board.dsp);
  
@@ -26,8 +28,10 @@
  	/* Generate MAC address for WLAN and
  	 * register our SPROM */
  #ifdef CONFIG_SSB_PCIHOST
---- /dev/null
-+++ b/arch/mips/bcm63xx/dev-usb-udc.c
+Index: linux-2.6.32.13/arch/mips/bcm63xx/dev-usb-udc.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.32.13/arch/mips/bcm63xx/dev-usb-udc.c	2010-05-27 21:44:19.000000000 -0400
 @@ -0,0 +1,58 @@
 +/*
 + * Copyright (C) 2009	Henk Vergonet <[email protected]>
@@ -87,9 +91,11 @@
 +	udc_resources[1].start = bcm63xx_get_irq_number(IRQ_UDC0);
 +	return platform_device_register(&bcm63xx_udc_device);
 +}
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
-@@ -125,7 +125,7 @@ enum bcm63xx_regs_set {
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h	2010-05-27 21:34:56.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h	2010-05-27 21:44:19.000000000 -0400
+@@ -125,7 +125,7 @@
  #define BCM_6338_UART0_BASE		(0xfffe0300)
  #define BCM_6338_GPIO_BASE		(0xfffe0400)
  #define BCM_6338_SPI_BASE		(0xfffe0c00)
@@ -98,7 +104,7 @@
  #define BCM_6338_USBDMA_BASE		(0xfffe2400)
  #define BCM_6338_OHCI0_BASE		(0xdeadbeef)
  #define BCM_6338_OHCI_PRIV_BASE		(0xfffe3000)
-@@ -155,7 +155,7 @@ enum bcm63xx_regs_set {
+@@ -155,7 +155,7 @@
  #define BCM_6345_UART0_BASE		(0xfffe0300)
  #define BCM_6345_GPIO_BASE		(0xfffe0400)
  #define BCM_6345_SPI_BASE		(0xdeadbeef)
@@ -107,7 +113,7 @@
  #define BCM_6345_USBDMA_BASE		(0xfffe2800)
  #define BCM_6345_ENET0_BASE		(0xfffe1800)
  #define BCM_6345_ENETDMA_BASE		(0xfffe2800)
-@@ -210,7 +210,7 @@ enum bcm63xx_regs_set {
+@@ -210,7 +210,7 @@
  #define BCM_6358_UART0_BASE		(0xfffe0100)
  #define BCM_6358_GPIO_BASE		(0xfffe0080)
  #define BCM_6358_SPI_BASE		(0xdeadbeef)
@@ -116,7 +122,7 @@
  #define BCM_6358_OHCI0_BASE		(0xfffe1400)
  #define BCM_6358_OHCI_PRIV_BASE		(0xdeadbeef)
  #define BCM_6358_USBH_PRIV_BASE		(0xfffe1500)
-@@ -430,6 +430,7 @@ enum bcm63xx_irq {
+@@ -430,6 +430,7 @@
  	IRQ_TIMER = 0,
  	IRQ_UART0,
  	IRQ_DSL,
@@ -124,7 +130,7 @@
  	IRQ_ENET0,
  	IRQ_ENET1,
  	IRQ_ENET_PHY,
-@@ -472,7 +473,7 @@ enum bcm63xx_irq {
+@@ -472,7 +473,7 @@
  #define BCM_6345_UART0_IRQ		(IRQ_INTERNAL_BASE + 2)
  #define BCM_6345_DSL_IRQ		(IRQ_INTERNAL_BASE + 3)
  #define BCM_6345_ATM_IRQ		(IRQ_INTERNAL_BASE + 4)
@@ -133,7 +139,7 @@
  #define BCM_6345_ENET0_IRQ		(IRQ_INTERNAL_BASE + 8)
  #define BCM_6345_ENET_PHY_IRQ		(IRQ_INTERNAL_BASE + 12)
  #define BCM_6345_ENET0_RXDMA_IRQ	(IRQ_INTERNAL_BASE + 13 + 1)
-@@ -494,10 +495,17 @@ enum bcm63xx_irq {
+@@ -494,10 +495,17 @@
  #define BCM_6348_TIMER_IRQ		(IRQ_INTERNAL_BASE + 0)
  #define BCM_6348_UART0_IRQ		(IRQ_INTERNAL_BASE + 2)
  #define BCM_6348_DSL_IRQ		(IRQ_INTERNAL_BASE + 4)
@@ -151,8 +157,10 @@
  #define BCM_6348_ENET0_RXDMA_IRQ	(IRQ_INTERNAL_BASE + 20)
  #define BCM_6348_ENET0_TXDMA_IRQ	(IRQ_INTERNAL_BASE + 21)
  #define BCM_6348_ENET1_RXDMA_IRQ	(IRQ_INTERNAL_BASE + 22)
---- /dev/null
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_udc.h
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_udc.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_udc.h	2010-05-27 21:44:19.000000000 -0400
 @@ -0,0 +1,6 @@
 +#ifndef BCM63XX_DEV_USB_UDC_H_
 +#define BCM63XX_DEV_USB_UDC_H_
@@ -160,9 +168,11 @@
 +int bcm63xx_udc_register(void);
 +
 +#endif /* BCM63XX_DEV_USB_UDC_H_ */
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -45,6 +45,7 @@ struct board_info {
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:42:10.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:44:19.000000000 -0400
+@@ -45,6 +45,7 @@
  	unsigned int	has_ohci0:1;
  	unsigned int	has_ehci0:1;
  	unsigned int	has_dsp:1;
@@ -170,8 +180,10 @@
  
  	/* ethernet config */
  	struct bcm63xx_enet_platform_data enet0;
---- a/arch/mips/bcm63xx/Makefile
-+++ b/arch/mips/bcm63xx/Makefile
+Index: linux-2.6.32.13/arch/mips/bcm63xx/Makefile
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/Makefile	2010-05-27 21:34:56.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/Makefile	2010-05-27 21:44:19.000000000 -0400
 @@ -1,6 +1,6 @@
  obj-y		+= clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o \
  		   dev-dsp.o dev-enet.o dev-pcmcia.o dev-uart.o dev-wdt.o \
@@ -180,9 +192,11 @@
  obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
  
  obj-y		+= boards/
---- a/arch/mips/bcm63xx/clk.c
-+++ b/arch/mips/bcm63xx/clk.c
-@@ -141,6 +141,30 @@ static struct clk clk_usbh = {
+Index: linux-2.6.32.13/arch/mips/bcm63xx/clk.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/clk.c	2010-05-27 21:34:56.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/clk.c	2010-05-27 21:44:19.000000000 -0400
+@@ -141,6 +141,30 @@
  };
  
  /*
@@ -213,7 +227,7 @@
   * SPI clock
   */
  static void spi_set(struct clk *clk, int enable)
-@@ -208,6 +232,8 @@ struct clk *clk_get(struct device *dev, 
+@@ -208,6 +232,8 @@
  		return &clk_ephy;
  	if (!strcmp(id, "usbh"))
  		return &clk_usbh;
@@ -222,9 +236,11 @@
  	if (!strcmp(id, "spi"))
  		return &clk_spi;
  	if (!strcmp(id, "periph"))
---- a/arch/mips/bcm63xx/Kconfig
-+++ b/arch/mips/bcm63xx/Kconfig
-@@ -7,6 +7,7 @@ config BCM63XX_CPU_6338
+Index: linux-2.6.32.13/arch/mips/bcm63xx/Kconfig
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/Kconfig	2010-05-27 21:34:56.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/Kconfig	2010-05-27 21:44:19.000000000 -0400
+@@ -7,6 +7,7 @@
  	select USB_ARCH_HAS_OHCI
  	select USB_OHCI_BIG_ENDIAN_DESC
  	select USB_OHCI_BIG_ENDIAN_MMIO
@@ -232,7 +248,7 @@
  
  config BCM63XX_CPU_6345
  	bool "support 6345 CPU"
-@@ -19,6 +20,7 @@ config BCM63XX_CPU_6348
+@@ -19,6 +20,7 @@
  	select USB_ARCH_HAS_OHCI
  	select USB_OHCI_BIG_ENDIAN_DESC
  	select USB_OHCI_BIG_ENDIAN_MMIO

+ 10 - 6
target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch

@@ -1,6 +1,8 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1000,6 +1000,10 @@ int __init board_register_devices(void)
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:44:19.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:44:35.000000000 -0400
+@@ -984,6 +984,10 @@
  		platform_device_register(&bcm63xx_gpio_buttons_device);
  	}
  
@@ -11,9 +13,11 @@
  	return 0;
  }
  
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -59,6 +59,10 @@ struct board_info {
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:44:19.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:44:35.000000000 -0400
+@@ -59,6 +59,10 @@
  
  	/* Buttons */
  	struct gpio_button buttons[2];

+ 6 - 4
target/linux/brcm63xx/patches-2.6.32/220-board-D4PW.patch

@@ -1,6 +1,8 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -467,6 +467,49 @@ static struct board_info __initdata boar
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:44:35.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:45:09.000000000 -0400
+@@ -451,6 +451,49 @@
  
  	.has_ohci0 = 1,
  };
@@ -50,7 +52,7 @@
  #endif
  
  /*
-@@ -692,6 +735,7 @@ static const struct board_info __initdat
+@@ -676,6 +719,7 @@
  	&board_DV201AMR,
  	&board_96348gw_a,
  	&board_rta1025w_16,

+ 13 - 9
target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch

@@ -1,5 +1,7 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:45:09.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:46:39.000000000 -0400
 @@ -17,6 +17,7 @@
  #include <linux/ssb/ssb.h>
  #include <linux/gpio_buttons.h>
@@ -21,7 +23,7 @@
  static struct bcm963xx_nvram nvram;
  static unsigned int mac_addr_used;
  static struct board_info board;
-@@ -713,6 +720,471 @@ static struct board_info __initdata boar
+@@ -697,6 +704,471 @@
  
  	.has_ohci0 = 1,
  };
@@ -493,7 +495,7 @@
  #endif
  
  /*
-@@ -743,9 +1215,30 @@ static const struct board_info __initdat
+@@ -727,9 +1199,30 @@
  	&board_96358vw2,
  	&board_AGPFS0,
  	&board_DWVS0,
@@ -524,7 +526,7 @@
  /*
   * early init callback, read nvram data from flash and checksum it
   */
-@@ -793,6 +1286,9 @@ void __init board_prom_init(void)
+@@ -777,6 +1270,9 @@
  		return;
  	}
  
@@ -534,13 +536,15 @@
  	/* find board by name */
  	for (i = 0; i < ARRAY_SIZE(bcm963xx_boards); i++) {
  		if (strncmp(nvram.name, bcm963xx_boards[i]->name,
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -55,7 +55,7 @@ struct board_info {
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:44:35.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h	2010-05-27 21:47:03.000000000 -0400
+@@ -55,7 +55,7 @@
  	struct bcm63xx_dsp_platform_data dsp;
  
  	/* GPIO LEDs */
--	struct gpio_led leds[8];
+-	struct gpio_led leds[5];
 +	struct gpio_led leds[9];
  
  	/* Buttons */

+ 51 - 31
target/linux/brcm63xx/patches-2.6.32/240-spi.patch

@@ -1,6 +1,8 @@
---- a/arch/mips/bcm63xx/cpu.c
-+++ b/arch/mips/bcm63xx/cpu.c
-@@ -55,6 +55,7 @@ static const unsigned long bcm96338_regs
+Index: linux-2.6.32.13/arch/mips/bcm63xx/cpu.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/cpu.c	2010-05-27 21:34:54.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/cpu.c	2010-05-27 21:48:23.000000000 -0400
+@@ -55,6 +55,7 @@
  
  static const int bcm96338_irqs[] = {
  	[IRQ_TIMER]		= BCM_6338_TIMER_IRQ,
@@ -8,7 +10,7 @@
  	[IRQ_UART0]		= BCM_6338_UART0_IRQ,
  	[IRQ_DSL]		= BCM_6338_DSL_IRQ,
  	[IRQ_ENET0]		= BCM_6338_ENET0_IRQ,
-@@ -127,6 +128,7 @@ static const unsigned long bcm96348_regs
+@@ -127,6 +128,7 @@
  
  static const int bcm96348_irqs[] = {
  	[IRQ_TIMER]		= BCM_6348_TIMER_IRQ,
@@ -16,7 +18,7 @@
  	[IRQ_UART0]		= BCM_6348_UART0_IRQ,
  	[IRQ_DSL]		= BCM_6348_DSL_IRQ,
  	[IRQ_ENET0]		= BCM_6348_ENET0_IRQ,
-@@ -169,6 +171,7 @@ static const unsigned long bcm96358_regs
+@@ -169,6 +171,7 @@
  
  static const int bcm96358_irqs[] = {
  	[IRQ_TIMER]		= BCM_6358_TIMER_IRQ,
@@ -24,8 +26,10 @@
  	[IRQ_UART0]		= BCM_6358_UART0_IRQ,
  	[IRQ_DSL]		= BCM_6358_DSL_IRQ,
  	[IRQ_ENET0]		= BCM_6358_ENET0_IRQ,
---- /dev/null
-+++ b/arch/mips/bcm63xx/dev-spi.c
+Index: linux-2.6.32.13/arch/mips/bcm63xx/dev-spi.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.32.13/arch/mips/bcm63xx/dev-spi.c	2010-05-27 21:48:23.000000000 -0400
 @@ -0,0 +1,60 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
@@ -87,9 +91,11 @@
 +
 +	return platform_device_register(&bcm63xx_spi_device);
 +}
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
-@@ -108,6 +108,7 @@ enum bcm63xx_regs_set {
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h	2010-05-27 21:44:19.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_cpu.h	2010-05-27 21:48:23.000000000 -0400
+@@ -108,6 +108,7 @@
  #define RSET_WDT_SIZE			12
  #define RSET_ENET_SIZE			2048
  #define RSET_ENETDMA_SIZE		2048
@@ -97,7 +103,7 @@
  #define RSET_UART_SIZE			24
  #define RSET_UDC_SIZE			256
  #define RSET_OHCI_SIZE			256
-@@ -209,7 +210,7 @@ enum bcm63xx_regs_set {
+@@ -209,7 +210,7 @@
  #define BCM_6358_WDT_BASE		(0xfffe005c)
  #define BCM_6358_UART0_BASE		(0xfffe0100)
  #define BCM_6358_GPIO_BASE		(0xfffe0080)
@@ -106,7 +112,7 @@
  #define BCM_6358_UDC0_BASE		(0xfffe0400)
  #define BCM_6358_OHCI0_BASE		(0xfffe1400)
  #define BCM_6358_OHCI_PRIV_BASE		(0xdeadbeef)
-@@ -428,6 +429,7 @@ static inline unsigned long bcm63xx_regs
+@@ -428,6 +429,7 @@
   */
  enum bcm63xx_irq {
  	IRQ_TIMER = 0,
@@ -114,7 +120,7 @@
  	IRQ_UART0,
  	IRQ_DSL,
  	IRQ_UDC0,
-@@ -493,6 +495,7 @@ enum bcm63xx_irq {
+@@ -493,6 +495,7 @@
   * 6348 irqs
   */
  #define BCM_6348_TIMER_IRQ		(IRQ_INTERNAL_BASE + 0)
@@ -122,7 +128,7 @@
  #define BCM_6348_UART0_IRQ		(IRQ_INTERNAL_BASE + 2)
  #define BCM_6348_DSL_IRQ		(IRQ_INTERNAL_BASE + 4)
  #define BCM_6348_UDC0_IRQ		(IRQ_INTERNAL_BASE + 6)
-@@ -517,6 +520,7 @@ enum bcm63xx_irq {
+@@ -517,6 +520,7 @@
   * 6358 irqs
   */
  #define BCM_6358_TIMER_IRQ		(IRQ_INTERNAL_BASE + 0)
@@ -130,8 +136,10 @@
  #define BCM_6358_UART0_IRQ		(IRQ_INTERNAL_BASE + 2)
  #define BCM_6358_OHCI0_IRQ		(IRQ_INTERNAL_BASE + 5)
  #define BCM_6358_ENET1_IRQ		(IRQ_INTERNAL_BASE + 6)
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h	2010-05-27 21:34:54.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h	2010-05-27 21:48:23.000000000 -0400
 @@ -769,5 +769,117 @@
  #define DMIPSPLLCFG_N2_SHIFT		29
  #define DMIPSPLLCFG_N2_MASK		(0x7 << DMIPSPLLCFG_N2_SHIFT)
@@ -250,8 +258,10 @@
 +
  #endif /* BCM63XX_REGS_H_ */
  
---- /dev/null
-+++ b/drivers/spi/bcm63xx_spi.c
+Index: linux-2.6.32.13/drivers/spi/bcm63xx_spi.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.32.13/drivers/spi/bcm63xx_spi.c	2010-05-27 21:48:23.000000000 -0400
 @@ -0,0 +1,628 @@
 +/*
 + * Broadcom BCM63xx SPI controller support
@@ -881,9 +891,11 @@
 +MODULE_DESCRIPTION("Broadcom BCM63xx SPI Controller driver");
 +MODULE_LICENSE("GPL");
 +MODULE_VERSION(DRV_VER);
---- a/drivers/spi/Kconfig
-+++ b/drivers/spi/Kconfig
-@@ -60,6 +60,13 @@ config SPI_ATMEL
+Index: linux-2.6.32.13/drivers/spi/Kconfig
+===================================================================
+--- linux-2.6.32.13.orig/drivers/spi/Kconfig	2010-05-27 21:34:54.000000000 -0400
++++ linux-2.6.32.13/drivers/spi/Kconfig	2010-05-27 21:48:23.000000000 -0400
+@@ -60,6 +60,13 @@
  	  This selects a driver for the Atmel SPI Controller, present on
  	  many AT32 (AVR32) and AT91 (ARM) chips.
  
@@ -897,9 +909,11 @@
  config SPI_BFIN
  	tristate "SPI controller driver for ADI Blackfin5xx"
  	depends on BLACKFIN
---- a/drivers/spi/Makefile
-+++ b/drivers/spi/Makefile
-@@ -34,6 +34,7 @@ obj-$(CONFIG_SPI_TXX9)			+= spi_txx9.o
+Index: linux-2.6.32.13/drivers/spi/Makefile
+===================================================================
+--- linux-2.6.32.13.orig/drivers/spi/Makefile	2010-05-27 21:34:54.000000000 -0400
++++ linux-2.6.32.13/drivers/spi/Makefile	2010-05-27 21:48:23.000000000 -0400
+@@ -34,6 +34,7 @@
  obj-$(CONFIG_SPI_XILINX)		+= xilinx_spi.o
  obj-$(CONFIG_SPI_SH_SCI)		+= spi_sh_sci.o
  obj-$(CONFIG_SPI_STMP3XXX)		+= spi_stmp.o
@@ -907,8 +921,10 @@
  # 	... add above this line ...
  
  # SPI protocol drivers (device/link on bus)
---- /dev/null
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_spi.h
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_spi.h
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_spi.h	2010-05-27 21:48:23.000000000 -0400
 @@ -0,0 +1,15 @@
 +#ifndef BCM63XX_DEV_SPI_H
 +#define BCM63XX_DEV_SPI_H
@@ -925,8 +941,10 @@
 +};
 +
 +#endif /* BCM63XX_DEV_SPI_H */
---- a/arch/mips/bcm63xx/Makefile
-+++ b/arch/mips/bcm63xx/Makefile
+Index: linux-2.6.32.13/arch/mips/bcm63xx/Makefile
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/Makefile	2010-05-27 21:44:19.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/Makefile	2010-05-27 21:48:23.000000000 -0400
 @@ -1,6 +1,6 @@
  obj-y		+= clk.o cpu.o cs.o gpio.o irq.o prom.o setup.o timer.o \
  		   dev-dsp.o dev-enet.o dev-pcmcia.o dev-uart.o dev-wdt.o \
@@ -935,8 +953,10 @@
  obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
  
  obj-y		+= boards/
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:46:39.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:48:23.000000000 -0400
 @@ -30,6 +30,7 @@
  #include <bcm63xx_dev_usb_ohci.h>
  #include <bcm63xx_dev_usb_ehci.h>
@@ -945,7 +965,7 @@
  #include <board_bcm963xx.h>
  
  #define PFX	"board_bcm963xx: "
-@@ -1495,6 +1496,9 @@ int __init board_register_devices(void)
+@@ -1479,6 +1480,9 @@
  	if (board.has_udc0)
  		bcm63xx_udc_register();
  

+ 9 - 5
target/linux/brcm63xx/patches-2.6.32/250-6358-enet1-external-mii-clk.patch

@@ -1,6 +1,8 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1338,6 +1338,8 @@ void __init board_prom_init(void)
+Index: linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:48:23.000000000 -0400
++++ linux-2.6.32.13/arch/mips/bcm63xx/boards/board_bcm963xx.c	2010-05-27 21:48:31.000000000 -0400
+@@ -1322,6 +1322,8 @@
  		if (BCMCPU_IS_6348())
  			val |= GPIO_MODE_6348_G3_EXT_MII |
  				GPIO_MODE_6348_G0_EXT_MII;
@@ -9,8 +11,10 @@
  	}
  
  	bcm_gpio_writel(val, GPIO_MODE_REG);
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
+Index: linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h
+===================================================================
+--- linux-2.6.32.13.orig/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h	2010-05-27 21:48:23.000000000 -0400
++++ linux-2.6.32.13/arch/mips/include/asm/mach-bcm63xx/bcm63xx_regs.h	2010-05-27 21:48:31.000000000 -0400
 @@ -402,6 +402,8 @@
  #define GPIO_MODE_6358_EXTRA_SPI_SS	(1 << 7)
  #define GPIO_MODE_6358_SERIAL_LED	(1 << 10)