--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -42,6 +42,7 @@ struct board_info {
+@@ -40,6 +40,7 @@ struct board_info {
/* USB config */
struct bcm63xx_usbd_platform_data usbd;
+ unsigned int num_usbh_ports:2;
- /* DSP config */
- struct bcm63xx_dsp_platform_data dsp;
+ /* GPIO LEDs */
+ struct gpio_led leds[5];
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
@@ -1,6 +1,6 @@
#endif /* BCM63XX_DEV_USB_OHCI_H_ */
--- a/arch/mips/bcm63xx/boards/board_common.c
+++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -166,6 +166,8 @@ static struct platform_device bcm63xx_gp
+@@ -165,6 +165,8 @@ static struct platform_device bcm63xx_gp
*/
int __init board_register_devices(void)
{
if (board.has_uart0)
bcm63xx_uart_register(0);
-@@ -187,14 +189,21 @@ int __init board_register_devices(void)
+@@ -186,14 +188,21 @@ int __init board_register_devices(void)
!board_get_mac_address(board.enetsw.mac_addr))
bcm63xx_enetsw_register(&board.enetsw);
- bcm63xx_ohci_register();
+ bcm63xx_ohci_register(usbh_ports);
- if (board.has_dsp)
- bcm63xx_dsp_register(&board.dsp);
+ /* Generate MAC address for WLAN and register our SPROM,
+ * do this after registering enet devices
--- a/arch/mips/bcm63xx/dev-usb-ehci.c
+++ b/arch/mips/bcm63xx/dev-usb-ehci.c
@@ -79,12 +79,14 @@ static struct platform_device bcm63xx_eh