Skip to contentSkip to conversation

b43: xmit: set 5 GHz bit depending on current band

PATCH New Rafał Miłecki 3 participants 8 messages May 20, 2014 Networking drivers (wireless)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

PHYs other than A may also work in 5 GHz mode.

---
 drivers/net/wireless/b43/xmit.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/wireless/b43/xmit.c +1 -1
index 31adb8c..4f38f19 100644
@@ -408,7 +408,7 @@ int b43_generate_txhdr(struct b43_wldev *dev,
 		mac_ctl |= B43_TXH_MAC_HWSEQ;
 	if (info->flags & IEEE80211_TX_CTL_FIRST_FRAGMENT)
 		mac_ctl |= B43_TXH_MAC_STMSDU;
-	if (phy->type == B43_PHYTYPE_A)
+	if (!phy->gmode)
 		mac_ctl |= B43_TXH_MAC_5GHZ;
 
 	/* Overwrite rates[0].count to make the retry calculation
Signature · 1 line
1.8.4.5
#1 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Hi,

drivers/net/wireless/b43/xmit.c int b43_generate_txhdr(struct b43_wldev *dev, · line 412

Quoted 5 lines · Rafa? Mi?ecki
drivers/net/wireless/b43/xmit.c +1 -1
-	if (phy->type == B43_PHYTYPE_A)
+	if (!phy->gmode)
 		mac_ctl |= B43_TXH_MAC_5GHZ;

I am not familiar with this driver, but wouldn't 11b mode fall in this case as well ?

Cheers,

Signature · 9 lines
Antonio Quartulli

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 901 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20140520/6df9551c/attachment.sig>
#2 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Quoted 9 lines · Antonio Quartulli

drivers/net/wireless/b43/xmit.c int b43_generate_txhdr(struct b43_wldev *dev, · line 412

Quoted 5 lines · Rafa? Mi?ecki
drivers/net/wireless/b43/xmit.c +1 -1
-     if (phy->type == B43_PHYTYPE_A)
+     if (!phy->gmode)
              mac_ctl |= B43_TXH_MAC_5GHZ;

I am not familiar with this driver, but wouldn't 11b mode fall in this case as well ?

What Broadcom calls a "gmode" is 2GHz. So this is a simple bool
1) gmode = true; // we work in 2GHz mode
2) gmode = false; // we work in 5GHz mode

#3 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Quoted 11 lines · Rafa? Mi?ecki
Quoted 9 lines · Antonio Quartulli

drivers/net/wireless/b43/xmit.c int b43_generate_txhdr(struct b43_wldev *dev, · line 412

Quoted 5 lines · Rafa? Mi?ecki
drivers/net/wireless/b43/xmit.c +1 -1
-     if (phy->type == B43_PHYTYPE_A)
+     if (!phy->gmode)
              mac_ctl |= B43_TXH_MAC_5GHZ;

I am not familiar with this driver, but wouldn't 11b mode fall in this case as well ?

Quoted 3 lines

What Broadcom calls a "gmode" is 2GHz. So this is a simple bool
1) gmode = true; // we work in 2GHz mode
2) gmode = false; // we work in 5GHz mode

Oh ok, thanks for the clarification! I think the variable name should be less ambiguous then, but it's your/broadcom code :)

Cheers,

Signature · 9 lines
Antonio Quartulli

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 901 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20140520/43f22b5b/attachment.sig>
#4 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Quoted 12 lines · Antonio Quartulli
Quoted 11 lines · Rafa? Mi?ecki
Quoted 9 lines · Antonio Quartulli

drivers/net/wireless/b43/xmit.c int b43_generate_txhdr(struct b43_wldev *dev, · line 412

Quoted 5 lines · Rafa? Mi?ecki
drivers/net/wireless/b43/xmit.c +1 -1
-     if (phy->type == B43_PHYTYPE_A)
+     if (!phy->gmode)
              mac_ctl |= B43_TXH_MAC_5GHZ;

I am not familiar with this driver, but wouldn't 11b mode fall in this case as well ?

Quoted 6 lines
Quoted 3 lines

What Broadcom calls a "gmode" is 2GHz. So this is a simple bool
1) gmode = true; // we work in 2GHz mode
2) gmode = false; // we work in 5GHz mode

Oh ok, thanks for the clarification! I think the variable name should be less ambiguous then, but it's your/broadcom code :)

You're probably right. It's just a bit historical, it matches bcm47xx specs, Broadcom's public code, Broadcom headers and probably their internal specs. That's why I didn't decide to really touch it, to avoid confusion when comparing specs with the code.

Signature · 1 line
Rafa?
#5 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Quoted 4 lines · On Tue, 20 May 2014 09:23:28 +0200 Rafa? Mi?ecki <[email protected]> wrote:

You're probably right. It's just a bit historical, it matches bcm47xx specs, Broadcom's public code, Broadcom headers and probably their internal specs. That's why I didn't decide to really touch it, to avoid confusion when comparing specs with the code.

The thing is that the actual hardware bit is called GMODE.
I guess we could rename that variable and add a comment, if it's really an issue. But not the #define for the hardware bit.

Signature · 13 lines
Michael.

----
Please use PGP/GPG encryption.
Key-ID: F532BE1D908D8B0E
--------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20140520/155208da/attachment.sig>
#6 lore raw

PATCH 1/1 b43: xmit: set 5 GHz bit depending on current band

Quoted 9 lines · Michael B?sch
Quoted 4 lines · On Tue, 20 May 2014 09:23:28 +0200 Rafa? Mi?ecki <[email protected]> wrote:

You're probably right. It's just a bit historical, it matches bcm47xx specs, Broadcom's public code, Broadcom headers and probably their internal specs. That's why I didn't decide to really touch it, to avoid confusion when comparing specs with the code.

Quoted 3 lines

The thing is that the actual hardware bit is called GMODE.
I guess we could rename that variable and add a comment, if it's really an issue. But not the #define for the hardware bit.

Thanks for your comment. In V2 I've extended "gmode" comment slightly, so I hope it'll be fine now.

#7 lore raw

PATCH v2 1/1 b43: xmit: set 5 GHz bit depending on current band

In reply to Rafał Miłecki

PHYs other than A may also work in 5 GHz mode.

---
V2: Update comment about "gmode" in phy_common.h
Thanks Antonio.

---
 drivers/net/wireless/b43/phy_common.h | 2 +-
 drivers/net/wireless/b43/xmit.c       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/net/wireless/b43/phy_common.h +1 -1
index 4c80b09..47b5585 100644
@@ -231,7 +231,7 @@ struct b43_phy {
 	/* HT info */
 	bool is_40mhz;
 
-	/* GMODE bit enabled? */
+	/* Is GMODE (2 GHz mode) bit enabled? */
 	bool gmode;
 
 	/* Analog Type */
drivers/net/wireless/b43/xmit.c +1 -1
index 31adb8c..4f38f19 100644
@@ -408,7 +408,7 @@ int b43_generate_txhdr(struct b43_wldev *dev,
 		mac_ctl |= B43_TXH_MAC_HWSEQ;
 	if (info->flags & IEEE80211_TX_CTL_FIRST_FRAGMENT)
 		mac_ctl |= B43_TXH_MAC_STMSDU;
-	if (phy->type == B43_PHYTYPE_A)
+	if (!phy->gmode)
 		mac_ctl |= B43_TXH_MAC_5GHZ;
 
 	/* Overwrite rates[0].count to make the retry calculation
Signature · 1 line
1.8.4.5