diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..69094be --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +fw/aic8800D80/*.txt text eol=lf +fw/aic8800D80/*.bin binary diff --git a/fw/aic8800D80/aic_powerlimit_8800d80.txt b/fw/aic8800D80/aic_powerlimit_8800d80.txt deleted file mode 100644 index 4fd2ee9..0000000 --- a/fw/aic8800D80/aic_powerlimit_8800d80.txt +++ /dev/null @@ -1,117 +0,0 @@ -# AIC POWERLIMIT 2025/0623/1700 -# Max tx power reference: Linux wireless regulatory database for CRDA -# https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git/tree/db.txt -# If loss_value in aic_userconfig.txt is enabled, the power value in this document will be subtracted from loss_value in actual judgment - -# Table 1: -## 2.4G, 20M,#6# -## START -## SRRC FCC ETSI JP KCC UNSET -CH01 16 14 14 16 16 15 -CH02 16 14 14 16 16 16 -CH03 16 14 14 16 16 16 -CH04 16 14 14 16 16 16 -CH05 16 14 14 16 16 16 -CH06 16 14 14 16 16 16 -CH07 16 14 14 16 16 16 -CH08 16 14 14 16 16 16 -CH09 16 14 14 16 16 16 -CH10 16 14 14 16 16 16 -CH11 16 14 14 16 16 16 -CH12 15 14 14 16 16 12 -CH13 13 14 14 16 16 12 -CH14 NA NA NA 16 NA 12 -## END - -# Table 2: -## 2.4G, 40M,#6# -## START -## SRRC FCC ETSI JP KCC UNSET -CH01 NA NA NA NA NA NA -CH02 NA NA NA NA NA NA -CH03 16 13 14 16 16 16 -CH04 16 13 14 16 16 16 -CH05 16 13 14 16 16 16 -CH06 16 13 14 16 16 16 -CH07 16 13 14 16 16 16 -CH08 16 13 14 16 16 16 -CH09 16 11 14 16 16 16 -CH10 16 11 14 16 16 16 -CH11 16 11 14 16 16 16 -CH12 NA NA NA NA NA NA -CH13 NA NA NA NA NA NA -CH14 NA NA NA NA NA NA -## END - -# Table 3: -## 5G, 20M,#6# -## START -## SRRC FCC ETSI JP KCC UNSET -# 5G Band 1 -CH36 15 16 16 16 16 15 -CH40 15 16 16 16 16 15 -CH44 15 16 16 16 16 15 -CH48 15 16 16 16 16 15 -# 5G Band 2 -CH52 15 16 16 16 16 15 -CH56 15 16 16 16 16 15 -CH60 15 16 16 16 16 15 -CH64 15 16 16 16 16 15 -# 5G Band 3 -CH100 NA 16 16 16 16 15 -CH104 NA 16 16 16 16 15 -CH108 NA 16 16 16 16 15 -CH112 NA 16 16 16 16 15 -CH116 NA 16 16 16 16 15 -CH120 NA 16 16 16 16 15 -CH124 NA 16 16 16 16 15 -CH128 NA 16 16 16 16 15 -CH132 NA 16 16 16 16 15 -CH136 NA 16 16 16 16 15 -CH140 NA 16 16 16 16 15 -CH144 NA NA 16 16 16 15 -# 5G Band 4 -CH149 20 16 8 NA 20 11 -CH153 20 16 8 NA 20 11 -CH157 20 16 8 NA 20 11 -CH161 20 16 8 NA 20 11 -CH165 20 16 8 NA 20 11 -## END - -# Table 4: -## 5G, 40M,#6# -## START -## SRRC FCC ETSI JP KCC UNSET -# 5G Band 1 -CH38 15 16 16 16 20 15 -CH46 15 16 16 16 20 15 -# 5G Band 2 -CH54 15 16 16 16 20 15 -CH62 15 16 16 16 20 15 -# 5G Band 3 -CH102 NA 16 16 16 20 15 -CH110 NA 16 16 16 20 15 -CH118 NA 16 16 16 20 15 -CH126 NA 16 16 16 20 15 -CH134 NA 16 16 16 20 15 -CH142 NA 16 NA 16 20 15 -# 5G Band 4 -CH151 16 15 8 NA 18 11 -CH159 17 16 8 NA 17 11 -## END - -# Table 5: -## 5G, 80M,#6# -## START -## SRRC FCC ETSI JP KCC UNSET -# 5G Band 1 -CH42 15 16 16 16 20 15 -# 5G Band 2 -CH58 15 16 16 16 20 15 -# 5G Band 3 -CH106 NA 16 16 16 20 15 -CH122 NA 16 16 16 20 15 -CH138 NA 16 NA NA 20 15 -# 5G Band 4 -CH155 15 14 8 NA 16 11 -## END \ No newline at end of file diff --git a/fw/aic8800D80/aic_userconfig_8800d80.txt b/fw/aic8800D80/aic_userconfig_8800d80.txt index 864efb4..553fe60 100644 --- a/fw/aic8800D80/aic_userconfig_8800d80.txt +++ b/fw/aic8800D80/aic_userconfig_8800d80.txt @@ -67,23 +67,9 @@ lvl_11ax_mcs9_5g=13 lvl_11ax_mcs10_5g=12 lvl_11ax_mcs11_5g=12 -# txpwr_lvl_adj -lvl_adj_enable=0 -lvl_adj_2g4_chan_1_4=0 -lvl_adj_2g4_chan_5_9=0 -lvl_adj_2g4_chan_10_13=0 -lvl_adj_5g_chan_42=0 -lvl_adj_5g_chan_58=0 -lvl_adj_5g_chan_106=0 -lvl_adj_5g_chan_122=0 -lvl_adj_5g_chan_138=0 -lvl_adj_5g_chan_155=0 - # txpwr_loss -loss_enable_2g4=0 -loss_value_2g4=2 -loss_enable_5g=0 -loss_value_5g=5 +loss_enable=0 +loss_value=2 # txpwr_ofst ofst_enable=0 diff --git a/fw/aic8800D80/aic_userconfig_8800d80_u11.txt b/fw/aic8800D80/aic_userconfig_8800d80_u11.txt deleted file mode 100644 index 5bf7827..0000000 --- a/fw/aic8800D80/aic_userconfig_8800d80_u11.txt +++ /dev/null @@ -1,124 +0,0 @@ -# AIC USERCONFIG 2022/0803/1707 - -# txpwr_lvl -enable=1 -lvl_11b_11ag_1m_2g4=20 -lvl_11b_11ag_2m_2g4=20 -lvl_11b_11ag_5m5_2g4=20 -lvl_11b_11ag_11m_2g4=20 -lvl_11b_11ag_6m_2g4=20 -lvl_11b_11ag_9m_2g4=20 -lvl_11b_11ag_12m_2g4=20 -lvl_11b_11ag_18m_2g4=20 -lvl_11b_11ag_24m_2g4=20 -lvl_11b_11ag_36m_2g4=19 -lvl_11b_11ag_48m_2g4=18 -lvl_11b_11ag_54m_2g4=17 -lvl_11n_11ac_mcs0_2g4=20 -lvl_11n_11ac_mcs1_2g4=20 -lvl_11n_11ac_mcs2_2g4=20 -lvl_11n_11ac_mcs3_2g4=20 -lvl_11n_11ac_mcs4_2g4=20 -lvl_11n_11ac_mcs5_2g4=19 -lvl_11n_11ac_mcs6_2g4=18 -lvl_11n_11ac_mcs7_2g4=17 -lvl_11n_11ac_mcs8_2g4=17 -lvl_11n_11ac_mcs9_2g4=16 -lvl_11ax_mcs0_2g4=20 -lvl_11ax_mcs1_2g4=20 -lvl_11ax_mcs2_2g4=20 -lvl_11ax_mcs3_2g4=20 -lvl_11ax_mcs4_2g4=20 -lvl_11ax_mcs5_2g4=19 -lvl_11ax_mcs6_2g4=18 -lvl_11ax_mcs7_2g4=17 -lvl_11ax_mcs8_2g4=17 -lvl_11ax_mcs9_2g4=16 -lvl_11ax_mcs10_2g4=15 -lvl_11ax_mcs11_2g4=15 -lvl_11a_6m_5g=19 -lvl_11a_9m_5g=19 -lvl_11a_12m_5g=19 -lvl_11a_18m_5g=18 -lvl_11a_24m_5g=18 -lvl_11a_36m_5g=18 -lvl_11a_48m_5g=18 -lvl_11a_54m_5g=18 -lvl_11n_11ac_mcs0_5g=19 -lvl_11n_11ac_mcs1_5g=19 -lvl_11n_11ac_mcs2_5g=19 -lvl_11n_11ac_mcs3_5g=18 -lvl_11n_11ac_mcs4_5g=18 -lvl_11n_11ac_mcs5_5g=18 -lvl_11n_11ac_mcs6_5g=18 -lvl_11n_11ac_mcs7_5g=17 -lvl_11n_11ac_mcs8_5g=15 -lvl_11n_11ac_mcs9_5g=15 -lvl_11ax_mcs0_5g=19 -lvl_11ax_mcs1_5g=19 -lvl_11ax_mcs2_5g=19 -lvl_11ax_mcs3_5g=18 -lvl_11ax_mcs4_5g=18 -lvl_11ax_mcs5_5g=18 -lvl_11ax_mcs6_5g=18 -lvl_11ax_mcs7_5g=17 -lvl_11ax_mcs8_5g=15 -lvl_11ax_mcs9_5g=15 -lvl_11ax_mcs10_5g=13 -lvl_11ax_mcs11_5g=13 - -# txpwr_lvl_adj -lvl_adj_enable=0 -lvl_adj_2g4_chan_1_4=0 -lvl_adj_2g4_chan_5_9=0 -lvl_adj_2g4_chan_10_13=0 -lvl_adj_5g_chan_42=0 -lvl_adj_5g_chan_58=0 -lvl_adj_5g_chan_106=0 -lvl_adj_5g_chan_122=0 -lvl_adj_5g_chan_138=0 -lvl_adj_5g_chan_155=0 - -# txpwr_loss -loss_enable_2g4=0 -loss_value_2g4=2 -loss_enable_5g=0 -loss_value_5g=5 - -# txpwr_ofst -ofst_enable=0 -ofst_2g4_11b_chan_1_4=0 -ofst_2g4_11b_chan_5_9=0 -ofst_2g4_11b_chan_10_13=0 -ofst_2g4_ofdm_highrate_chan_1_4=0 -ofst_2g4_ofdm_highrate_chan_5_9=0 -ofst_2g4_ofdm_highrate_chan_10_13=0 -ofst_2g4_ofdm_lowrate_chan_1_4=0 -ofst_2g4_ofdm_lowrate_chan_5_9=0 -ofst_2g4_ofdm_lowrate_chan_10_13=0 -ofst_5g_ofdm_lowrate_chan_42=0 -ofst_5g_ofdm_lowrate_chan_58=0 -ofst_5g_ofdm_lowrate_chan_106=0 -ofst_5g_ofdm_lowrate_chan_122=0 -ofst_5g_ofdm_lowrate_chan_138=0 -ofst_5g_ofdm_lowrate_chan_155=0 -ofst_5g_ofdm_highrate_chan_42=0 -ofst_5g_ofdm_highrate_chan_58=0 -ofst_5g_ofdm_highrate_chan_106=0 -ofst_5g_ofdm_highrate_chan_122=0 -ofst_5g_ofdm_highrate_chan_138=0 -ofst_5g_ofdm_highrate_chan_155=0 -ofst_5g_ofdm_midrate_chan_42=0 -ofst_5g_ofdm_midrate_chan_58=0 -ofst_5g_ofdm_midrate_chan_106=0 -ofst_5g_ofdm_midrate_chan_122=0 -ofst_5g_ofdm_midrate_chan_138=0 -ofst_5g_ofdm_midrate_chan_155=0 - -# xtal cap -xtal_enable=0 -xtal_cap=24 -xtal_cap_fine=31 - - - diff --git a/fw/aic8800D80/aic_userconfig_8800d80_u11_cus.txt b/fw/aic8800D80/aic_userconfig_8800d80_u11_cus.txt deleted file mode 100644 index f58796c..0000000 --- a/fw/aic8800D80/aic_userconfig_8800d80_u11_cus.txt +++ /dev/null @@ -1,124 +0,0 @@ -# AIC USERCONFIG 2022/0803/1707 - -# txpwr_lvl -enable=1 -lvl_11b_11ag_1m_2g4=18 -lvl_11b_11ag_2m_2g4=18 -lvl_11b_11ag_5m5_2g4=18 -lvl_11b_11ag_11m_2g4=18 -lvl_11b_11ag_6m_2g4=18 -lvl_11b_11ag_9m_2g4=18 -lvl_11b_11ag_12m_2g4=18 -lvl_11b_11ag_18m_2g4=18 -lvl_11b_11ag_24m_2g4=18 -lvl_11b_11ag_36m_2g4=18 -lvl_11b_11ag_48m_2g4=18 -lvl_11b_11ag_54m_2g4=17 -lvl_11n_11ac_mcs0_2g4=20 -lvl_11n_11ac_mcs1_2g4=20 -lvl_11n_11ac_mcs2_2g4=20 -lvl_11n_11ac_mcs3_2g4=20 -lvl_11n_11ac_mcs4_2g4=20 -lvl_11n_11ac_mcs5_2g4=19 -lvl_11n_11ac_mcs6_2g4=18 -lvl_11n_11ac_mcs7_2g4=18 -lvl_11n_11ac_mcs8_2g4=17 -lvl_11n_11ac_mcs9_2g4=16 -lvl_11ax_mcs0_2g4=20 -lvl_11ax_mcs1_2g4=20 -lvl_11ax_mcs2_2g4=20 -lvl_11ax_mcs3_2g4=20 -lvl_11ax_mcs4_2g4=20 -lvl_11ax_mcs5_2g4=19 -lvl_11ax_mcs6_2g4=18 -lvl_11ax_mcs7_2g4=18 -lvl_11ax_mcs8_2g4=17 -lvl_11ax_mcs9_2g4=17 -lvl_11ax_mcs10_2g4=16 -lvl_11ax_mcs11_2g4=16 -lvl_11a_6m_5g=18 -lvl_11a_9m_5g=18 -lvl_11a_12m_5g=18 -lvl_11a_18m_5g=18 -lvl_11a_24m_5g=18 -lvl_11a_36m_5g=18 -lvl_11a_48m_5g=18 -lvl_11a_54m_5g=18 -lvl_11n_11ac_mcs0_5g=20 -lvl_11n_11ac_mcs1_5g=19 -lvl_11n_11ac_mcs2_5g=19 -lvl_11n_11ac_mcs3_5g=18 -lvl_11n_11ac_mcs4_5g=18 -lvl_11n_11ac_mcs5_5g=18 -lvl_11n_11ac_mcs6_5g=18 -lvl_11n_11ac_mcs7_5g=17 -lvl_11n_11ac_mcs8_5g=16 -lvl_11n_11ac_mcs9_5g=16 -lvl_11ax_mcs0_5g=20 -lvl_11ax_mcs1_5g=19 -lvl_11ax_mcs2_5g=19 -lvl_11ax_mcs3_5g=18 -lvl_11ax_mcs4_5g=18 -lvl_11ax_mcs5_5g=18 -lvl_11ax_mcs6_5g=18 -lvl_11ax_mcs7_5g=17 -lvl_11ax_mcs8_5g=16 -lvl_11ax_mcs9_5g=16 -lvl_11ax_mcs10_5g=15 -lvl_11ax_mcs11_5g=15 - -# txpwr_lvl_adj -lvl_adj_enable=0 -lvl_adj_2g4_chan_1_4=0 -lvl_adj_2g4_chan_5_9=0 -lvl_adj_2g4_chan_10_13=0 -lvl_adj_5g_chan_42=0 -lvl_adj_5g_chan_58=0 -lvl_adj_5g_chan_106=0 -lvl_adj_5g_chan_122=0 -lvl_adj_5g_chan_138=0 -lvl_adj_5g_chan_155=0 - -# txpwr_loss -loss_enable_2g4=0 -loss_value_2g4=2 -loss_enable_5g=0 -loss_value_5g=5 - -# txpwr_ofst -ofst_enable=0 -ofst_2g4_11b_chan_1_4=0 -ofst_2g4_11b_chan_5_9=0 -ofst_2g4_11b_chan_10_13=0 -ofst_2g4_ofdm_highrate_chan_1_4=0 -ofst_2g4_ofdm_highrate_chan_5_9=0 -ofst_2g4_ofdm_highrate_chan_10_13=0 -ofst_2g4_ofdm_lowrate_chan_1_4=0 -ofst_2g4_ofdm_lowrate_chan_5_9=0 -ofst_2g4_ofdm_lowrate_chan_10_13=0 -ofst_5g_ofdm_lowrate_chan_42=0 -ofst_5g_ofdm_lowrate_chan_58=0 -ofst_5g_ofdm_lowrate_chan_106=0 -ofst_5g_ofdm_lowrate_chan_122=0 -ofst_5g_ofdm_lowrate_chan_138=0 -ofst_5g_ofdm_lowrate_chan_155=0 -ofst_5g_ofdm_highrate_chan_42=0 -ofst_5g_ofdm_highrate_chan_58=0 -ofst_5g_ofdm_highrate_chan_106=0 -ofst_5g_ofdm_highrate_chan_122=0 -ofst_5g_ofdm_highrate_chan_138=0 -ofst_5g_ofdm_highrate_chan_155=0 -ofst_5g_ofdm_midrate_chan_42=0 -ofst_5g_ofdm_midrate_chan_58=0 -ofst_5g_ofdm_midrate_chan_106=0 -ofst_5g_ofdm_midrate_chan_122=0 -ofst_5g_ofdm_midrate_chan_138=0 -ofst_5g_ofdm_midrate_chan_155=0 - -# xtal cap -xtal_enable=0 -xtal_cap=24 -xtal_cap_fine=31 - - - diff --git a/fw/aic8800D80/aic_userconfig_8800d80_u11_pro.txt b/fw/aic8800D80/aic_userconfig_8800d80_u11_pro.txt deleted file mode 100644 index f6de9fd..0000000 --- a/fw/aic8800D80/aic_userconfig_8800d80_u11_pro.txt +++ /dev/null @@ -1,124 +0,0 @@ -# AIC USERCONFIG 2022/0803/1707 - -# txpwr_lvl -enable=1 -lvl_11b_11ag_1m_2g4=20 -lvl_11b_11ag_2m_2g4=20 -lvl_11b_11ag_5m5_2g4=20 -lvl_11b_11ag_11m_2g4=20 -lvl_11b_11ag_6m_2g4=20 -lvl_11b_11ag_9m_2g4=20 -lvl_11b_11ag_12m_2g4=20 -lvl_11b_11ag_18m_2g4=20 -lvl_11b_11ag_24m_2g4=20 -lvl_11b_11ag_36m_2g4=19 -lvl_11b_11ag_48m_2g4=18 -lvl_11b_11ag_54m_2g4=17 -lvl_11n_11ac_mcs0_2g4=20 -lvl_11n_11ac_mcs1_2g4=20 -lvl_11n_11ac_mcs2_2g4=20 -lvl_11n_11ac_mcs3_2g4=20 -lvl_11n_11ac_mcs4_2g4=20 -lvl_11n_11ac_mcs5_2g4=19 -lvl_11n_11ac_mcs6_2g4=18 -lvl_11n_11ac_mcs7_2g4=17 -lvl_11n_11ac_mcs8_2g4=17 -lvl_11n_11ac_mcs9_2g4=16 -lvl_11ax_mcs0_2g4=20 -lvl_11ax_mcs1_2g4=20 -lvl_11ax_mcs2_2g4=20 -lvl_11ax_mcs3_2g4=20 -lvl_11ax_mcs4_2g4=20 -lvl_11ax_mcs5_2g4=19 -lvl_11ax_mcs6_2g4=18 -lvl_11ax_mcs7_2g4=17 -lvl_11ax_mcs8_2g4=17 -lvl_11ax_mcs9_2g4=16 -lvl_11ax_mcs10_2g4=15 -lvl_11ax_mcs11_2g4=15 -lvl_11a_6m_5g=19 -lvl_11a_9m_5g=19 -lvl_11a_12m_5g=19 -lvl_11a_18m_5g=18 -lvl_11a_24m_5g=18 -lvl_11a_36m_5g=18 -lvl_11a_48m_5g=18 -lvl_11a_54m_5g=18 -lvl_11n_11ac_mcs0_5g=19 -lvl_11n_11ac_mcs1_5g=19 -lvl_11n_11ac_mcs2_5g=19 -lvl_11n_11ac_mcs3_5g=18 -lvl_11n_11ac_mcs4_5g=18 -lvl_11n_11ac_mcs5_5g=18 -lvl_11n_11ac_mcs6_5g=18 -lvl_11n_11ac_mcs7_5g=17 -lvl_11n_11ac_mcs8_5g=15 -lvl_11n_11ac_mcs9_5g=15 -lvl_11ax_mcs0_5g=19 -lvl_11ax_mcs1_5g=19 -lvl_11ax_mcs2_5g=19 -lvl_11ax_mcs3_5g=18 -lvl_11ax_mcs4_5g=18 -lvl_11ax_mcs5_5g=18 -lvl_11ax_mcs6_5g=18 -lvl_11ax_mcs7_5g=17 -lvl_11ax_mcs8_5g=15 -lvl_11ax_mcs9_5g=15 -lvl_11ax_mcs10_5g=14 -lvl_11ax_mcs11_5g=14 - -# txpwr_lvl_adj -lvl_adj_enable=0 -lvl_adj_2g4_chan_1_4=0 -lvl_adj_2g4_chan_5_9=0 -lvl_adj_2g4_chan_10_13=0 -lvl_adj_5g_chan_42=0 -lvl_adj_5g_chan_58=0 -lvl_adj_5g_chan_106=0 -lvl_adj_5g_chan_122=0 -lvl_adj_5g_chan_138=0 -lvl_adj_5g_chan_155=0 - -# txpwr_loss -loss_enable_2g4=0 -loss_value_2g4=2 -loss_enable_5g=0 -loss_value_5g=5 - -# txpwr_ofst -ofst_enable=0 -ofst_2g4_11b_chan_1_4=0 -ofst_2g4_11b_chan_5_9=0 -ofst_2g4_11b_chan_10_13=0 -ofst_2g4_ofdm_highrate_chan_1_4=0 -ofst_2g4_ofdm_highrate_chan_5_9=0 -ofst_2g4_ofdm_highrate_chan_10_13=0 -ofst_2g4_ofdm_lowrate_chan_1_4=0 -ofst_2g4_ofdm_lowrate_chan_5_9=0 -ofst_2g4_ofdm_lowrate_chan_10_13=0 -ofst_5g_ofdm_lowrate_chan_42=0 -ofst_5g_ofdm_lowrate_chan_58=0 -ofst_5g_ofdm_lowrate_chan_106=0 -ofst_5g_ofdm_lowrate_chan_122=0 -ofst_5g_ofdm_lowrate_chan_138=0 -ofst_5g_ofdm_lowrate_chan_155=0 -ofst_5g_ofdm_highrate_chan_42=0 -ofst_5g_ofdm_highrate_chan_58=0 -ofst_5g_ofdm_highrate_chan_106=0 -ofst_5g_ofdm_highrate_chan_122=0 -ofst_5g_ofdm_highrate_chan_138=0 -ofst_5g_ofdm_highrate_chan_155=0 -ofst_5g_ofdm_midrate_chan_42=0 -ofst_5g_ofdm_midrate_chan_58=0 -ofst_5g_ofdm_midrate_chan_106=0 -ofst_5g_ofdm_midrate_chan_122=0 -ofst_5g_ofdm_midrate_chan_138=0 -ofst_5g_ofdm_midrate_chan_155=0 - -# xtal cap -xtal_enable=0 -xtal_cap=24 -xtal_cap_fine=31 - - - diff --git a/fw/aic8800D80/fmacfw_8800d80_h_u02.bin b/fw/aic8800D80/fmacfw_8800d80_h_u02.bin deleted file mode 100644 index 868bd38..0000000 Binary files a/fw/aic8800D80/fmacfw_8800d80_h_u02.bin and /dev/null differ diff --git a/fw/aic8800D80/fmacfw_8800d80_h_u02_ipc.bin b/fw/aic8800D80/fmacfw_8800d80_h_u02_ipc.bin deleted file mode 100644 index 6138563..0000000 Binary files a/fw/aic8800D80/fmacfw_8800d80_h_u02_ipc.bin and /dev/null differ diff --git a/fw/aic8800D80/fmacfw_8800d80_u02.bin b/fw/aic8800D80/fmacfw_8800d80_u02.bin index 5891122..76bdf63 100644 Binary files a/fw/aic8800D80/fmacfw_8800d80_u02.bin and b/fw/aic8800D80/fmacfw_8800d80_u02.bin differ diff --git a/fw/aic8800D80/fmacfw_8800d80_u02_ipc.bin b/fw/aic8800D80/fmacfw_8800d80_u02_ipc.bin index b8286d2..4b03cd3 100644 Binary files a/fw/aic8800D80/fmacfw_8800d80_u02_ipc.bin and b/fw/aic8800D80/fmacfw_8800d80_u02_ipc.bin differ diff --git a/fw/aic8800D80/fw_ble_scan_ad_filter.bin b/fw/aic8800D80/fw_ble_scan_ad_filter.bin index 490324b..ca17f67 100644 Binary files a/fw/aic8800D80/fw_ble_scan_ad_filter.bin and b/fw/aic8800D80/fw_ble_scan_ad_filter.bin differ diff --git a/fw/aic8800D80/fw_patch_8800d80_u02.bin b/fw/aic8800D80/fw_patch_8800d80_u02.bin index be2bc89..b3234d9 100644 Binary files a/fw/aic8800D80/fw_patch_8800d80_u02.bin and b/fw/aic8800D80/fw_patch_8800d80_u02.bin differ diff --git a/fw/aic8800D80/fw_patch_8800d80_u02_ext0.bin b/fw/aic8800D80/fw_patch_8800d80_u02_ext0.bin deleted file mode 100644 index be2bacb..0000000 Binary files a/fw/aic8800D80/fw_patch_8800d80_u02_ext0.bin and /dev/null differ diff --git a/fw/aic8800D80/fw_patch_8800d80_u04.bin b/fw/aic8800D80/fw_patch_8800d80_u04.bin deleted file mode 100644 index 5c92852..0000000 Binary files a/fw/aic8800D80/fw_patch_8800d80_u04.bin and /dev/null differ diff --git a/fw/aic8800D80/fw_patch_table_8800d80_u02.bin b/fw/aic8800D80/fw_patch_table_8800d80_u02.bin index 2b95e93..4907160 100644 Binary files a/fw/aic8800D80/fw_patch_table_8800d80_u02.bin and b/fw/aic8800D80/fw_patch_table_8800d80_u02.bin differ diff --git a/fw/aic8800D80/fw_patch_table_8800d80_u04.bin b/fw/aic8800D80/fw_patch_table_8800d80_u04.bin deleted file mode 100644 index 2b5ff39..0000000 Binary files a/fw/aic8800D80/fw_patch_table_8800d80_u04.bin and /dev/null differ diff --git a/fw/aic8800D80/lmacfw_rf_8800d80_u02.bin b/fw/aic8800D80/lmacfw_rf_8800d80_u02.bin index 1cd05ba..07716a6 100644 Binary files a/fw/aic8800D80/lmacfw_rf_8800d80_u02.bin and b/fw/aic8800D80/lmacfw_rf_8800d80_u02.bin differ diff --git a/tests/issue58-mcu1-legacy-fw/README.md b/tests/issue58-mcu1-legacy-fw/README.md new file mode 100644 index 0000000..65da550 --- /dev/null +++ b/tests/issue58-mcu1-legacy-fw/README.md @@ -0,0 +1,99 @@ +# Issue #58: legacy firmware test for D80 MCU revision 1 + +This branch is an experimental build for +[issue #58](https://github.com/shenmintao/aic8800d80/issues/58). It is intended +only for AIC8800D80 devices reported as: + +```text +chip_id=7, chip_mcu_id=1 +``` + +Do not merge this branch as a general firmware downgrade. It replaces the +complete `fw/aic8800D80` firmware set so that an affected device can test one +specific hypothesis. Firmware for D80N, D80X2, DC, and other variants is not +changed. + +## Hypothesis + +The affected device times out when an FMAC upload reaches address `0x170400`. +With an upload base of `0x120000`, this suggests that the old MCU revision has +an FMAC RAM window of about `0x50400` (328,704) bytes. + +| Firmware | Size | End address (exclusive) | Result relative to `0x170400` | +| --- | ---: | ---: | ---: | +| Current V5 FMAC | 358,072 bytes | `0x1776B8` | 29,368 bytes over | +| Legacy V3 FMAC in this branch | 327,037 bytes | `0x16FD7D` | 1,667 bytes free | + +This branch uses the complete matching D80 firmware set from Radxa SDK V3, +fixed at upstream commit +[`254d47e6a131dbed5ba32131972f4719f3e1c7fe`](https://github.com/radxa-pkg/aic8800/commit/254d47e6a131dbed5ba32131972f4719f3e1c7fe). +The normal FMAC file has SHA-256 +`1ec680c2b63dcaa0e5d33c5fb6d1857d030f8145c05c385e243760388a61a0da`. + +## Install the test branch + +From an existing clone: + +```bash +git fetch origin +git switch test/issue-58-mcu1-legacy-fw +sudo ./install.sh +``` + +Disconnect and reconnect the USB device after installation. Reboot if the +device does not re-enumerate cleanly. + +## Verify + +First save the complete kernel log and confirm that firmware upload passes the +old failure address without a command timeout: + +```bash +sudo dmesg -C +# Disconnect and reconnect the device, then wait for initialization. +sudo dmesg | tee issue58-legacy-fw-dmesg.txt +sudo dmesg | grep -iE 'aic|chip_id|chip_mcu_id|fmacfw|bin upload|cmd timed-out' +``` + +Please report all of the following, even if an earlier item fails: + +1. The `chip_id` and `chip_mcu_id` lines, and whether firmware upload completes. +2. Whether nearby SSIDs can be scanned. +3. Whether Wi-Fi association succeeds. +4. Whether the interface receives an address by DHCP. +5. Whether the gateway and an Internet address can be pinged, and whether real + traffic works. +6. Whether Bluetooth still enumerates and works through the kernel's standard + `btusb` driver. This test does not install or use `aic_btusb`. + +Useful commands: + +```bash +iw dev +nmcli device wifi list +ip address +ip route +ping -c 4 "$(ip route | awk '/default/ {print $3; exit}')" +ping -c 4 1.1.1.1 +lsusb -t +bluetoothctl list +``` + +If NetworkManager is unavailable, identify the interface with `iw dev`, then +replace `wlan0` below with that interface name: + +```bash +sudo iw dev wlan0 scan | grep SSID +``` + +## Return to the current V5 firmware + +The installer replaces the firmware under `/lib/firmware`, so merely switching +Git branches is not enough. Reinstall after returning to `main`: + +```bash +git switch main +git pull --ff-only +sudo ./install.sh +sudo reboot +```