obj-y         += boards/
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -31,6 +31,7 @@
+@@ -33,6 +33,7 @@
  #include <bcm63xx_dev_usb_ohci.h>
  #include <bcm63xx_dev_usb_ehci.h>
  #include <bcm63xx_dev_usb_udc.h>
  #include <board_bcm963xx.h>
  
  #define PFX   "board_bcm963xx: "
-@@ -1557,6 +1558,9 @@ int __init board_register_devices(void)
-       if (board.has_udc0)
-               bcm63xx_udc_register();
+@@ -1596,6 +1597,9 @@ int __init board_register_devices(void)
+       if (board.num_spis)
+               spi_register_board_info(board.spis, board.num_spis);
  
 +      if (!BCMCPU_IS_6345())
 +              bcm63xx_spi_register();
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1453,6 +1453,8 @@ void __init board_prom_init(void)
+@@ -1486,6 +1486,8 @@ void __init board_prom_init(void)
                if (BCMCPU_IS_6348())
                        val |= GPIO_MODE_6348_G3_EXT_MII |
                                GPIO_MODE_6348_G0_EXT_MII;
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -53,6 +53,13 @@ static unsigned int mac_addr_used;
+@@ -49,6 +49,13 @@ static unsigned int mac_addr_used;
  static struct board_info board;
  
  /*
   * known 6338 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_6338
-@@ -1403,6 +1410,7 @@ void __init board_prom_init(void)
+@@ -1420,6 +1427,7 @@ void __init board_prom_init(void)
  
        /* extract nvram data */
        memcpy(&nvram, boot_addr + BCM963XX_NVRAM_OFFSET, sizeof(nvram));