我一直在修改 linux 无线驱动程序 (ath9k) 以实现通知通道宽度动作框架。
需要做的一件事是在不中断数据传输的情况下,在 HT20 和 HT40 之间更改 STATION 的通道类型。
我现在能做的是在 HT20 速率和 HT40 速率之间切换,而不是通道类型。对于 AP 端,ieee80211_set_channel_type() 在函数 ieee80211_rx_h_action() 中调用时起作用。但是在 STATION 方面,我找不到合适的函数来调用 ieee80211_set_channel_type(),我的所有尝试都导致了内核恐慌。即使调用 ieee80211_set_channel_type() 与我在 STATION 端使用 AP 的方式完全相同也会导致系统崩溃。
有人可以提供一些关于可能的 API 选择的提示,以在 STATION 端更改 HT20 和 HT40 之间的通道类型吗?谢谢!