History log of /openwifi/driver/sdr.c (Results 1 – 25 of 105)
Revision Date Author Comments
# de9f07c1 22-Feb-2024 robgar2001 <[email protected]>

Fixed typo in sdr.c


# db8c69b6 22-Feb-2024 robgar2001 <[email protected]>

Fixed errors during compilation of OpenWRT kernel modules


# 1e61d261 20-Nov-2023 Xianjun Jiao <[email protected]>

Avoid rfkill turn off wifi after manual tx attenuation setting


# 441850b1 09-Feb-2023 Xianjun Jiao <[email protected]>

NO code change. Formating


# 01da46b5 17-Jan-2023 Xianjun Jiao <[email protected]>

Necessary sdr.c change for ADI kuiper release


# d4c3d810 17-Jan-2023 Xianjun Jiao <[email protected]>

Though the SIFS definition in 2.4GHz is 10us, the actual gap is still 16us:
1. Confirmed by CMW270 in OFDM mode (10us is for 11b where viterbi decoder is not needed)
2. See Signal Extension in 18.3.2

Though the SIFS definition in 2.4GHz is 10us, the actual gap is still 16us:
1. Confirmed by CMW270 in OFDM mode (10us is for 11b where viterbi decoder is not needed)
2. See Signal Extension in 18.3.2.4 ERP-OFDM PPDU format of 802.11-2020

show more ...


# 20d92b40 17-Jan-2023 Xianjun Jiao <[email protected]>

Change the cca threshold to -62dBm. Seems help a lot in 2.4GHz


# ab74dd74 13-May-2022 Xianjun Jiao <[email protected]>

Fix the rssi_correction for WiFi 6E channel (close to 6GHz)
Verified by CMW270


# d6c1c3f7 30-Mar-2022 Xianjun Jiao <[email protected]>

Easier way to set arbitrary trx frequency via register rf 1 and 5:
Create helper function ad9361_tx_calibration() and openwifi_rf_rx_update_after_tuning() for frequency tuning. No matter it is from L

Easier way to set arbitrary trx frequency via register rf 1 and 5:
Create helper function ad9361_tx_calibration() and openwifi_rf_rx_update_after_tuning() for frequency tuning. No matter it is from Linux request or rf register 1 (Tx freq override MHz) and 5 (Rx freq override MHz)

show more ...


# 6bb9ef71 29-Mar-2022 Xianjun Jiao <[email protected]>

Example of how to add debug channel via sysfs and access it via script --> driver


# e4d5d1a3 29-Mar-2022 Xianjun Jiao <[email protected]>

Add code for new statistics and setting channel via sysfs


# 8b7c8490 29-Mar-2022 Xianjun Jiao <[email protected]>

The improved tx queue handling mechanism between openwifi_tx() and openwifi_tx_interrupt():
1. Consider more corner cases: interrupt missing will cause a bd in the driver ring will never be cleaned.

The improved tx queue handling mechanism between openwifi_tx() and openwifi_tx_interrupt():
1. Consider more corner cases: interrupt missing will cause a bd in the driver ring will never be cleaned. this need to be considered in the openwifi_tx()
2. Another corner case in openwifi_tx_interrupt: a packet is just sent and an interrupt calls the routine, but it finds that the bd in the driver ring has been cleared somehow
3. The driver ring and FPGA queue are always 1 on 1 mapping. User needs to map the higher level Linux priority to the driver ring idx instead of FPGA queue idx
4. Record the information about which FPGA queue (driver ring) has stopped which Linux priority before, and do exhausted search after a packet is sent (in the interrupt routine) to wake that Linux priority queue (in mac80211) up
5. Reserve more room before the FPGA queue full to adopt the last packet before we decide to stop the mac80211 queue. In this way, the last packet before the queue stop will still be put into FPGA and is expected to be sent (not lost/drop actively)

show more ...


# 2c78ef13 29-Mar-2022 Xianjun Jiao <[email protected]>

Fix the AMPDU reporting bug in tx interrupt:

When pkt_cnt is 1, it is also possible the aggregation case (single packet aggregation). So the reporting type (non aggregation or aggregation) should be

Fix the AMPDU reporting bug in tx interrupt:

When pkt_cnt is 1, it is also possible the aggregation case (single packet aggregation). So the reporting type (non aggregation or aggregation) should be decided automatically based on a dedicated use_ht_aggr flag instead of pkt_cnt, otherwise the Linux minstrel_ht link adaptation can not get correct TX status report in the aggregation case and will keep using the lowest MCS0

show more ...


# 106a5e44 29-Mar-2022 Xianjun Jiao <[email protected]>

Align rx ring init to the new pkt existing flag inserted by FPGA


# 088d2d18 29-Mar-2022 Xianjun Jiao <[email protected]>

Add dmesg printk flag in sdr.h and use it in openwifi_rx-interrupt() accordingly


# ca865e38 29-Mar-2022 Xianjun Jiao <[email protected]>

Move the location of hdr/addr1/addr2 in openwifi_rx_interrupt() preparing for statistics usage


# d267a5f4 29-Mar-2022 Xianjun Jiao <[email protected]>

Add more info when the rx pkt content is abnormal in openwifi_rx_interrupt()


# 9c7deabd 29-Mar-2022 Xianjun Jiao <[email protected]>

Make the freq/band report in openwifi_rx_interrupt from our driver internal variable instead of Linux setting. The latter might be asynchronous and cause issue: if the received management frame has w

Make the freq/band report in openwifi_rx_interrupt from our driver internal variable instead of Linux setting. The latter might be asynchronous and cause issue: if the received management frame has wrong freq/band info, the Linux mac80211 might reject some state or have issue according to Linux kernel doc somewhere

show more ...


# 0dc3d33d 29-Mar-2022 Xianjun Jiao <[email protected]>

Rename the rssi_val to more meaningful rssi_half_db in openwifi_rx_interrupt, and use the helper function rssi_half_db_to_rssi_dbm to do calculation


# 1bbdabf0 29-Mar-2022 Xianjun Jiao <[email protected]>

Remove unnecessary variable initialization and other minor adaptation


# b62a3704 29-Mar-2022 Xianjun Jiao <[email protected]>

Change the sc to seqno in openwifi_rx_interrupt() and align the operation logic to openwifi_tx()


# bca13d88 29-Mar-2022 Xianjun Jiao <[email protected]>

Shorten the openwifi_rx_interrupt message header to openwifi_rx


# 641a980a 29-Mar-2022 thavinga <[email protected]>

Disable AD9361 auto calibration and enable openwifi FPGA SPI control in openwifi_start()


# 3ac00233 29-Mar-2022 Xianjun Jiao <[email protected]>

Try to allocate more room while skb head/tail room is not enough to adopt header/padding in openwifi_tx()


# e7312859 29-Mar-2022 Xianjun Jiao <[email protected]>

Move the normal print location in openwifi_tx()


12345