From 4c45806d30714e8ccc96f204d03326c2e533f409 Mon Sep 17 00:00:00 2001 From: florian Date: Tue, 1 Mar 2011 16:02:38 +0000 Subject: [PATCH] [brcm63xx] fix patches after 2.6.37 update, patch from KanjiMonster git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25810 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../040-bcm963xx_flashmap.patch | 34 ++++--------------- .../patches-2.6.37/141-led_count.patch | 23 +++++++++++++ 2 files changed, 29 insertions(+), 28 deletions(-) create mode 100644 target/linux/brcm63xx/patches-2.6.37/141-led_count.patch diff --git a/target/linux/brcm63xx/patches-2.6.37/040-bcm963xx_flashmap.patch b/target/linux/brcm63xx/patches-2.6.37/040-bcm963xx_flashmap.patch index d08b9b12e..daec18162 100644 --- a/target/linux/brcm63xx/patches-2.6.37/040-bcm963xx_flashmap.patch +++ b/target/linux/brcm63xx/patches-2.6.37/040-bcm963xx_flashmap.patch @@ -1,14 +1,14 @@ -From b1096781081b328fdac0e14a726ea04c2e9545c7 Mon Sep 17 00:00:00 2001 +From a4d005c91d403d9f3d0272db6cc46202c06ec774 Mon Sep 17 00:00:00 2001 From: Axel Gembe Date: Mon, 12 May 2008 18:54:09 +0200 Subject: [PATCH] bcm963xx: flashmap support Signed-off-by: Axel Gembe --- - arch/mips/bcm63xx/boards/board_bcm963xx.c | 19 +--------------- - drivers/mtd/maps/bcm963xx-flash.c | 34 ++++++++++++++++++++++++---- - drivers/mtd/redboot.c | 13 ++++++++-- - 3 files changed, 40 insertions(+), 26 deletions(-) + arch/mips/bcm63xx/boards/board_bcm963xx.c | 19 +---------------- + drivers/mtd/maps/bcm963xx-flash.c | 32 ++++++++++++++++++++++++---- + drivers/mtd/redboot.c | 13 +++++++++-- + 3 files changed, 38 insertions(+), 26 deletions(-) --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c @@ -73,29 +73,7 @@ Signed-off-by: Axel Gembe static struct mtd_partition *parsed_parts; static struct mtd_info *bcm963xx_mtd_info; -@@ -56,7 +66,7 @@ static int parse_cfe_partitions(struct m - unsigned int rootfsaddr, kerneladdr, spareaddr; - unsigned int rootfslen, kernellen, sparelen, totallen; - int namelen = 0; -- int i; -+ int i, offset; - char *boardid; - char *tagversion; - -@@ -84,9 +94,11 @@ static int parse_cfe_partitions(struct m - - kerneladdr = kerneladdr - BCM63XX_EXTENDED_SIZE; - rootfsaddr = kerneladdr + kernellen; -+ -+ rootfslen = ( ( rootfslen % master->erasesize ) > 0 ? (((rootfslen / master->erasesize) + 1 ) * master->erasesize) : rootfslen); -+ - spareaddr = roundup(totallen, master->erasesize) + master->erasesize; - sparelen = master->size - spareaddr - master->erasesize; -- rootfslen = spareaddr - rootfsaddr; - - /* Determine number of partitions */ - namelen = 8; -@@ -214,9 +226,21 @@ static int bcm963xx_probe(struct platfor +@@ -214,9 +224,21 @@ static int bcm963xx_probe(struct platfor } } } else { diff --git a/target/linux/brcm63xx/patches-2.6.37/141-led_count.patch b/target/linux/brcm63xx/patches-2.6.37/141-led_count.patch new file mode 100644 index 000000000..baf092053 --- /dev/null +++ b/target/linux/brcm63xx/patches-2.6.37/141-led_count.patch @@ -0,0 +1,23 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -881,6 +881,7 @@ int __init board_register_devices(void) + { + u32 val; + int button_count = 0; ++ int led_count = 0; + + if (board.has_uart0) + bcm63xx_uart_register(0); +@@ -922,7 +923,11 @@ int __init board_register_devices(void) + + platform_device_register_simple("GPIODEV", 0, &gpiodev_resource, 1); + +- bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds); ++ /* count number of LEDs defined by this device */ ++ while (led_count < ARRAY_SIZE(board.leds) && board.leds[led_count].name) ++ led_count++; ++ ++ bcm63xx_led_data.num_leds = led_count; + bcm63xx_led_data.leds = board.leds; + + platform_device_register(&bcm63xx_gpio_leds); -- 2.20.1