Lines Matching refs:sprom
174 /* This is one-function-only macro, it uses local "sprom" variable! */
176 if (_revmask & BIT(sprom->revision)) \
177 nvram_read_ ## _type(_prefix, NULL, _name, &sprom->_val, \
188 static void bcm47xx_sprom_fill_auto(struct ssb_sprom *sprom,
409 static void bcm47xx_fill_sprom_path_r4589(struct ssb_sprom *sprom,
415 for (i = 0; i < ARRAY_SIZE(sprom->core_pwr_info); i++) {
418 pwr_info = &sprom->core_pwr_info[i];
460 static void bcm47xx_fill_sprom_path_r45(struct ssb_sprom *sprom,
466 for (i = 0; i < ARRAY_SIZE(sprom->core_pwr_info); i++) {
469 pwr_info = &sprom->core_pwr_info[i];
510 static void bcm47xx_fill_sprom_ethernet(struct ssb_sprom *sprom,
515 nvram_read_macaddr(prefix, "et0macaddr", sprom->et0mac, fallback);
516 nvram_read_u8(prefix, NULL, "et0mdcport", &sprom->et0mdcport, 0,
518 nvram_read_u8(prefix, NULL, "et0phyaddr", &sprom->et0phyaddr, 0,
521 nvram_read_macaddr(prefix, "et1macaddr", sprom->et1mac, fallback);
522 nvram_read_u8(prefix, NULL, "et1mdcport", &sprom->et1mdcport, 0,
524 nvram_read_u8(prefix, NULL, "et1phyaddr", &sprom->et1phyaddr, 0,
527 nvram_read_macaddr(prefix, "et2macaddr", sprom->et2mac, fb);
528 nvram_read_u8(prefix, NULL, "et2mdcport", &sprom->et2mdcport, 0, fb);
529 nvram_read_u8(prefix, NULL, "et2phyaddr", &sprom->et2phyaddr, 0, fb);
531 nvram_read_macaddr(prefix, "macaddr", sprom->il0mac, fallback);
532 nvram_read_macaddr(prefix, "il0macaddr", sprom->il0mac, fallback);
540 if (!bcm47xx_is_valid_mac(sprom->il0mac)) {
548 ether_addr_copy(sprom->il0mac, mac);
555 static void bcm47xx_fill_board_data(struct ssb_sprom *sprom, const char *prefix,
558 nvram_read_u32_2(prefix, "boardflags", &sprom->boardflags_lo,
559 &sprom->boardflags_hi, fallback);
560 nvram_read_u32_2(prefix, "boardflags2", &sprom->boardflags2_lo,
561 &sprom->boardflags2_hi, fallback);
564 void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
567 bcm47xx_fill_sprom_ethernet(sprom, prefix, fallback);
568 bcm47xx_fill_board_data(sprom, prefix, fallback);
570 nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0, fallback);
573 nvram_read_alpha2(prefix, "ccode", sprom->alpha2, fallback);
574 if (sprom->revision >= 3)
575 nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
576 &sprom->leddc_off_time, fallback);
578 switch (sprom->revision) {
581 bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
582 bcm47xx_fill_sprom_path_r45(sprom, prefix, fallback);
586 bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
590 bcm47xx_sprom_fill_auto(sprom, prefix, fallback);