From: Jonas Gorski Date: Tue, 31 Jul 2012 14:27:25 +0000 (+0000) Subject: bcm63xx: reorder patches X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;hb=22ecdf31c38971299fb1f7709b29a668c680c798 bcm63xx: reorder patches Fix the order and names of patches. Signed-off-by: Jonas Gorski SVN-Revision: 32920 --- diff --git a/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch b/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch deleted file mode 100644 index c00ed113e3..0000000000 --- a/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c -+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -724,6 +724,8 @@ void __init board_prom_init(void) - if (!memcmp(cfe, "cfe-v", 5)) - snprintf(cfe_version, sizeof(cfe_version), "%u.%u.%u-%u.%u", - cfe[5], cfe[6], cfe[7], cfe[8], cfe[9]); -+ else if (!memcmp(cfe, "cfe-", 4)) -+ snprintf(cfe_version, 16, "%s", (char *) &cfe[4]); - else - strcpy(cfe_version, "unknown"); - printk(KERN_INFO PFX "CFE version: %s\n", cfe_version); ---- a/drivers/mtd/bcm63xxpart.c -+++ b/drivers/mtd/bcm63xxpart.c -@@ -54,10 +54,10 @@ static int bcm63xx_detect_cfe(struct mtd - if (ret) - return ret; - -- if (strncmp("cfe-v", buf, 5) == 0) -+ if (strncmp("cfe-", buf, 4) == 0) - return 0; - -- /* very old CFE's do not have the cfe-v string, so check for magic */ -+ /* very old CFE's do not have the cfe- string, so check for magic */ - ret = mtd_read(master, BCM63XX_CFE_MAGIC_OFFSET, 8, &retlen, - (void *)buf); - buf[retlen] = 0; diff --git a/target/linux/brcm63xx/patches-3.3/300-reset_buttons.patch b/target/linux/brcm63xx/patches-3.3/300-reset_buttons.patch index 28a88e6d1f..0e1d6f8d95 100644 --- a/target/linux/brcm63xx/patches-3.3/300-reset_buttons.patch +++ b/target/linux/brcm63xx/patches-3.3/300-reset_buttons.patch @@ -53,7 +53,7 @@ }; static struct board_info __initdata board_FAST2404 = { -@@ -823,11 +848,23 @@ static struct platform_device bcm63xx_gp +@@ -821,11 +846,23 @@ static struct platform_device bcm63xx_gp .dev.platform_data = &bcm63xx_led_data, }; @@ -77,7 +77,7 @@ if (board.has_uart0) bcm63xx_uart_register(0); -@@ -870,5 +907,16 @@ int __init board_register_devices(void) +@@ -868,5 +905,16 @@ int __init board_register_devices(void) platform_device_register(&bcm63xx_gpio_leds); diff --git a/target/linux/brcm63xx/patches-3.3/301-led_count.patch b/target/linux/brcm63xx/patches-3.3/301-led_count.patch index 4299d682e0..84d57a00dd 100644 --- a/target/linux/brcm63xx/patches-3.3/301-led_count.patch +++ b/target/linux/brcm63xx/patches-3.3/301-led_count.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -864,6 +864,7 @@ static struct platform_device bcm63xx_gp +@@ -862,6 +862,7 @@ static struct platform_device bcm63xx_gp int __init board_register_devices(void) { int button_count = 0; @@ -8,7 +8,7 @@ if (board.has_uart0) bcm63xx_uart_register(0); -@@ -902,7 +903,11 @@ int __init board_register_devices(void) +@@ -900,7 +901,11 @@ int __init board_register_devices(void) bcm63xx_flash_register(); diff --git a/target/linux/brcm63xx/patches-3.3/302-extended-platform-devices.patch b/target/linux/brcm63xx/patches-3.3/302-extended-platform-devices.patch index d2b99a5816..b48ef733bf 100644 --- a/target/linux/brcm63xx/patches-3.3/302-extended-platform-devices.patch +++ b/target/linux/brcm63xx/patches-3.3/302-extended-platform-devices.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -901,6 +901,9 @@ int __init board_register_devices(void) +@@ -899,6 +899,9 @@ int __init board_register_devices(void) bcm63xx_spi_register(); diff --git a/target/linux/brcm63xx/patches-3.3/303-spi-board-info.patch b/target/linux/brcm63xx/patches-3.3/303-spi-board-info.patch index b81adb50e8..517a53b565 100644 --- a/target/linux/brcm63xx/patches-3.3/303-spi-board-info.patch +++ b/target/linux/brcm63xx/patches-3.3/303-spi-board-info.patch @@ -8,7 +8,7 @@ #include #include #include -@@ -904,6 +905,9 @@ int __init board_register_devices(void) +@@ -902,6 +903,9 @@ int __init board_register_devices(void) if (board.num_devs) platform_add_devices(board.devs, board.num_devs); diff --git a/target/linux/brcm63xx/patches-3.3/304-boardid_fixup.patch b/target/linux/brcm63xx/patches-3.3/304-boardid_fixup.patch index b486a86457..0c2fab5753 100644 --- a/target/linux/brcm63xx/patches-3.3/304-boardid_fixup.patch +++ b/target/linux/brcm63xx/patches-3.3/304-boardid_fixup.patch @@ -47,7 +47,7 @@ /* * early init callback, read nvram data from flash and checksum it */ -@@ -773,6 +800,11 @@ void __init board_prom_init(void) +@@ -771,6 +798,11 @@ void __init board_prom_init(void) return; } diff --git a/target/linux/brcm63xx/patches-3.3/311-cfe_version_mod.patch b/target/linux/brcm63xx/patches-3.3/311-cfe_version_mod.patch new file mode 100644 index 0000000000..1269bc0c47 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/311-cfe_version_mod.patch @@ -0,0 +1,26 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -777,6 +777,8 @@ void __init board_prom_init(void) + if (!memcmp(cfe, "cfe-v", 5)) + snprintf(cfe_version, sizeof(cfe_version), "%u.%u.%u-%u.%u", + cfe[5], cfe[6], cfe[7], cfe[8], cfe[9]); ++ else if (!memcmp(cfe, "cfe-", 4)) ++ snprintf(cfe_version, 16, "%s", (char *) &cfe[4]); + else + strcpy(cfe_version, "unknown"); + printk(KERN_INFO PFX "CFE version: %s\n", cfe_version); +--- a/drivers/mtd/bcm63xxpart.c ++++ b/drivers/mtd/bcm63xxpart.c +@@ -54,10 +54,10 @@ static int bcm63xx_detect_cfe(struct mtd + if (ret) + return ret; + +- if (strncmp("cfe-v", buf, 5) == 0) ++ if (strncmp("cfe-", buf, 4) == 0) + return 0; + +- /* very old CFE's do not have the cfe-v string, so check for magic */ ++ /* very old CFE's do not have the cfe- string, so check for magic */ + ret = mtd_read(master, BCM63XX_CFE_MAGIC_OFFSET, 8, &retlen, + (void *)buf); + buf[retlen] = 0; diff --git a/target/linux/brcm63xx/patches-3.3/427-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch b/target/linux/brcm63xx/patches-3.3/427-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch new file mode 100644 index 0000000000..6e5cdbe840 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/427-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch @@ -0,0 +1,109 @@ +From f888824d352df894ab721a5ca067b0313500efe7 Mon Sep 17 00:00:00 2001 +From: Jonas Gorski +Date: Thu, 3 May 2012 12:17:54 +0200 +Subject: [PATCH 38/59] MIPS: BCM63XX: store the flash type in global variable + +--- + arch/mips/bcm63xx/dev-flash.c | 36 +++++++++++++------ + .../include/asm/mach-bcm63xx/bcm63xx_dev_flash.h | 2 + + 2 files changed, 26 insertions(+), 12 deletions(-) + +--- a/arch/mips/bcm63xx/dev-flash.c ++++ b/arch/mips/bcm63xx/dev-flash.c +@@ -25,6 +25,8 @@ + #include + #include + ++int bcm63xx_attached_flash = -1; ++ + static struct mtd_partition mtd_partitions[] = { + { + .name = "cfe", +@@ -86,20 +88,23 @@ static int __init bcm63xx_detect_flash_t + bcm63xx_spi_flash_info[0].max_speed_hz = 16666667; + + if (val & STRAPBUS_6328_BOOT_SEL_SERIAL) +- return BCM63XX_FLASH_TYPE_SERIAL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; + else +- return BCM63XX_FLASH_TYPE_NAND; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_NAND; ++ break; + case BCM6338_CPU_ID: + case BCM6345_CPU_ID: + case BCM6348_CPU_ID: + /* no way to auto detect so assume parallel */ +- return BCM63XX_FLASH_TYPE_PARALLEL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; ++ break; + case BCM6358_CPU_ID: + val = bcm_gpio_readl(GPIO_STRAPBUS_REG); + if (val & STRAPBUS_6358_BOOT_SEL_PARALLEL) +- return BCM63XX_FLASH_TYPE_PARALLEL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; + else +- return BCM63XX_FLASH_TYPE_SERIAL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; ++ break; + case BCM6368_CPU_ID: + val = bcm_gpio_readl(GPIO_STRAPBUS_REG); + if (val & STRAPBUS_6368_SPI_CLK_FAST) +@@ -107,25 +112,32 @@ static int __init bcm63xx_detect_flash_t + + switch (val & STRAPBUS_6368_BOOT_SEL_MASK) { + case STRAPBUS_6368_BOOT_SEL_NAND: +- return BCM63XX_FLASH_TYPE_NAND; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_NAND; ++ break; + case STRAPBUS_6368_BOOT_SEL_SERIAL: +- return BCM63XX_FLASH_TYPE_SERIAL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; ++ break; + case STRAPBUS_6368_BOOT_SEL_PARALLEL: +- return BCM63XX_FLASH_TYPE_PARALLEL; ++ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; ++ break; ++ default: ++ return -EINVAL; + } + default: + return -EINVAL; + } ++ ++ return 0; + } + + int __init bcm63xx_flash_register(void) + { +- int flash_type; + u32 val; + +- flash_type = bcm63xx_detect_flash_type(); + +- switch (flash_type) { ++ bcm63xx_detect_flash_type(); ++ ++ switch (bcm63xx_attached_flash) { + case BCM63XX_FLASH_TYPE_PARALLEL: + /* read base address of boot chip select (0) */ + val = bcm_mpi_readl(MPI_CSBASE_REG(0)); +@@ -146,7 +158,7 @@ int __init bcm63xx_flash_register(void) + return -ENODEV; + default: + pr_err("flash detection failed for BCM%x: %d\n", +- bcm63xx_get_cpu_id(), flash_type); ++ bcm63xx_get_cpu_id(), bcm63xx_attached_flash); + return -ENODEV; + } + } +--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h ++++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h +@@ -7,6 +7,8 @@ enum { + BCM63XX_FLASH_TYPE_NAND, + }; + ++extern int bcm63xx_attached_flash; ++ + int __init bcm63xx_flash_register(void); + + #endif /* __BCM63XX_FLASH_H */ diff --git a/target/linux/brcm63xx/patches-3.3/427-MTD-m25p80-allow-passing-pp_data.patch b/target/linux/brcm63xx/patches-3.3/427-MTD-m25p80-allow-passing-pp_data.patch deleted file mode 100644 index 6e5cdbe840..0000000000 --- a/target/linux/brcm63xx/patches-3.3/427-MTD-m25p80-allow-passing-pp_data.patch +++ /dev/null @@ -1,109 +0,0 @@ -From f888824d352df894ab721a5ca067b0313500efe7 Mon Sep 17 00:00:00 2001 -From: Jonas Gorski -Date: Thu, 3 May 2012 12:17:54 +0200 -Subject: [PATCH 38/59] MIPS: BCM63XX: store the flash type in global variable - ---- - arch/mips/bcm63xx/dev-flash.c | 36 +++++++++++++------ - .../include/asm/mach-bcm63xx/bcm63xx_dev_flash.h | 2 + - 2 files changed, 26 insertions(+), 12 deletions(-) - ---- a/arch/mips/bcm63xx/dev-flash.c -+++ b/arch/mips/bcm63xx/dev-flash.c -@@ -25,6 +25,8 @@ - #include - #include - -+int bcm63xx_attached_flash = -1; -+ - static struct mtd_partition mtd_partitions[] = { - { - .name = "cfe", -@@ -86,20 +88,23 @@ static int __init bcm63xx_detect_flash_t - bcm63xx_spi_flash_info[0].max_speed_hz = 16666667; - - if (val & STRAPBUS_6328_BOOT_SEL_SERIAL) -- return BCM63XX_FLASH_TYPE_SERIAL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; - else -- return BCM63XX_FLASH_TYPE_NAND; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_NAND; -+ break; - case BCM6338_CPU_ID: - case BCM6345_CPU_ID: - case BCM6348_CPU_ID: - /* no way to auto detect so assume parallel */ -- return BCM63XX_FLASH_TYPE_PARALLEL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; -+ break; - case BCM6358_CPU_ID: - val = bcm_gpio_readl(GPIO_STRAPBUS_REG); - if (val & STRAPBUS_6358_BOOT_SEL_PARALLEL) -- return BCM63XX_FLASH_TYPE_PARALLEL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; - else -- return BCM63XX_FLASH_TYPE_SERIAL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; -+ break; - case BCM6368_CPU_ID: - val = bcm_gpio_readl(GPIO_STRAPBUS_REG); - if (val & STRAPBUS_6368_SPI_CLK_FAST) -@@ -107,25 +112,32 @@ static int __init bcm63xx_detect_flash_t - - switch (val & STRAPBUS_6368_BOOT_SEL_MASK) { - case STRAPBUS_6368_BOOT_SEL_NAND: -- return BCM63XX_FLASH_TYPE_NAND; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_NAND; -+ break; - case STRAPBUS_6368_BOOT_SEL_SERIAL: -- return BCM63XX_FLASH_TYPE_SERIAL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_SERIAL; -+ break; - case STRAPBUS_6368_BOOT_SEL_PARALLEL: -- return BCM63XX_FLASH_TYPE_PARALLEL; -+ bcm63xx_attached_flash = BCM63XX_FLASH_TYPE_PARALLEL; -+ break; -+ default: -+ return -EINVAL; - } - default: - return -EINVAL; - } -+ -+ return 0; - } - - int __init bcm63xx_flash_register(void) - { -- int flash_type; - u32 val; - -- flash_type = bcm63xx_detect_flash_type(); - -- switch (flash_type) { -+ bcm63xx_detect_flash_type(); -+ -+ switch (bcm63xx_attached_flash) { - case BCM63XX_FLASH_TYPE_PARALLEL: - /* read base address of boot chip select (0) */ - val = bcm_mpi_readl(MPI_CSBASE_REG(0)); -@@ -146,7 +158,7 @@ int __init bcm63xx_flash_register(void) - return -ENODEV; - default: - pr_err("flash detection failed for BCM%x: %d\n", -- bcm63xx_get_cpu_id(), flash_type); -+ bcm63xx_get_cpu_id(), bcm63xx_attached_flash); - return -ENODEV; - } - } ---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h -+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_flash.h -@@ -7,6 +7,8 @@ enum { - BCM63XX_FLASH_TYPE_NAND, - }; - -+extern int bcm63xx_attached_flash; -+ - int __init bcm63xx_flash_register(void); - - #endif /* __BCM63XX_FLASH_H */ diff --git a/target/linux/brcm63xx/patches-3.3/525-board_96348w3.patch b/target/linux/brcm63xx/patches-3.3/525-board_96348w3.patch new file mode 100644 index 0000000000..ffce6fc14a --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/525-board_96348w3.patch @@ -0,0 +1,68 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -1334,6 +1334,57 @@ static struct board_info __initdata boar + }, + }; + ++/* NetGear DG834G v4 */ ++static struct board_info __initdata board_96348W3 = { ++ .name = "96348W3", ++ .expected_cpu_id = 0x6348, ++ ++ .has_uart0 = 1, ++ .has_enet1 = 1, ++ .has_pci = 1, ++ ++ .enet1 = { ++ .force_speed_100 = 1, ++ .force_duplex_full = 1, ++ }, ++ ++ .has_ohci0 = 1, ++ ++ .leds = { ++ { ++ .name = "96348W3:green:power", ++ .gpio = 0, ++ .active_low = 1, ++ .default_trigger = "default-on", ++ }, ++ { ++ .name = "96348W3:red:power", ++ .gpio = 1, ++ .active_low = 1, ++ }, ++ { ++ .name = "96348W3::adsl", ++ .gpio = 2, ++ .active_low = 1, ++ }, ++ { ++ .name = "96348W3::internet", ++ .gpio = 3, ++ .active_low = 1, ++ }, ++ }, ++ .buttons = { ++ { ++ .desc = "reset", ++ .gpio = 6, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_RESTART, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ }, ++}; ++ + #endif + + /* +@@ -2438,6 +2489,7 @@ static const struct board_info __initdat + &board_ct536_ct5621, + &board_96348A_122, + &board_CPVA502plus, ++ &board_96348W3, + #endif + + #ifdef CONFIG_BCM63XX_CPU_6358 diff --git a/target/linux/brcm63xx/patches-3.3/526-board_CT6373-1.patch b/target/linux/brcm63xx/patches-3.3/526-board_CT6373-1.patch new file mode 100644 index 0000000000..effd9f6d95 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/526-board_CT6373-1.patch @@ -0,0 +1,136 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -51,6 +51,13 @@ + #define NB4_SPI_GPIO_CLK 6 + #define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X)) + ++#define CT6373_PID_OFFSET 0xff80 ++#define CT6373_74X164_GPIO_BASE 64 ++#define CT6373_SPI_GPIO_MOSI 7 ++#define CT6373_SPI_GPIO_CLK 6 ++#define CT6373_74HC64_GPIO(X) (CT6373_74X164_GPIO_BASE + (X)) ++ ++ + static struct board_info board; + + /* +@@ -2171,6 +2178,111 @@ static struct board_info __initdata boar + .num_spis = ARRAY_SIZE(nb4_spi_devices), + }; + ++ ++struct spi_gpio_platform_data ct6373_spi_gpio_data = { ++ .sck = CT6373_SPI_GPIO_CLK, ++ .mosi = CT6373_SPI_GPIO_MOSI, ++ .miso = SPI_GPIO_NO_MISO, ++ .num_chipselect = 1, ++}; ++ ++static struct platform_device ct6373_spi_gpio = { ++ .name = "spi_gpio", ++ .id = 1, ++ .dev = { ++ .platform_data = &ct6373_spi_gpio_data, ++ }, ++}; ++ ++static struct platform_device * __initdata ct6373_devices[] = { ++ &ct6373_spi_gpio, ++}; ++ ++const struct gen_74x164_chip_platform_data ct6373_74x164_platform_data = { ++ .base = CT6373_74X164_GPIO_BASE ++}; ++ ++static struct spi_board_info ct6373_spi_devices[] = { ++ { ++ .modalias = "74x164", ++ .max_speed_hz = 781000, ++ .bus_num = 1, ++ .controller_data = (void *) SPI_GPIO_NO_CHIPSELECT, ++ .mode = SPI_MODE_0, ++ .platform_data = &ct6373_74x164_platform_data ++ } ++}; ++ ++static struct board_info __initdata board_ct6373_1 = { ++ .name = "CT6373-1", ++ .expected_cpu_id = 0x6358, ++ ++ .has_uart0 = 1, ++ .has_pci = 1, ++ .has_ohci0 = 1, ++ .has_ehci0 = 1, ++ ++ .has_enet1 = 1, ++ .enet1 = { ++ .force_speed_100 = 1, ++ .force_duplex_full = 1, ++ }, ++ ++ .leds = { ++ { ++ .name = "CT6373-1:green:power", ++ .gpio = 0, ++ .default_trigger = "default-on", ++ }, ++ { ++ .name = "CT6373-1:green:usb", ++ .gpio = 3, ++ .active_low = 1, ++ }, ++ { ++ .name = "CT6373-1:green:wlan", ++ .gpio = 9, ++ .active_low = 1, ++ }, ++ { ++ .name = "CT6373-1:green:adsl", ++ .gpio = CT6373_74HC64_GPIO(0), ++ .active_low = 1, ++ }, ++ { ++ .name = "CT6373-1:green:line", ++ .gpio = CT6373_74HC64_GPIO(1), ++ .active_low = 1, ++ }, ++ { ++ .name = "CT6373-1:green:fxs1", ++ .gpio = CT6373_74HC64_GPIO(2), ++ .active_low = 1, ++ }, ++ { ++ .name = "CT6373-1:green:fxs2", ++ .gpio = CT6373_74HC64_GPIO(3), ++ .active_low = 1, ++ }, ++ }, ++ ++ .buttons = { ++ { ++ .desc = "reset", ++ .gpio = 35, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_RESTART, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ }, ++ ++ .devs = ct6373_devices, ++ .num_devs = ARRAY_SIZE(ct6373_devices), ++ .spis = ct6373_spi_devices, ++ .num_spis = ARRAY_SIZE(ct6373_spi_devices), ++}; ++ + static struct board_info __initdata board_HW553 = { + .name = "HW553", + .expected_cpu_id = 0x6358, +@@ -2504,6 +2616,7 @@ static const struct board_info __initdat + &board_nb4_ser_r2, + &board_nb4_fxc_r1, + &board_nb4_fxc_r2, ++ &board_ct6373_1, + &board_HW553, + &board_spw303v, + #endif diff --git a/target/linux/brcm63xx/patches-3.3/527-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-3.3/527-board_dva-g3810bn-tl-1.patch new file mode 100644 index 0000000000..034626c8a4 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/527-board_dva-g3810bn-tl-1.patch @@ -0,0 +1,82 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -2422,6 +2422,71 @@ static struct board_info __initdata boar + }, + } + }; ++ ++/* D-Link DVA-G3810BN/TL */ ++static struct board_info __initdata board_DVAG3810BN = { ++ .name = "DVAG3810BN", ++ .expected_cpu_id = 0x6358, ++ ++ .has_uart0 = 1, ++ .has_enet0 = 1, ++ .has_enet1 = 1, ++ .has_pci = 1, ++ ++ .enet0 = { ++ .has_phy = 0, ++ .use_internal_phy = 1, ++ .force_speed_100 = 1, ++ .force_duplex_full = 1, ++ }, ++ ++ .enet1 = { ++ .force_speed_100 = 1, ++ .force_duplex_full = 1, ++ }, ++ ++ ++ .has_ohci0 = 1, ++ .has_pccard = 1, ++ .has_ehci0 = 1, ++ ++ .leds = { ++ { ++ .name = "DVAG3810BN::voip", ++ .gpio = 1, ++ }, ++ { ++ .name = "DVAG3810BN::dsl", ++ .gpio = 22, ++ .active_low = 1, ++ }, ++ { ++ .name = "DVAG3810BN::internet", ++ .gpio = 23, ++ .active_low = 1, ++ }, ++ { ++ .name = "DVAG3810BN::power", ++ .gpio = 4, ++ .default_trigger = "default-on", ++ }, ++ { ++ .name = "DVAG3810BN::stop", ++ .gpio = 5, ++ }, ++ }, ++ ++ .buttons = { ++ { ++ .desc = "reset", ++ .gpio = 34, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_RESTART, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ }, ++}; + #endif + + /* +@@ -2619,6 +2684,7 @@ static const struct board_info __initdat + &board_ct6373_1, + &board_HW553, + &board_spw303v, ++ &board_DVAG3810BN, + #endif + + #ifdef CONFIG_BCM63XX_CPU_6368 diff --git a/target/linux/brcm63xx/patches-3.3/550-alice_gate2_leds.patch b/target/linux/brcm63xx/patches-3.3/550-alice_gate2_leds.patch index bd43da5c0c..ebf6f65421 100644 --- a/target/linux/brcm63xx/patches-3.3/550-alice_gate2_leds.patch +++ b/target/linux/brcm63xx/patches-3.3/550-alice_gate2_leds.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -1551,6 +1551,98 @@ static struct board_info __initdata boar +@@ -1609,6 +1609,98 @@ static struct board_info __initdata boar .has_ohci0 = 1, .has_ehci0 = 1, diff --git a/target/linux/brcm63xx/patches-3.3/551-96348gw_a_leds.patch b/target/linux/brcm63xx/patches-3.3/551-96348gw_a_leds.patch index 06ecfb6a89..02938c3eef 100644 --- a/target/linux/brcm63xx/patches-3.3/551-96348gw_a_leds.patch +++ b/target/linux/brcm63xx/patches-3.3/551-96348gw_a_leds.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -1059,6 +1059,19 @@ static struct board_info __initdata boar +@@ -1066,6 +1066,19 @@ static struct board_info __initdata boar }, .has_ohci0 = 1, diff --git a/target/linux/brcm63xx/patches-3.3/552-board_96348gw-10_reset_button.patch b/target/linux/brcm63xx/patches-3.3/552-board_96348gw-10_reset_button.patch index a07e6fdf29..0a464c8d5b 100644 --- a/target/linux/brcm63xx/patches-3.3/552-board_96348gw-10_reset_button.patch +++ b/target/linux/brcm63xx/patches-3.3/552-board_96348gw-10_reset_button.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -576,6 +576,17 @@ static struct board_info __initdata boar +@@ -583,6 +583,17 @@ static struct board_info __initdata boar .active_low = 1, }, }, diff --git a/target/linux/brcm63xx/patches-3.3/553-board_96348w3.patch b/target/linux/brcm63xx/patches-3.3/553-board_96348w3.patch deleted file mode 100644 index 4f20a6426f..0000000000 --- a/target/linux/brcm63xx/patches-3.3/553-board_96348w3.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c -+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -1358,6 +1358,57 @@ static struct board_info __initdata boar - }, - }; - -+/* NetGear DG834G v4 */ -+static struct board_info __initdata board_96348W3 = { -+ .name = "96348W3", -+ .expected_cpu_id = 0x6348, -+ -+ .has_uart0 = 1, -+ .has_enet1 = 1, -+ .has_pci = 1, -+ -+ .enet1 = { -+ .force_speed_100 = 1, -+ .force_duplex_full = 1, -+ }, -+ -+ .has_ohci0 = 1, -+ -+ .leds = { -+ { -+ .name = "96348W3:green:power", -+ .gpio = 0, -+ .active_low = 1, -+ .default_trigger = "default-on", -+ }, -+ { -+ .name = "96348W3:red:power", -+ .gpio = 1, -+ .active_low = 1, -+ }, -+ { -+ .name = "96348W3::adsl", -+ .gpio = 2, -+ .active_low = 1, -+ }, -+ { -+ .name = "96348W3::internet", -+ .gpio = 3, -+ .active_low = 1, -+ }, -+ }, -+ .buttons = { -+ { -+ .desc = "reset", -+ .gpio = 6, -+ .active_low = 1, -+ .type = EV_KEY, -+ .code = KEY_RESTART, -+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, -+ }, -+ }, -+}; -+ - #endif - - /* -@@ -2554,6 +2605,7 @@ static const struct board_info __initdat - &board_ct536_ct5621, - &board_96348A_122, - &board_CPVA502plus, -+ &board_96348W3, - #endif - - #ifdef CONFIG_BCM63XX_CPU_6358 diff --git a/target/linux/brcm63xx/patches-3.3/554-board_CT6373-1.patch b/target/linux/brcm63xx/patches-3.3/554-board_CT6373-1.patch deleted file mode 100644 index 9b36baf727..0000000000 --- a/target/linux/brcm63xx/patches-3.3/554-board_CT6373-1.patch +++ /dev/null @@ -1,136 +0,0 @@ ---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c -+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -51,6 +51,13 @@ - #define NB4_SPI_GPIO_CLK 6 - #define NB4_74HC64_GPIO(X) (NB4_74X164_GPIO_BASE + (X)) - -+#define CT6373_PID_OFFSET 0xff80 -+#define CT6373_74X164_GPIO_BASE 64 -+#define CT6373_SPI_GPIO_MOSI 7 -+#define CT6373_SPI_GPIO_CLK 6 -+#define CT6373_74HC64_GPIO(X) (CT6373_74X164_GPIO_BASE + (X)) -+ -+ - static struct board_info board; - - /* -@@ -2287,6 +2294,111 @@ static struct board_info __initdata boar - .num_spis = ARRAY_SIZE(nb4_spi_devices), - }; - -+ -+struct spi_gpio_platform_data ct6373_spi_gpio_data = { -+ .sck = CT6373_SPI_GPIO_CLK, -+ .mosi = CT6373_SPI_GPIO_MOSI, -+ .miso = SPI_GPIO_NO_MISO, -+ .num_chipselect = 1, -+}; -+ -+static struct platform_device ct6373_spi_gpio = { -+ .name = "spi_gpio", -+ .id = 1, -+ .dev = { -+ .platform_data = &ct6373_spi_gpio_data, -+ }, -+}; -+ -+static struct platform_device * __initdata ct6373_devices[] = { -+ &ct6373_spi_gpio, -+}; -+ -+const struct gen_74x164_chip_platform_data ct6373_74x164_platform_data = { -+ .base = CT6373_74X164_GPIO_BASE -+}; -+ -+static struct spi_board_info ct6373_spi_devices[] = { -+ { -+ .modalias = "74x164", -+ .max_speed_hz = 781000, -+ .bus_num = 1, -+ .controller_data = (void *) SPI_GPIO_NO_CHIPSELECT, -+ .mode = SPI_MODE_0, -+ .platform_data = &ct6373_74x164_platform_data -+ } -+}; -+ -+static struct board_info __initdata board_ct6373_1 = { -+ .name = "CT6373-1", -+ .expected_cpu_id = 0x6358, -+ -+ .has_uart0 = 1, -+ .has_pci = 1, -+ .has_ohci0 = 1, -+ .has_ehci0 = 1, -+ -+ .has_enet1 = 1, -+ .enet1 = { -+ .force_speed_100 = 1, -+ .force_duplex_full = 1, -+ }, -+ -+ .leds = { -+ { -+ .name = "CT6373-1:green:power", -+ .gpio = 0, -+ .default_trigger = "default-on", -+ }, -+ { -+ .name = "CT6373-1:green:usb", -+ .gpio = 3, -+ .active_low = 1, -+ }, -+ { -+ .name = "CT6373-1:green:wlan", -+ .gpio = 9, -+ .active_low = 1, -+ }, -+ { -+ .name = "CT6373-1:green:adsl", -+ .gpio = CT6373_74HC64_GPIO(0), -+ .active_low = 1, -+ }, -+ { -+ .name = "CT6373-1:green:line", -+ .gpio = CT6373_74HC64_GPIO(1), -+ .active_low = 1, -+ }, -+ { -+ .name = "CT6373-1:green:fxs1", -+ .gpio = CT6373_74HC64_GPIO(2), -+ .active_low = 1, -+ }, -+ { -+ .name = "CT6373-1:green:fxs2", -+ .gpio = CT6373_74HC64_GPIO(3), -+ .active_low = 1, -+ }, -+ }, -+ -+ .buttons = { -+ { -+ .desc = "reset", -+ .gpio = 35, -+ .active_low = 1, -+ .type = EV_KEY, -+ .code = KEY_RESTART, -+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, -+ }, -+ }, -+ -+ .devs = ct6373_devices, -+ .num_devs = ARRAY_SIZE(ct6373_devices), -+ .spis = ct6373_spi_devices, -+ .num_spis = ARRAY_SIZE(ct6373_spi_devices), -+}; -+ - static struct board_info __initdata board_HW553 = { - .name = "HW553", - .expected_cpu_id = 0x6358, -@@ -2620,6 +2732,7 @@ static const struct board_info __initdat - &board_nb4_ser_r2, - &board_nb4_fxc_r1, - &board_nb4_fxc_r2, -+ &board_ct6373_1, - &board_HW553, - &board_spw303v, - #endif diff --git a/target/linux/brcm63xx/patches-3.3/555-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-3.3/555-board_dva-g3810bn-tl-1.patch deleted file mode 100644 index d2f91df6c5..0000000000 --- a/target/linux/brcm63xx/patches-3.3/555-board_dva-g3810bn-tl-1.patch +++ /dev/null @@ -1,82 +0,0 @@ ---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c -+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -2538,6 +2538,71 @@ static struct board_info __initdata boar - }, - } - }; -+ -+/* D-Link DVA-G3810BN/TL */ -+static struct board_info __initdata board_DVAG3810BN = { -+ .name = "DVAG3810BN", -+ .expected_cpu_id = 0x6358, -+ -+ .has_uart0 = 1, -+ .has_enet0 = 1, -+ .has_enet1 = 1, -+ .has_pci = 1, -+ -+ .enet0 = { -+ .has_phy = 0, -+ .use_internal_phy = 1, -+ .force_speed_100 = 1, -+ .force_duplex_full = 1, -+ }, -+ -+ .enet1 = { -+ .force_speed_100 = 1, -+ .force_duplex_full = 1, -+ }, -+ -+ -+ .has_ohci0 = 1, -+ .has_pccard = 1, -+ .has_ehci0 = 1, -+ -+ .leds = { -+ { -+ .name = "DVAG3810BN::voip", -+ .gpio = 1, -+ }, -+ { -+ .name = "DVAG3810BN::dsl", -+ .gpio = 22, -+ .active_low = 1, -+ }, -+ { -+ .name = "DVAG3810BN::internet", -+ .gpio = 23, -+ .active_low = 1, -+ }, -+ { -+ .name = "DVAG3810BN::power", -+ .gpio = 4, -+ .default_trigger = "default-on", -+ }, -+ { -+ .name = "DVAG3810BN::stop", -+ .gpio = 5, -+ }, -+ }, -+ -+ .buttons = { -+ { -+ .desc = "reset", -+ .gpio = 34, -+ .active_low = 1, -+ .type = EV_KEY, -+ .code = KEY_RESTART, -+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, -+ }, -+ }, -+}; - #endif - - /* -@@ -2735,6 +2800,7 @@ static const struct board_info __initdat - &board_ct6373_1, - &board_HW553, - &board_spw303v, -+ &board_DVAG3810BN, - #endif - - #ifdef CONFIG_BCM63XX_CPU_6368