[BACK]Return to bcm53xx_ccb.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / arm / broadcom

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/arch/arm/broadcom/bcm53xx_ccb.c between version 1.3.4.2 and 1.4

version 1.3.4.2, 2012/11/28 22:40:22 version 1.4, 2013/10/28 22:51:16
Line 101  static const struct bcm_locators bcmccb_
Line 101  static const struct bcm_locators bcmccb_
         { "bcmtmr", TIMER1_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 2, { IRQ_TIMER1_1, IRQ_TIMER1_2 } },          { "bcmtmr", TIMER1_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 2, { IRQ_TIMER1_1, IRQ_TIMER1_2 } },
         { "bcmsw", SRAB_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, },          { "bcmsw", SRAB_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, },
         { "bcmcom", UART2_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_UART2 } },          { "bcmcom", UART2_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_UART2 } },
         { "bcmi2c", SMBUS_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_SMBUS } },  #ifdef BCM5301X
           { "bcmi2c", SMBUS1_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_SMBUS1 } },
   #endif
   #ifdef BCM536XX
           { "bcmi2c", SMBUS1_BASE, 0x1000, 1, 1, { IRQ_SMBUS1 } },
           { "bcmi2c", SMBUS2_BASE, 0x1000, 2, 1, { IRQ_SMBUS2 } },
   #endif
         { "bcmcru", CRU_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT },          { "bcmcru", CRU_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT },
         { "bcmdmu", DMU_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT },          { "bcmdmu", DMU_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT },
         { "bcmddr", DDR_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_DDR_CONTROLLER } },          { "bcmddr", DDR_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_DDR_CONTROLLER } },
         { "bcmeth", GMAC0_BASE, 0x1000, 0, 1, { IRQ_GMAC0 }, },          { "bcmeth", GMAC0_BASE, 0x1000, 0, 1, { IRQ_GMAC0 }, },
         { "bcmeth", GMAC1_BASE, 0x1000, 1, 1, { IRQ_GMAC1 }, },          { "bcmeth", GMAC1_BASE, 0x1000, 1, 1, { IRQ_GMAC1 }, },
   #ifdef GMAC2_BASE
         { "bcmeth", GMAC2_BASE, 0x1000, 2, 1, { IRQ_GMAC2 }, },          { "bcmeth", GMAC2_BASE, 0x1000, 2, 1, { IRQ_GMAC2 }, },
   #endif
         // { "bcmeth", GMAC3_BASE, 0x1000, 3, 1, { IRQ_GMAC3 }, },          // { "bcmeth", GMAC3_BASE, 0x1000, 3, 1, { IRQ_GMAC3 }, },
         { "bcmpax", PCIE0_BASE, 0x1000, 0, 6, { IRQ_PCIE_INT0 }, },          { "bcmpax", PCIE0_BASE, 0x1000, 0, 6, { IRQ_PCIE_INT0 }, },
         { "bcmpax", PCIE1_BASE, 0x1000, 1, 6, { IRQ_PCIE_INT1 }, },          { "bcmpax", PCIE1_BASE, 0x1000, 1, 6, { IRQ_PCIE_INT1 }, },
   #ifdef PCIE2_BASE
         { "bcmpax", PCIE2_BASE, 0x1000, 2, 6, { IRQ_PCIE_INT2 }, },          { "bcmpax", PCIE2_BASE, 0x1000, 2, 6, { IRQ_PCIE_INT2 }, },
   #endif
   #ifdef SDIO_BASE
         { "sdhc", SDIO_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_SDIO } },          { "sdhc", SDIO_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_SDIO } },
   #endif
           { "bcmnand", NAND_BASE, 0x1000, BCMCCBCF_PORT_DEFAULT, 8,
             { IRQ_NAND_RD_MISS, IRQ_NAND_BLK_ERASE_COMP,
               IRQ_NAND_COPY_BACK_COMP, IRQ_NAND_PGM_PAGE_COMP,
               IRQ_NAND_RO_CTLR_READY, IRQ_NAND_RB_B,
               IRQ_NAND_ECC_MIPS_UNCORR, IRQ_NAND_ECC_MIPS_CORR } },
         { "bcmusb", EHCI_BASE, 0x2000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_USB2 } },          { "bcmusb", EHCI_BASE, 0x2000, BCMCCBCF_PORT_DEFAULT, 1, { IRQ_USB2 } },
 };  };
   
Line 159  bcmccb_mainbus_attach(device_t parent, d
Line 176  bcmccb_mainbus_attach(device_t parent, d
         aprint_naive("\n");          aprint_naive("\n");
         aprint_normal("\n");          aprint_normal("\n");
   
         bcm53xx_srab_init();    // need this for ethernet.  
   
         for (size_t i = 0; i < __arraycount(bcmccb_locators); i++) {          for (size_t i = 0; i < __arraycount(bcmccb_locators); i++) {
                   const struct bcm_locators *loc = &bcmccb_locators[i];
   
   #ifdef BCM5301X
                   if (strcmp(loc->loc_name, "bcmsw") == 0) {
                           bcm53xx_srab_init();    // need this for ethernet.
                   }
   #endif
   
                 struct bcmccb_attach_args ccbaa = {                  struct bcmccb_attach_args ccbaa = {
                         .ccbaa_ccb_bst = sc->sc_bst,                          .ccbaa_ccb_bst = sc->sc_bst,
                         .ccbaa_ccb_bsh = sc->sc_bsh,                          .ccbaa_ccb_bsh = sc->sc_bsh,
                         .ccbaa_dmat = &bcm53xx_dma_tag,                          .ccbaa_dmat = &bcm53xx_dma_tag,
                         .ccbaa_loc = bcmccb_locators[i],                          .ccbaa_loc = *loc,
                 };                  };
   
                 /*                  /*
                  * If the device might be in reset, let's try to take it                   * If the device might be in reset, let's try to take it
                  * out of it.  If it fails or is unavailable, skip it.                   * out of it.  If it fails or is unavailable, skip it.
                  */                   */
                 if (!bcm53xx_idm_device_init(&bcmccb_locators[i],                  if (!bcm53xx_idm_device_init(loc, sc->sc_bst, sc->sc_bsh))
                         sc->sc_bst, sc->sc_bsh))  
                         continue;                          continue;
   
                 cfdata_t cf = config_search_ia(bcmccb_find, self, "bcmccb",                  cfdata_t cf = config_search_ia(bcmccb_find, self, "bcmccb",

Legend:
Removed from v.1.3.4.2  
changed lines
  Added in v.1.4

CVSweb <webmaster@jp.NetBSD.org>