bcm-v4 [Specification]

## LP PHY Read Band Srom

1. If the current band is 5 GHz
1. Read SPROM variable tri5gl and save in lpphy_tr_isolation_low

2. Read SPROM variable tri5g and save in lpphy_tr_isolation_med

3. Read SPROM variable tri5gh and save in lpphy_tr_isolation_hi

4. Read SPROM variable bxa5g and save in lpphy_bxarch

5. Read SPROM variable rxpo5g and save in lpphy_rx_power_offset

9. Read SPROM variable pa1maxpwr - this is tmp1

10. Read SPROM variable pa1bX and save in txpa[X], X = 0,1,2

11. Read SPROM variable pa1lobX and save in txpal[X], X = 0,1,2

12. Read SPROM variable pa1hibX and save in txpah[X], X = 0,1,2

13. Read SPROM variable ofdmapo - this is tmp2

14. Save tmp1 in txpwr_srom_max[1]

15. Loop 8 times with index starting at 4
1. Calculate tmp1 - (tmp2 & 0xF) * 2 and save in tx_srom_max_rate[index]

2. Right shift tmp2 by 4
16. Read SPROM variable ofdmalpo - this is tmp2

17. Read SPROM variable pa1lomaxpwr - this is tmp1

18. Save tmp1 in txpwr_srom_max[0]

19. Loop 8 times with index starting at 4
1. Calculate tmp1 - (tmp2 & 0xF) * 2 and save in tx_srom_max_ratel[index]

2. Right shift tmp2 by 4
20. Read SPROM variable ofdmahpo - this is tmp2

21. Read SPROM variable pa1himaxpwr - this is tmp1

22. Save tmp1 in txpwr_srom_max[2]

23. Loop 8 times with index starting at 4
1. Calculate tmp1 - (tmp2 & 0xF) * 2 and save in tx_srom_max_rateh[index]

2. Right shift tmp2 by 4
2. Otherwise
1. Read SPROM variable tri2g and save in lpphy_tr_isolation_med

2. Read SPROM variable bxa2g and save in lpphy_bx_arch

3. Read SPROM variable rxpo2g and save in lpphy_rx_power_offset

7. Read SPROM variable pa0maxpwr - this is tmp1

8. Save tmp1 in txpwr_srom_max[1]

9. Read SPROM variable pa0bX and save in txpa[X], X = 0,1,2

10. Read SPROM variable cckp0 - this is tmp3

11. If tmp3 is not zero
1. Read SPROM variable ofdmgpo - this is tmp2

2. Loop 4 times with index starting at 0
1. Calculate tmp1 - (tmp2 & 0xF) * 2 and save in tx_srom_max_rate[index]

2. Right shift tmp2 by 4
3. Read SPROM variable ofdmgpo - this is tmp2

4. Loop 11 times with index starting at 4
1. Calculate tmp1 - (tmp2 & 0xF) * 2 and save in tx_srom_max_rate[index]

2. Right shift tmp2 by 4
12. Otherwise
1. Read SPROM variable opo - this is tmp2

2. Loop 4 times with index starting at 0
1. Save tmp1 as tx_srom_max_rate[index]

3. Loop 11 times with index starting at 4
1. Save tmp1 - tmp2 as tx_srom_max_rate[index]

Exported/Archived from the wiki to HTML on 2016-10-27