static void sprom_extract_r123(struct ssb_sprom *out, const u16 *in)
{
- u16 loc[3];
-
- if (out->revision == 3) /* rev 3 moved MAC */
- loc[0] = SSB_SPROM3_IL0MAC;
- else {
- loc[0] = SSB_SPROM1_IL0MAC;
- loc[1] = SSB_SPROM1_ET0MAC;
- loc[2] = SSB_SPROM1_ET1MAC;
- }
-
SPEX(et0phyaddr, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET0A, 0);
SPEX(et1phyaddr, SSB_SPROM1_ETHPHY, SSB_SPROM1_ETHPHY_ET1A,
SSB_SPROM1_ETHPHY_ET1A_SHIFT);
memset(out, 0, sizeof(*out));
out->revision = in[size - 1] & 0x00FF;
- memset(out->et0mac, 0xFF, 6);
- memset(out->et1mac, 0xFF, 6);
switch (out->revision) {
case 1: