--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -893,6 +893,7 @@ int __init board_register_devices(void)
+@@ -883,6 +883,7 @@ int __init board_register_devices(void)
{
u32 val;
int button_count = 0;
if (board.has_uart0)
bcm63xx_uart_register(0);
-@@ -934,7 +935,11 @@ int __init board_register_devices(void)
+@@ -919,7 +920,11 @@ int __init board_register_devices(void)
- platform_device_register_simple("GPIODEV", 0, &gpiodev_resource, 1);
+ platform_device_register(&mtd_dev);
- 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++;
++ led_count++;
+
+ bcm63xx_led_data.num_leds = led_count;
bcm63xx_led_data.leds = board.leds;