Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 291115
b: refs/heads/master
c: f8f8a66
h: refs/heads/master
i:
  291113: de51e41
  291111: f005435
v: v3
  • Loading branch information
Hauke Mehrtens authored and John W. Linville committed Mar 5, 2012
1 parent 330b946 commit 0bbab9a
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 51 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: edd8d90b624e97105d26615d1655da22a3605fff
refs/heads/master: f8f8a660ba501ad14617ccd0d91a1ed8ce54d6d0
2 changes: 1 addition & 1 deletion trunk/drivers/net/wireless/b43legacy/phy.c
Original file line number Diff line number Diff line change
Expand Up @@ -1860,7 +1860,7 @@ void b43legacy_phy_xmitpower(struct b43legacy_wldev *dev)
* which accounts for the factor of 4 */
#define REG_MAX_PWR 20
max_pwr = min(REG_MAX_PWR * 4
- dev->dev->bus->sprom.antenna_gain.ghz24.a0
- dev->dev->bus->sprom.antenna_gain.a0
- 0x6, max_pwr);

/* find the desired power in Q5.2 - power_level is in dBm
Expand Down
41 changes: 14 additions & 27 deletions trunk/drivers/ssb/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -331,7 +331,6 @@ static void sprom_extract_r123(struct ssb_sprom *out, const u16 *in)
{
int i;
u16 v;
s8 gain;
u16 loc[3];

if (out->revision == 3) /* rev 3 moved MAC */
Expand Down Expand Up @@ -390,20 +389,12 @@ static void sprom_extract_r123(struct ssb_sprom *out, const u16 *in)
SPEX(boardflags_hi, SSB_SPROM2_BFLHI, 0xFFFF, 0);

/* Extract the antenna gain values. */
gain = r123_extract_antgain(out->revision, in,
SSB_SPROM1_AGAIN_BG,
SSB_SPROM1_AGAIN_BG_SHIFT);
out->antenna_gain.ghz24.a0 = gain;
out->antenna_gain.ghz24.a1 = gain;
out->antenna_gain.ghz24.a2 = gain;
out->antenna_gain.ghz24.a3 = gain;
gain = r123_extract_antgain(out->revision, in,
SSB_SPROM1_AGAIN_A,
SSB_SPROM1_AGAIN_A_SHIFT);
out->antenna_gain.ghz5.a0 = gain;
out->antenna_gain.ghz5.a1 = gain;
out->antenna_gain.ghz5.a2 = gain;
out->antenna_gain.ghz5.a3 = gain;
out->antenna_gain.a0 = r123_extract_antgain(out->revision, in,
SSB_SPROM1_AGAIN_BG,
SSB_SPROM1_AGAIN_BG_SHIFT);
out->antenna_gain.a1 = r123_extract_antgain(out->revision, in,
SSB_SPROM1_AGAIN_A,
SSB_SPROM1_AGAIN_A_SHIFT);
}

/* Revs 4 5 and 8 have partially shared layout */
Expand Down Expand Up @@ -504,16 +495,14 @@ static void sprom_extract_r45(struct ssb_sprom *out, const u16 *in)
}

/* Extract the antenna gain values. */
SPEX(antenna_gain.ghz24.a0, SSB_SPROM4_AGAIN01,
SPEX(antenna_gain.a0, SSB_SPROM4_AGAIN01,
SSB_SPROM4_AGAIN0, SSB_SPROM4_AGAIN0_SHIFT);
SPEX(antenna_gain.ghz24.a1, SSB_SPROM4_AGAIN01,
SPEX(antenna_gain.a1, SSB_SPROM4_AGAIN01,
SSB_SPROM4_AGAIN1, SSB_SPROM4_AGAIN1_SHIFT);
SPEX(antenna_gain.ghz24.a2, SSB_SPROM4_AGAIN23,
SPEX(antenna_gain.a2, SSB_SPROM4_AGAIN23,
SSB_SPROM4_AGAIN2, SSB_SPROM4_AGAIN2_SHIFT);
SPEX(antenna_gain.ghz24.a3, SSB_SPROM4_AGAIN23,
SPEX(antenna_gain.a3, SSB_SPROM4_AGAIN23,
SSB_SPROM4_AGAIN3, SSB_SPROM4_AGAIN3_SHIFT);
memcpy(&out->antenna_gain.ghz5, &out->antenna_gain.ghz24,
sizeof(out->antenna_gain.ghz5));

sprom_extract_r458(out, in);

Expand Down Expand Up @@ -602,16 +591,14 @@ static void sprom_extract_r8(struct ssb_sprom *out, const u16 *in)
SPEX32(ofdm5ghpo, SSB_SPROM8_OFDM5GHPO, 0xFFFFFFFF, 0);

/* Extract the antenna gain values. */
SPEX(antenna_gain.ghz24.a0, SSB_SPROM8_AGAIN01,
SPEX(antenna_gain.a0, SSB_SPROM8_AGAIN01,
SSB_SPROM8_AGAIN0, SSB_SPROM8_AGAIN0_SHIFT);
SPEX(antenna_gain.ghz24.a1, SSB_SPROM8_AGAIN01,
SPEX(antenna_gain.a1, SSB_SPROM8_AGAIN01,
SSB_SPROM8_AGAIN1, SSB_SPROM8_AGAIN1_SHIFT);
SPEX(antenna_gain.ghz24.a2, SSB_SPROM8_AGAIN23,
SPEX(antenna_gain.a2, SSB_SPROM8_AGAIN23,
SSB_SPROM8_AGAIN2, SSB_SPROM8_AGAIN2_SHIFT);
SPEX(antenna_gain.ghz24.a3, SSB_SPROM8_AGAIN23,
SPEX(antenna_gain.a3, SSB_SPROM8_AGAIN23,
SSB_SPROM8_AGAIN3, SSB_SPROM8_AGAIN3_SHIFT);
memcpy(&out->antenna_gain.ghz5, &out->antenna_gain.ghz24,
sizeof(out->antenna_gain.ghz5));

/* Extract cores power info info */
for (i = 0; i < ARRAY_SIZE(pwr_info_offset); i++) {
Expand Down
12 changes: 4 additions & 8 deletions trunk/drivers/ssb/pcmcia.c
Original file line number Diff line number Diff line change
Expand Up @@ -676,14 +676,10 @@ static int ssb_pcmcia_do_get_invariants(struct pcmcia_device *p_dev,
case SSB_PCMCIA_CIS_ANTGAIN:
GOTO_ERROR_ON(tuple->TupleDataLen != 2,
"antg tpl size");
sprom->antenna_gain.ghz24.a0 = tuple->TupleData[1];
sprom->antenna_gain.ghz24.a1 = tuple->TupleData[1];
sprom->antenna_gain.ghz24.a2 = tuple->TupleData[1];
sprom->antenna_gain.ghz24.a3 = tuple->TupleData[1];
sprom->antenna_gain.ghz5.a0 = tuple->TupleData[1];
sprom->antenna_gain.ghz5.a1 = tuple->TupleData[1];
sprom->antenna_gain.ghz5.a2 = tuple->TupleData[1];
sprom->antenna_gain.ghz5.a3 = tuple->TupleData[1];
sprom->antenna_gain.a0 = tuple->TupleData[1];
sprom->antenna_gain.a1 = tuple->TupleData[1];
sprom->antenna_gain.a2 = tuple->TupleData[1];
sprom->antenna_gain.a3 = tuple->TupleData[1];
break;
case SSB_PCMCIA_CIS_BFLAGS:
GOTO_ERROR_ON((tuple->TupleDataLen != 3) &&
Expand Down
12 changes: 4 additions & 8 deletions trunk/drivers/ssb/sdio.c
Original file line number Diff line number Diff line change
Expand Up @@ -551,14 +551,10 @@ int ssb_sdio_get_invariants(struct ssb_bus *bus,
case SSB_SDIO_CIS_ANTGAIN:
GOTO_ERROR_ON(tuple->size != 2,
"antg tpl size");
sprom->antenna_gain.ghz24.a0 = tuple->data[1];
sprom->antenna_gain.ghz24.a1 = tuple->data[1];
sprom->antenna_gain.ghz24.a2 = tuple->data[1];
sprom->antenna_gain.ghz24.a3 = tuple->data[1];
sprom->antenna_gain.ghz5.a0 = tuple->data[1];
sprom->antenna_gain.ghz5.a1 = tuple->data[1];
sprom->antenna_gain.ghz5.a2 = tuple->data[1];
sprom->antenna_gain.ghz5.a3 = tuple->data[1];
sprom->antenna_gain.a0 = tuple->data[1];
sprom->antenna_gain.a1 = tuple->data[1];
sprom->antenna_gain.a2 = tuple->data[1];
sprom->antenna_gain.a3 = tuple->data[1];
break;
case SSB_SDIO_CIS_BFLAGS:
GOTO_ERROR_ON((tuple->size != 3) &&
Expand Down
7 changes: 1 addition & 6 deletions trunk/include/linux/ssb/ssb.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,12 +94,7 @@ struct ssb_sprom {
* on each band. Values in dBm/4 (Q5.2). Negative gain means the
* loss in the connectors is bigger than the gain. */
struct {
struct {
s8 a0, a1, a2, a3;
} ghz24; /* 2.4GHz band */
struct {
s8 a0, a1, a2, a3;
} ghz5; /* 5GHz band */
s8 a0, a1, a2, a3;
} antenna_gain;

struct {
Expand Down

0 comments on commit 0bbab9a

Please sign in to comment.