From f296eeab5356352ff6ad9b523bbe83b489b5cef6 Mon Sep 17 00:00:00 2001 From: Daniel Dickinson Date: Sun, 30 May 2010 02:04:56 +0000 Subject: [PATCH] brcm63xx: Fixed 96348GW (Tecom Gx00) LED definitions to match reality (vs reference design) SVN-Revision: 21631 --- .../140-new_bcm96348gw_leds.patch | 59 +++++-------- .../patches-2.6.32/150-alice_gate2_leds.patch | 8 +- .../180-udc_preliminary_support.patch | 74 ++++++++++------- .../200-extended-platform-devices.patch | 16 ++-- .../patches-2.6.32/220-board-D4PW.patch | 10 ++- .../patches-2.6.32/221-board-NB4.patch | 22 +++-- .../brcm63xx/patches-2.6.32/240-spi.patch | 82 ++++++++++++------- .../250-6358-enet1-external-mii-clk.patch | 14 ++-- 8 files changed, 160 insertions(+), 125 deletions(-) diff --git a/target/linux/brcm63xx/patches-2.6.32/140-new_bcm96348gw_leds.patch b/target/linux/brcm63xx/patches-2.6.32/140-new_bcm96348gw_leds.patch index 2288baafa6..8f9ca8be5a 100644 --- a/target/linux/brcm63xx/patches-2.6.32/140-new_bcm96348gw_leds.patch +++ b/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]; diff --git a/target/linux/brcm63xx/patches-2.6.32/150-alice_gate2_leds.patch b/target/linux/brcm63xx/patches-2.6.32/150-alice_gate2_leds.patch index e464384d51..520fdeae5f 100644 --- a/target/linux/brcm63xx/patches-2.6.32/150-alice_gate2_leds.patch +++ b/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, diff --git a/target/linux/brcm63xx/patches-2.6.32/180-udc_preliminary_support.patch b/target/linux/brcm63xx/patches-2.6.32/180-udc_preliminary_support.patch index 20b45355fc..bff4838a7e 100644 --- a/target/linux/brcm63xx/patches-2.6.32/180-udc_preliminary_support.patch +++ b/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 #include @@ -8,7 +10,7 @@ #include #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 @@ -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 diff --git a/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch b/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch index c6425091ca..098353135c 100644 --- a/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch +++ b/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]; diff --git a/target/linux/brcm63xx/patches-2.6.32/220-board-D4PW.patch b/target/linux/brcm63xx/patches-2.6.32/220-board-D4PW.patch index 46e2595ea2..f7c8dab2aa 100644 --- a/target/linux/brcm63xx/patches-2.6.32/220-board-D4PW.patch +++ b/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, diff --git a/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch b/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch index 7c17b887d2..a3b19b7742 100644 --- a/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch +++ b/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 #include @@ -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 */ diff --git a/target/linux/brcm63xx/patches-2.6.32/240-spi.patch b/target/linux/brcm63xx/patches-2.6.32/240-spi.patch index a891ca3896..52f5241511 100644 --- a/target/linux/brcm63xx/patches-2.6.32/240-spi.patch +++ b/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 #include @@ -945,7 +965,7 @@ #include #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(); diff --git a/target/linux/brcm63xx/patches-2.6.32/250-6358-enet1-external-mii-clk.patch b/target/linux/brcm63xx/patches-2.6.32/250-6358-enet1-external-mii-clk.patch index 0c9cd76225..d746c8334b 100644 --- a/target/linux/brcm63xx/patches-2.6.32/250-6358-enet1-external-mii-clk.patch +++ b/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) -- 2.25.1