日前一位客戶找上我,說明了目前在使用QCA9533 BL3A晶片組的產品開發上,遇上一個BUG,已經卡住三個星期了,遲遲無法解決。由於客戶是採用OpenWRT的架構,而在同一板子上原廠所提供Firmware是OK的,推測Tx power過低的訊號異常BUG應該是ATH9K有需要patch。
原本客戶使用的QCA9533 AL3A是沒問題的,直到換了BL3A才出現30 dBm 的 loss,這種突然間出現的Project往往都很急也很趕,只好努力一下,最後花了2天處理好這個已困擾客戶三個禮拜的問題,Happy hacked.
這是修正前(Before)的訊號強度:
這是修正後(After)的訊號強度:
剛剛客戶已確認測試通過了,很高興再次救援成功,下面分享一下修改後的patch內容。
diff -Naur ../orig-compat-wireless-2014-05-22/drivers/net/wireless/ath/ath9k/hw.c ../compat-wireless-2014-05-22/drivers/net/wireless/ath/ath9k/hw.c --- ../orig-compat-wireless-2014-05-22/drivers/net/wireless/ath/ath9k/hw.c 2015-06-07 14:13:10.655703572 +0800 +++ ../compat-wireless-2014-05-22/drivers/net/wireless/ath/ath9k/hw.c 2015-06-07 14:14:12.336864783 +0800 @@ -260,7 +260,7 @@ case AR9300_DEVID_AR953X: ah->hw_version.macVersion = AR_SREV_VERSION_9531; if (ah->get_mac_revision) - ah->hw_version.macRev = ah->get_mac_revision(); + ah->hw_version.macRev = 1; //ah->get_mac_revision(); return; }