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); } + if (board.num_devs) { + platform_add_devices(board.devs, board.num_devs); + } + return 0; } 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]; + + /* Additional platform devices */ + struct platform_device **devs; + unsigned int num_devs; }; #endif /* ! BOARD_BCM963XX_H_ */