在 iwlwifi dvm linux 驱动程序的源代码中,有一个名为“rs_program_fix_rate”的函数(https://github.com/torvalds/linux/blob/master/drivers/net/wireless/intel/iwlwifi/dvm/rs.c#L334)
消息来源声称:
/**
* Program the device to use fixed rate for frame transmit
* This is for debugging/testing only
* once the device start use fixed rate, we need to reload the module
* to being back the normal operation.
*/
要与此函数交互,我认为从源代码中您可以使用 DEBUGFS 文件系统和文件:/sys/kernel/debug/ieee80211/phy0/netdev:wlp2s0/stations/MAC_ADRESS/rate_scale_table
,通过执行例如echo "0x2C104" | tee >./rate_scale_table
.
我对此有多个疑问:
您写入此文件的十六进制字符串是如何构造的? “0x2C104”出现在文件的输出中rate_scale_table
,如下所示:
sta_id 0
failed=0 success=0 rate=0FFF
fixed rate 0x2C104
valid_tx_ant ANT_A,ANT_B,
lq type legacy
last tx rate=0x4009
general: flags=0x8 mimo-d=0 s-ant=0x1 d-ant=0x3
agg: time_limit=4000 dist_start_th=3 frame_cnt_limit=63
reduced tpc=0
single stream params: INVALID
Start idx [0]=0x0 [1]=0x0 [2]=0x0 [3]=0x0
rate[0] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[1] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[2] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[3] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[4] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[5] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[6] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[7] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[8] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[9] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[10] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[11] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[12] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[13] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[14] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC
rate[15] 0x2C104 HT | ANT: AB BW: 20Mhz MCS: 4 NSS: 1 NGI STBC`
此外,当通过执行 固定速率时echo "0x2C104" | tee >./rate_scale_table
,报告的比特率 iw dev wlp2s0 station dump
不会改变。这是为什么?我是否混淆了不同的(比特)速率?如何修复 dvm / mvm iwlwifi 卡的比特率(即 MCS)?