Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F154971555
D22840.id65720.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D22840.id65720.diff
View Options
Index: sys/dev/usb/wlan/if_run.c
===================================================================
--- sys/dev/usb/wlan/if_run.c
+++ sys/dev/usb/wlan/if_run.c
@@ -809,6 +809,26 @@
IEEE80211_C_WME | /* WME */
IEEE80211_C_WPA; /* WPA1|WPA2(RSN) */
+#ifdef IF_RUN_11N
+ /* set device HT capabilities */
+ /* HT Capabilities strictly for 11ng (we dont support 11ac yet..) */
+ ic->ic_htcaps = IEEE80211_HTC_HT | IEEE80211_HTC_AMPDU |
+ /* IEEE80211_HTCAP_LDPC | */
+ IEEE80211_HTCAP_CHWIDTH40 |
+ IEEE80211_HTCAP_GREENFIELD |
+ IEEE80211_HTCAP_SMPS_OFF |
+ IEEE80211_HTCAP_SHORTGI20 |
+ IEEE80211_HTCAP_SHORTGI40 |
+ IEEE80211_HTCAP_TXSTBC |
+ IEEE80211_HTCAP_RXSTBC_3STREAM |
+ /* IEEE80211_HTCAP_DSSSCCK40 | */
+ IEEE80211_HTCAP_MAXRXAMPDU |
+ IEEE80211_HTCAP_MPDUDENSITY_4;
+
+ /* TODO: Add other caps according to rt2x00 later */
+ device_printf(sc->sc_dev, "ic_htcaps = 0x%x\n", ic->ic_htcaps);
+#endif
+
ic->ic_cryptocaps =
IEEE80211_CRYPTO_WEP |
IEEE80211_CRYPTO_AES_CCM |
@@ -4852,6 +4872,13 @@
memset(bands, 0, sizeof(bands));
setbit(bands, IEEE80211_MODE_11B);
setbit(bands, IEEE80211_MODE_11G);
+
+#ifdef IF_RUN_11N
+ if(sc->rf_rev == RT3593_RF_3053) {
+ device_printf(sc->sc_dev, "Adding 11ng channels.\n");
+ setbit(bands, IEEE80211_MODE_11NG);
+ }
+#endif
ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0);
if (sc->rf_rev == RT2860_RF_2750 || sc->rf_rev == RT2860_RF_2850 ||
Index: sys/net80211/ieee80211_output.c
===================================================================
--- sys/net80211/ieee80211_output.c
+++ sys/net80211/ieee80211_output.c
@@ -2417,6 +2417,21 @@
frm = ieee80211_add_htcap_ch(frm, vap, c);
}
+#ifdef IF_RUN_11N
+ if ((vap->iv_opmode == IEEE80211_M_STA) &&
+ (vap->iv_flags_ht & IEEE80211_FHT_HT)) {
+ struct ieee80211_channel *c;
+
+ /*
+ * Get the HT channel that we should try upgrading to.
+ * If we can do 40MHz then this'll upgrade it appropriately.
+ */
+ c = ieee80211_ht_adjust_channel(ic, ic->ic_curchan,
+ vap->iv_flags_ht);
+ frm = ieee80211_add_htcap_ch(frm, vap, c);
+ }
+#endif
+
/*
* XXX TODO: need to figure out what/how to update the
* VHT channel.
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, May 1, 9:34 AM (14 h, 36 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32570045
Default Alt Text
D22840.id65720.diff (2 KB)
Attached To
Mode
D22840: Add HTCAPS for run(4)
Attached
Detach File
Event Timeline
Log In to Comment