* [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1
@ 2007-04-19 13:47 Larry Finger
2007-04-19 13:58 ` Stefano Brivio
0 siblings, 1 reply; 4+ messages in thread
From: Larry Finger @ 2007-04-19 13:47 UTC (permalink / raw)
To: John Linville; +Cc: Bcm43xx-dev, linux-wireless
Patch 2/3: There are recent changes to the specs that eliminate a
number of machine check errors on PPC architecture when used with
phy->rev == 1 chips.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
---
John,
This patch is for the wireless-dev tree. A separate one will be prepared
for the mb tree.
Larry
Index: wireless-dev/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
===================================================================
--- wireless-dev.orig/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
+++ wireless-dev/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
@@ -599,16 +599,16 @@ static void bcm43xx_phy_agcsetup(struct
bcm43xx_phy_write(dev, 0x04A1,
(bcm43xx_phy_read(dev, 0x04A1)
& 0xF0FF) | 0x0600);
- bcm43xx_phy_write(dev, 0x04A2,
- (bcm43xx_phy_read(dev, 0x04A2)
+ bcm43xx_phy_write(dev, 0x0412,
+ (bcm43xx_phy_read(dev, 0x0412)
& 0xF0FF) | 0x0700);
- bcm43xx_phy_write(dev, 0x04A0,
- (bcm43xx_phy_read(dev, 0x04A0)
+ bcm43xx_phy_write(dev, 0x0410,
+ (bcm43xx_phy_read(dev, 0x0410)
& 0xF0FF) | 0x0100);
if (phy->rev == 1) {
- bcm43xx_phy_write(dev, 0x04A2,
- (bcm43xx_phy_read(dev, 0x04A2)
+ bcm43xx_phy_write(dev, 0x0412,
+ (bcm43xx_phy_read(dev, 0x0412)
& 0xFFF0) | 0x0007);
}
@@ -955,7 +955,7 @@ static void bcm43xx_phy_inita(struct bcm
bcm43xx_phy_setupa(dev);
} else {
bcm43xx_phy_setupg(dev);
- if (dev->dev->bus->sprom.r1.boardflags_lo & BCM43xx_BFL_PACTRL)
+ if (phy->gmode && dev->dev->bus->sprom.r1.boardflags_lo & BCM43xx_BFL_PACTRL)
bcm43xx_phy_write(dev, 0x046E, 0x03CF);
return;
}
@@ -1139,7 +1139,7 @@ static void bcm43xx_phy_initb5(struct bc
if (phy->radio_ver == 0x2050)
bcm43xx_phy_write(dev, 0x0038, 0x0667);
- if (phy->type == BCM43xx_PHYTYPE_G) {
+ if (phy->gmode || phy->rev >= 2) {
if (phy->radio_ver == 0x2050) {
bcm43xx_radio_write16(dev, 0x007A,
bcm43xx_radio_read16(dev, 0x007A)
@@ -1560,7 +1560,7 @@ static void bcm43xx_phy_initg(struct bcm
else
bcm43xx_phy_initb6(dev);
- if (has_loopback_gain(phy))
+ if (phy->rev >= 2 || phy->gmode)
bcm43xx_phy_inita(dev);
if (phy->rev >= 2) {
@@ -1575,7 +1575,7 @@ static void bcm43xx_phy_initg(struct bcm
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVER, 0x400);
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xC0);
}
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
tmp = bcm43xx_phy_read(dev, BCM43xx_PHY_VERSION_OFDM);
tmp &= BCM43xx_PHYVER_VERSION;
if (tmp == 3 || tmp == 5) {
@@ -1588,7 +1588,7 @@ static void bcm43xx_phy_initg(struct bcm
& 0x00FF) | 0x1F00);
}
}
- if (phy->rev <= 2 && phy->gmode)
+ if ((phy->rev <= 2 && phy->gmode) || phy->rev >= 2)
bcm43xx_phy_write(dev, BCM43xx_PHY_OFDM(0x7E), 0x78);
if (phy->radio_rev == 8) {
bcm43xx_phy_write(dev, BCM43xx_PHY_EXTG(0x01),
@@ -1634,7 +1634,7 @@ static void bcm43xx_phy_initg(struct bcm
else
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x2F), 0x202);
}
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_lo_adjust(dev);
bcm43xx_phy_write(dev, BCM43xx_PHY_LO_MASK, 0x8078);
}
@@ -1648,8 +1648,8 @@ static void bcm43xx_phy_initg(struct bcm
*/
bcm43xx_nrssi_hw_update(dev, 0xFFFF);//FIXME?
bcm43xx_calc_nrssi_threshold(dev);
- } else {
- if (phy->gmode && phy->nrssi[0] == -1000) {
+ } else if (phy->gmode || phy->rev >= 2) {
+ if (phy->nrssi[0] == -1000) {
assert(phy->nrssi[1] == -1000);
bcm43xx_calc_nrssi_slope(dev);
} else
@@ -1658,7 +1658,10 @@ static void bcm43xx_phy_initg(struct bcm
if (phy->radio_rev == 8)
bcm43xx_phy_write(dev, BCM43xx_PHY_EXTG(0x05), 0x3230);
bcm43xx_phy_init_pctl(dev);
- if (0 /*FIXME: OFDM may not be used in the current locale*/) {
+ /* FIXME: The spec says in the following if, the 0 should be replaced
+ 'if OFDM may not be used in the current locale'
+ but OFDM is legal everywhere */
+ if ((dev->dev->bus->chip_id == 0x4306 && dev->dev->bus->chip_package == 2) || 0) {
bcm43xx_phy_write(dev, BCM43xx_PHY_CRS0,
bcm43xx_phy_read(dev, BCM43xx_PHY_CRS0)
& 0xBFFF);
@@ -3299,7 +3302,7 @@ bcm43xx_radio_interference_mitigation_di
ofdmtab_stackrestore(0x1A00, 0x3);
}
phy_stackrestore(0x04A2);
- phy_stackrestore(0x04A8);
+ phy_stackrestore(0x048A);
phy_stackrestore(0x042B);
phy_stackrestore(0x048C);
bcm43xx_hf_write(dev, bcm43xx_hf_read(dev) & ~BCM43xx_HF_ACIW);
@@ -3553,7 +3556,7 @@ u16 bcm43xx_radio_init2050(struct bcm43x
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x30), 0xFF);
bcm43xx_write16(dev, 0x3EC, 0x3F3F);
- } else if (phy->gmode) {
+ } else if (phy->gmode || phy->rev >= 2) {
sav.phy_rfover = bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVER);
sav.phy_rfoverval = bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVERVAL);
sav.phy_analogover = bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER);
@@ -3615,14 +3618,14 @@ u16 bcm43xx_radio_init2050(struct bcm43x
if (phy->type == BCM43xx_PHYTYPE_B)
bcm43xx_radio_write16(dev, 0x78, 0x26);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(0, 1, 1)));
}
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xBFAF);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x2B), 0x1403);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(0, 0, 1)));
@@ -3645,21 +3648,21 @@ u16 bcm43xx_radio_init2050(struct bcm43x
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x5A), 0x0480);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x59), 0xC810);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x58), 0x000D);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
}
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xAFB0);
udelay(10);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
}
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xEFB0);
udelay(10);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 0)));
@@ -3668,7 +3671,7 @@ u16 bcm43xx_radio_init2050(struct bcm43x
udelay(20);
tmp1 += bcm43xx_phy_read(dev, BCM43xx_PHY_LO_LEAKAGE);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x58), 0);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
@@ -3689,21 +3692,21 @@ u16 bcm43xx_radio_init2050(struct bcm43x
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x5A), 0x0D80);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x59), 0xC810);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x58), 0x000D);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
}
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xAFB0);
udelay(10);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
}
bcm43xx_phy_write(dev, BCM43xx_PHY_PGACTL, 0xEFB0);
udelay(10);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 0)));
@@ -3712,7 +3715,7 @@ u16 bcm43xx_radio_init2050(struct bcm43x
udelay(10);
tmp2 += bcm43xx_phy_read(dev, BCM43xx_PHY_LO_LEAKAGE);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x58), 0);
- if (phy->gmode) {
+ if (phy->gmode || phy->rev >= 2) {
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
radio2050_rfover_val(dev, BCM43xx_PHY_RFOVERVAL,
LPD(1, 0, 1)));
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1
@ 2007-04-19 13:47 Larry Finger
0 siblings, 0 replies; 4+ messages in thread
From: Larry Finger @ 2007-04-19 13:47 UTC (permalink / raw)
To: John Linville; +Cc: Bcm43xx-dev, linux-wireless
Patch 3/3: References to the Analog Override and Analog Override Value
Registers in the Extended G PHY Registers cause a machine check on
PPC architecture and a phy->rev == 1 chip. These patches skip over the
troublesome accesses. These changes do not conform with the specs,
but were found necessary for bcm43xx-softmac as well.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
---
John,
This patch is for the wireless-dev tree. A separate one will be prepared
for the mb tree.
Larry
Index: wireless-dev/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
===================================================================
--- wireless-dev.orig/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
+++ wireless-dev/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_phy.c
@@ -1361,7 +1361,7 @@ static void bcm43xx_phy_initb6(struct bc
static void bcm43xx_calc_loopback_gain(struct bcm43xx_wldev *dev)
{
struct bcm43xx_phy *phy = &dev->phy;
- u16 backup_phy[16];
+ u16 backup_phy[16] = {0};
u16 backup_radio[3];
u16 backup_bband;
u16 i, j, loop_i_max;
@@ -1372,8 +1372,10 @@ static void bcm43xx_calc_loopback_gain(s
backup_phy[1] = bcm43xx_phy_read(dev, BCM43xx_PHY_CCKBBANDCFG);
backup_phy[2] = bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVER);
backup_phy[3] = bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVERVAL);
- backup_phy[4] = bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER);
- backup_phy[5] = bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ backup_phy[4] = bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER);
+ backup_phy[5] = bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL);
+ }
backup_phy[6] = bcm43xx_phy_read(dev, BCM43xx_PHY_BASE(0x5A));
backup_phy[7] = bcm43xx_phy_read(dev, BCM43xx_PHY_BASE(0x59));
backup_phy[8] = bcm43xx_phy_read(dev, BCM43xx_PHY_BASE(0x58));
@@ -1401,14 +1403,16 @@ static void bcm43xx_calc_loopback_gain(s
bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVER) | 0x0001);
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVERVAL,
bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVERVAL) & 0xFFFE);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0001);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFE);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0002);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFD);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0001);
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFE);
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0002);
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFD);
+ }
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVER,
bcm43xx_phy_read(dev, BCM43xx_PHY_RFOVER) | 0x000C);
bcm43xx_phy_write(dev, BCM43xx_PHY_RFOVER,
@@ -1425,10 +1429,12 @@ static void bcm43xx_calc_loopback_gain(s
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x0A),
bcm43xx_phy_read(dev, BCM43xx_PHY_BASE(0x0A)) | 0x2000);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0004);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
- bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFB);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVER) | 0x0004);
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL,
+ bcm43xx_phy_read(dev, BCM43xx_PHY_ANALOGOVERVAL) & 0xFFFB);
+ }
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x03),
(bcm43xx_phy_read(dev, BCM43xx_PHY_BASE(0x03))
& 0xFF9F) | 0x40);
@@ -1521,8 +1527,10 @@ exit_loop1:
trsw_rx = 0x18;
exit_loop2:
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER, backup_phy[4]);
- bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL, backup_phy[5]);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVER, backup_phy[4]);
+ bcm43xx_phy_write(dev, BCM43xx_PHY_ANALOGOVERVAL, backup_phy[5]);
+ }
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x5A), backup_phy[6]);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x59), backup_phy[7]);
bcm43xx_phy_write(dev, BCM43xx_PHY_BASE(0x58), backup_phy[8]);
@@ -2431,8 +2439,10 @@ static void bcm43xx_calc_nrssi_offset(st
backup[0] = bcm43xx_phy_read(dev, 0x0001);
backup[1] = bcm43xx_phy_read(dev, 0x0811);
backup[2] = bcm43xx_phy_read(dev, 0x0812);
- backup[3] = bcm43xx_phy_read(dev, 0x0814);
- backup[4] = bcm43xx_phy_read(dev, 0x0815);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ backup[3] = bcm43xx_phy_read(dev, 0x0814);
+ backup[4] = bcm43xx_phy_read(dev, 0x0815);
+ }
backup[5] = bcm43xx_phy_read(dev, 0x005A);
backup[6] = bcm43xx_phy_read(dev, 0x0059);
backup[7] = bcm43xx_phy_read(dev, 0x0058);
@@ -2498,10 +2508,12 @@ static void bcm43xx_calc_nrssi_offset(st
} else {
bcm43xx_radio_write16(dev, 0x007A,
bcm43xx_radio_read16(dev, 0x007A) & 0x007F);
- bcm43xx_phy_write(dev, 0x0814,
- bcm43xx_phy_read(dev, 0x0814) | 0x0001);
- bcm43xx_phy_write(dev, 0x0815,
- bcm43xx_phy_read(dev, 0x0815) & 0xFFFE);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, 0x0814,
+ bcm43xx_phy_read(dev, 0x0814) | 0x0001);
+ bcm43xx_phy_write(dev, 0x0815,
+ bcm43xx_phy_read(dev, 0x0815) & 0xFFFE);
+ }
bcm43xx_phy_write(dev, 0x0811,
bcm43xx_phy_read(dev, 0x0811) | 0x000C);
bcm43xx_phy_write(dev, 0x0812,
@@ -2520,10 +2532,12 @@ static void bcm43xx_calc_nrssi_offset(st
bcm43xx_phy_read(dev, 0x000A)
| 0x2000);
}
- bcm43xx_phy_write(dev, 0x0814,
- bcm43xx_phy_read(dev, 0x0814) | 0x0004);
- bcm43xx_phy_write(dev, 0x0815,
- bcm43xx_phy_read(dev, 0x0815) & 0xFFFB);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, 0x0814,
+ bcm43xx_phy_read(dev, 0x0814) | 0x0004);
+ bcm43xx_phy_write(dev, 0x0815,
+ bcm43xx_phy_read(dev, 0x0815) & 0xFFFB);
+ }
bcm43xx_phy_write(dev, 0x0003,
(bcm43xx_phy_read(dev, 0x0003) & 0xFF9F)
| 0x0040);
@@ -2560,8 +2574,10 @@ static void bcm43xx_calc_nrssi_offset(st
bcm43xx_phy_write(dev, 0x080F, backup[14]);
bcm43xx_phy_write(dev, 0x0810, backup[15]);
}
- bcm43xx_phy_write(dev, 0x0814, backup[3]);
- bcm43xx_phy_write(dev, 0x0815, backup[4]);
+ if (phy->rev != 1) { /* Not in specs, but needed to prevent PPC machine check */
+ bcm43xx_phy_write(dev, 0x0814, backup[3]);
+ bcm43xx_phy_write(dev, 0x0815, backup[4]);
+ }
bcm43xx_phy_write(dev, 0x005A, backup[5]);
bcm43xx_phy_write(dev, 0x0059, backup[6]);
bcm43xx_phy_write(dev, 0x0058, backup[7]);
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1
2007-04-19 13:47 [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1 Larry Finger
@ 2007-04-19 13:58 ` Stefano Brivio
2007-04-19 14:09 ` Larry Finger
0 siblings, 1 reply; 4+ messages in thread
From: Stefano Brivio @ 2007-04-19 13:58 UTC (permalink / raw)
To: Larry Finger; +Cc: John Linville, Bcm43xx-dev, linux-wireless
On Thu, 19 Apr 2007 08:47:06 -0500
Larry Finger <Larry.Finger@lwfinger.net> wrote:
> @@ -599,16 +599,16 @@ static void bcm43xx_phy_agcsetup(struct
Just FYI, I'm going to whack this whole function soon, when the R.E. team
is done with A PHY LO specifications and I release the patchset I previously
talked about. In the meanwhile, if this really fixes machine checks, I ACK
this.
--
Ciao
Stefano
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1
2007-04-19 13:58 ` Stefano Brivio
@ 2007-04-19 14:09 ` Larry Finger
0 siblings, 0 replies; 4+ messages in thread
From: Larry Finger @ 2007-04-19 14:09 UTC (permalink / raw)
To: Stefano Brivio; +Cc: linux-wireless, Bcm43xx-dev
Stefano Brivio wrote:
> On Thu, 19 Apr 2007 08:47:06 -0500
> Larry Finger <Larry.Finger@lwfinger.net> wrote:
>
>> @@ -599,16 +599,16 @@ static void bcm43xx_phy_agcsetup(struct
>
> Just FYI, I'm going to whack this whole function soon, when the R.E. team
> is done with A PHY LO specifications and I release the patchset I previously
> talked about. In the meanwhile, if this really fixes machine checks, I ACK
> this.
Thanks. It really does fix the machine checks, but what is even better is that I can find them on my
x86 hardware before the code is sent upstream. If you want, I will test your patchset for this problem.
Larry
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-04-19 14:06 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-19 13:47 [PATCH 2/3] bcm43xx-mac80211: Fix machine check on PPC for phy->rev == 1 Larry Finger
2007-04-19 13:58 ` Stefano Brivio
2007-04-19 14:09 ` Larry Finger
-- strict thread matches above, loose matches on Subject: below --
2007-04-19 13:47 Larry Finger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).