Xianjun Jiao
54c67c7a2f
No need to consider 4 last pkt from 4 queue in master branch:
...
Always assume Linux schedule 4 priority queue to 4 FPGA queue via 1 on 1 mapping
2022-03-28 20:41:00 +02:00
Xianjun Jiao
0cbb687387
Change the default bb_gain from 290 to 250 in tx_intf:
...
- 2022-03-04 detailed test result:
- - bb_gain 290 work for 11a/g all mcs
- - bb_gain 290 work for 11n mcs 1~7 (aggr and non aggr)
- - bb_gain 290 destroy 11n mcs 0 long (MTU 1500) tx pkt due to high PAPR (Peak to Average Power Ratio)
- - bb_gain 250 work for 11n mcs 0
So, a conservative bb_gain 250 should be used
2022-03-28 20:38:25 +02:00
Xianjun Jiao
469b96d342
Remove/modify the tx_intf register API according to the new FPGA:
...
1. mixer/duc is not needed because we will not use offset tuning after the ad9361 tx lo control via FPGA is supported.
2. source selection register is not needed as well.
3. arbitrary IQ register is added.
2022-03-28 20:35:17 +02:00
Xianjun Jiao
4d39160b06
Add the missing TX_INTF_BW_20MHZ_AT_0MHZ_ANT_BOTH into tx_intf_mode
2022-03-28 20:29:26 +02:00
Xianjun Jiao
a7396dd938
Some minor unused comments
2022-03-28 20:27:36 +02:00
thavinga
9fde3bff20
Displaying side channel plots with interactive mode to avoid jumping to foreground on update
...
Plus small fix for file closing
2022-03-28 16:53:07 +02:00
Xianjun Jiao
a7d34401ff
Update ad9361_rf_set_channel() for easier rssi_half_db rssi_dbm rssi_correction stuffs:
...
by using the helper functions: rssi_correction_lookup_table(), rssi_dbm_to_rssi_half_db(), rssi_half_db_to_rssi_dbm()
2022-03-28 16:44:52 +02:00
Xianjun Jiao
dbf0324b60
Restructure a bit ad9361_rf_set_channel() for actual lo tuning and priv lo variable update
2022-03-28 16:39:32 +02:00
Xianjun Jiao
534627041e
Remove unused code in ad9361_rf_set_channel()
2022-03-28 16:35:25 +02:00
Xianjun Jiao
d2bd08e02e
Add useful function definition at the beginning of sdr.c
2022-03-28 16:14:33 +02:00
Xianjun Jiao
df53600a86
Remove the unused code
2022-03-28 16:13:42 +02:00
Xianjun Jiao
747a245fd7
Add a printing via comment in openwifi_beacon_work() in case debug
2022-03-28 16:08:23 +02:00
Xianjun Jiao
dc35c00409
Add MAC addr setting support into driver via openwifi_add_interface()
2022-03-28 16:07:37 +02:00
Xianjun Jiao
dbf47e17aa
Add more print into openwifi_bss_info_changed() when vif_priv->enable_beacon
2022-03-28 16:06:24 +02:00
Xianjun Jiao
16494306ff
Add more info printing into openwifi_ampdu_action
2022-03-28 16:00:01 +02:00
Xianjun Jiao
20936d67e1
Remove unused variable from openwifi_dev_probe()
2022-03-28 15:27:50 +02:00
Xianjun Jiao
f73b4f429f
Tell mac80211 we need extra_tx_headroom = LEN_MPDU_DELIM
2022-03-28 15:27:07 +02:00
Xianjun Jiao
72d992a6ec
More correct hw flag set via ieee80211_hw_set to prevent:
...
Some client, like iPhone, always has frequent PS (Power Saving) state change like this:
sdr0: STA e2:72:49:82:a6:a0 aid 1 enters power save mode
sdr0: STA e2:72:49:82:a6:a0 aid 1 exits power save mode
sdr0: STA e2:72:49:82:a6:a0 aid 1 sending 0 filtered/0 PS frames since STA woke up
Now with these correct hw flag setting, the link is more stable
2022-03-28 15:26:35 +02:00
Xianjun Jiao
921f612e86
Only support 40MHz sps and non offset tuning now
2022-03-28 15:25:20 +02:00
Xianjun Jiao
9f07176e80
Remove the unused code in openwifi_dev_probe()
2022-03-28 15:24:49 +02:00
Xianjun Jiao
cb81054882
Add helper functions for rssi_half_db rssi_dbm conversion and rssi_correction lookup table:
...
and use them for priv->rssi_correction/priv->last_auto_fpga_lbt_th initialization in openwifi_dev_probe()
2022-03-28 15:23:53 +02:00
Xianjun Jiao
7b2f8bdfff
Align the inital actual_tx_lo/actual_rx_lo to rf_init_11n.sh:
...
Make it far from our usual 2.4/5GHz to force ad9361 to calibration while up in 2.4/5GHz due to large tuning offset from the original frequency (1GHz)
2022-03-28 15:20:03 +02:00
Xianjun Jiao
ffd377ca42
Adjust the err code and print in openwifi_dev_probe()
2022-03-28 15:17:12 +02:00
Xianjun Jiao
7b3805608b
Remove the short GI capability report from driver for:
...
stability with minor throughput loss
2022-03-28 15:14:55 +02:00
Xianjun Jiao
8e13e72bca
Add set_antenna and get_antenna implementations to ieee80211_ops
2022-03-28 15:12:50 +02:00
Xianjun Jiao
76b1a6a12c
Adjust the driver arguments while loading/insert:
...
1. test_mode 0 -- normal, no aggregation (AMPDU); test_mode 1 -- experimental, has AMPDU support
2. init_tx_att -- initial tx attenuation in dB*1000 format. example: put 20000 for 20dB
2022-03-28 15:08:01 +02:00
Xianjun Jiao
91a6d83146
Improve the openwifi_is_radio_enabled() according to the new design
2022-03-28 14:58:46 +02:00
Xianjun Jiao
68314a4614
Add the missing rf_reg_val in priv
2022-03-28 14:57:49 +02:00
Xianjun Jiao
e21492d767
Driver register initialization optimization:
...
keep software registers persistent between NIC down and up for multiple times
2022-03-28 14:55:57 +02:00
Xianjun Jiao
56203843f5
Add runtime tx/rx antenna switch support to driver
2022-03-28 14:49:15 +02:00
Xianjun Jiao
11d048d944
Re-structure/define drv reg idx. Add (drv) RF reg
2022-03-28 14:18:35 +02:00
Xianjun Jiao
d3ce582a3d
Add the missing sdrctl reg category
2022-03-28 14:16:57 +02:00
Xianjun Jiao
b196f496df
Add priv->actual_tx_lo preparing for further tx/rx related setting
2022-03-28 14:14:49 +02:00
Xianjun Jiao
2ae501ca2e
Disable TID in sdr.c:
...
By default the TID is disabled in FPGA, because we currently try to TX and RX traffic for all TIDs. So, the TID related operations in sdr.c are removed.
2022-03-28 14:02:23 +02:00
Xianjun Jiao
0b4b8cc75d
Add all Europe 5GHz channel support into driver
2022-03-28 13:58:05 +02:00
Xianjun Jiao
6a9949ee81
Replace some constants of number of NIC by MAX_NUM_VIF
2022-03-28 13:56:19 +02:00
Xianjun Jiao
61a639784b
Add sysfs file based driver/FPGA access interface
2022-03-28 12:46:49 +02:00
Xianjun Jiao
7d0af6df9e
Move sdrctl testmode cmd out to sdrctl_intf.c
2022-03-28 12:46:18 +02:00
Xianjun Jiao
7d361288db
Add testmode argument (1 for AMPDU) to fosdem.sh
2022-03-28 12:35:17 +02:00
Xianjun Jiao
d572f3b04e
Remove the short GI capability from hostapd conf:
...
This brings us more stable (a bit less throughput in extreme case) system
2022-03-28 12:34:06 +02:00
Xianjun Jiao
bf351a865f
Improve the post_config.sh after the 1st time power on with new SD card:
...
1. chmod +x for all onboard .sh files
2. install the package for bridge functionalities by default
2022-03-28 12:32:36 +02:00
Xianjun Jiao
7d48624548
New rf/ad9361 initialization script with new ad9361 filter file:
...
1. Wider bandwidth for 11n (4 extra subcarriers than 11a/g)
2. No offset tuning anymore
2022-03-28 12:28:11 +02:00
Xianjun Jiao
a5bde87733
Update rf_init.sh -- less use for now:
...
We mainly use rf_init_11n.sh
2022-03-28 12:25:50 +02:00
Xianjun Jiao
0c346c2006
Script to set lbt (listen before talk) threshold
2022-03-28 12:23:36 +02:00
Xianjun Jiao
7efd1542d4
Userspace script for arbitrary IQ tx via tx_intf
2022-03-28 12:22:58 +02:00
Xianjun Jiao
10cc847f81
Script to enable/disable/show driver level tx/rx statistics
2022-03-28 12:21:30 +02:00
Xianjun Jiao
efb7b60626
Add script to limit statistics for packets from target/peer MAC address only
2022-03-28 12:20:28 +02:00
Xianjun Jiao
8c9b1b478d
Add script to enable all rx packet collecting for:
...
rx statistics.
For example, the received ACK normally will not be reported to the rx driver statistics. After this script, we collect all packet (including ACK, all control/management packet) for statistics
2022-03-28 12:19:33 +02:00
Xianjun Jiao
b1a9fd07da
Add scripts to ease rx gain setting
2022-03-28 12:17:16 +02:00
Xianjun Jiao
a918498713
Add script to restrict openwifi only use a fixed frequency:
...
to avoid extra tuning/scanning operation/procedure bringing ad9361 calibration and Linux channenl setting activities
2022-03-28 12:16:41 +02:00