Updating the optimization\acceleration procedure (author @tkaiser) (#4417)

This commit is contained in:
Oleg
2022-11-11 19:20:07 +03:00
committed by GitHub
parent 3431bb7ab3
commit d0d8a35db8
2 changed files with 371 additions and 124 deletions

View File

@@ -1,130 +1,356 @@
#AP6256_NVRAM_V1.2_09202018.txt
# Cloned from bcm94345wlpagb_p2xx.txt
NVRAMRev=$Rev: 498373 $
# AP6275S_NVRAM_V1.7_20210726
# AP6275S v00 WLBGA reference board, iPA version.
# SSID generated using Alberto's boardssid.py script:
# ********************SUMMARY********************
# Board Name: AP6275S_V00
#SSID: 0x086d
#macmid: 0x02df
# Successfully made SSID entry in sromdefs.tcl.
# Successfully made macmid entry in sromdefs.tcl.
# Successfully made SSID entry in tblssid.py.
# *************************************************
# $ Copyright Broadcom $
#
#
# <<Broadcom-WL-IPTag/Proprietary:>>
NVRAMRev=$Rev: 844050 $
sromrev=11
vendid=0x14e4
devid=0x43ab
manfid=0x2d0
prodid=0x06e4
macaddr=00:90:4c:c5:12:38
nocrc=1
boardtype=0x6e4
boardrev=0x1304
boardrev=0x1213
boardtype=0x08ed
boardflags=0x00400201
boardflags2=0xc0800000
boardflags3=0x40002180
#boardnum=57410
macaddr=00:90:4c:12:d0:01
jtag_irw=38
#XTAL 37.4MHz
xtalfreq=37400
btc_mode=1
#-----------------------------------------
#boardflags: 5GHz eTR switch by default
# 2.4GHz eTR switch by default
# bit1 for btcoex
boardflags=0x00480201
boardflags2=0x40800000
boardflags3=0x48200100
phycal_tempdelta=15
rxchain=1
txchain=1
aa2g=1
aa5g=1
tssipos5g=1
tssipos2g=1
femctrl=0
AvVmid_c0=1,165,2,100,2,100,2,100,2,100
pa2ga0=-154,5722,-656
#1pa2ga0=-195,5558,-672
pa2ga1=-118,4850,-635
pa5ga0=-193,6098,-740,-192,6095,-738,-199,5996,-730,-182,6148,-741
#3pa5ga0=-214,6002,-737,-209,6102,-746,-209,6024,-738,-200,6149,-747
#2pa5ga0=-203,5495,-683,-205,5489,-682,-207,5494,-678,-208,5549,-683
#1pa5ga0=-203,5495,-683,-205,5489,-682,-207,5494,-678,-185,6130,-740
pa5ga1=-142,4930,-655,-150,4859,-646,-156,4887,-644,-158,4864,-641
itrsw=1
pdoffset2g40ma0=10
pdoffset40ma0=0xaaaa
pdoffset80ma0=0xaaaa
extpagain5g=2
extpagain2g=2
tworangetssi2g=0
tworangetssi5g=0
# LTECX flags
# WCI2
ltecxmux=0
ltecxpadnum=0x0504
ltecxfnsel=0x22
ltecxgcigpio=0x32
maxp2ga0=78
cckbw202gpo=0x5555
cckbw20ul2gpo=0x5555
ofdmlrbw202gpo=0x2244
dot11agofdmhrbw202gpo=0x7744
ccode=DE
#Regulatory specific
ccode=0
regrev=0
# Board specific
vendid=0x14e4
devid=0x449d
manfid=0x2d0
antswitch=0
pdgain5g=0
pdgain2g=0
aa2g=3
aa5g=3
agbg0=2
agbg1=2
aga0=2
aga1=2
extpagain2g=2
extpagain5g=2
rxgains2gelnagaina0=0
rxgains2gtrisoa0=0
rxgains2gtrelnabypa0=0
rxgains5gelnagaina0=0
rxgains5gtrisoa0=0
rxgains5gtrelnabypa0=0
rxgains5gmelnagaina0=0
rxgains5gmtrisoa0=0
rxgains5gmtrelnabypa0=0
rxgains5ghelnagaina0=0
rxgains5ghtrisoa0=0
rxgains5ghtrelnabypa0=0
rxgains2gelnagaina1=0
rxgains2gtrisoa1=0
rxgains2gtrelnabypa1=0
rxgains5gelnagaina1=0
rxgains5gtrisoa1=0
rxgains5gtrelnabypa1=0
rxgains5gmelnagaina1=0
rxgains5gmtrisoa1=0
rxgains5gmtrelnabypa1=0
rxgains5ghelnagaina1=0
rxgains5ghtrisoa1=0
rxgains5ghtrelnabypa1=0
mcsbw202gpo=0x98886422
mcsbw402gpo=0x98777755
maxp5ga0=75,75,75,76
#5GHz_20MHz Offset
mcsbw205glpo=0xba753311
mcsbw205gmpo=0xba753311
mcsbw205ghpo=0xba753311
#5GHz_40MHz Offset
mcsbw405glpo=0xe8753311
mcsbw405gmpo=0xe8753311
mcsbw405ghpo=0xd9753311
#5GHz_80MHz Offset
mcsbw805glpo=0xea633311
mcsbw805gmpo=0xe7422211
mcsbw805ghpo=0xda632211
#RSSI related
# 2G
rssicorrnorm_c0=4,4
rssicorrnorm_c1=4,4
# 5G
rssicorrnorm5g_c0=5,5,5,5,5,5,5,5,5,5,5,5
rssicorrnorm5g_c1=4,4,4,4,4,4,4,4,4,4,4,4
swctrlmap_2g=0x00000000,0x00000000,0x00000000,0x010000,0x3ff
swctrlmap_5g=0x00100010,0x00200020,0x00200020,0x010000,0x3fe
swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x3
swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x3
#Two range TSSI
tworangetssi2g=0
tworangetssi5g=0
lowpowerrange2g=0
lowpowerrange5g=0
low_adc_rate_en=1
# NOTE :================================================================================
# To run TPC with Two Range TSSI ,set tworangetssi2g = 1 and lowpowerrange2g = 0
# To run TPC with Single Range TSSI, set tworangetssi2g = 0
# To run TPC please READ instructions near pa2ga0 and pa2ga1 as well
# To generate PA params for Low Range set tworangetssi2g = 0 and lowpowerrange2g to 1
# To generate PA params for High Range set tworangetssi2g = 1 and lowpowerrange2g to 1
# ======================================================================================
vcodivmode=1
deadman_to=481500000
ed_thresh2g=-54
ed_thresh5g=-54
eu_edthresh2g=-54
eu_edthresh5g=-54
#Related to FW Download. Host may use this
nocrc=1
#ed_thresh2g=-69
#ed_thresh5g=-69
#eu_edthresh2g=-69
#eu_edthresh5g=-69
ldo1=4
otpimagesize=502
xtalfreq=37400
txchain=3
rxchain=3
cckdigfilttype=2
#bit mask for slice capability bit 0:2G bit 1:5G
bandcap=3
#TXBF Related
rpcal2g=0
rpcal5gb0=0
rpcal5gb1=0
rpcal5gb2=0
rpcal5gb3=0
#FDSS Related
fdss_level_2g=4,4
fdss_interp_en=1
fdss_level_5g=4,4
fdss_level_11ax_2g=3,3
fdss_level_11ax_2g_ch1=3,3
fdss_level_11ax_2g_ch11=3,3
fdss_level_11ax_5g=3,3
#Tempsense Related
tempthresh=255
tempoffset=40
rawtempsense=0x1ff
cckPwrIdxCorr=3
cckTssiDelay=150
ofdmTssiDelay=150
txpwr2gAdcScale=1
txpwr5gAdcScale=1
dot11b_opts=0x3aa85
cbfilttype=0
#fdsslevel_ch1=6
#fdsslevel_ch11=4
#btc_mode=1
phycal_tempdelta=15
temps_period=15
temps_hysteresis=15
#------------- TSSI Related -------------
tssipos2g=1
tssipos5g=1
AvVmid_c0=2,127,4,92,4,91,4,91,4,94
AvVmid_c1=2,127,4,93,4,93,4,95,3,110
# CCK in case of multi mode 2
pa2gccka0=-71,9683,-1064
pa2gccka1=-59,9596,-1046
# OFDM in case of multi_mode 2
pa2ga0=-131,6980,-771
pa2ga1=-119,7130,-776
pa5ga0=-150,6098,-730,-141,6312,-729,-127,6151,-723,-136,5935,-702
#pa5ga0=-150,6098,-730,-141,6312,-729,-136,6050,-713,-179,5504,-688
#pa5ga1=-143,5954,-705,-136,6243,-722,-100,6496,-727,-89,7190,-798
pa5ga1=-148,6016,-719,-136,6243,-722,-123,6019,-711,-89,7190,-798
# Max power and offsets
maxp2ga0=86
maxp2ga1=91
maxp5ga0=75,76,68,68
maxp5ga1=73,76,70,76
subband5gver=0x4
paparambwver=3
cckpwroffset0=-5
cckpwroffset1=-3
pdoffset40ma0=0x4433
pdoffset80ma0=0x3232
pdoffset40ma1=0x2333
pdoffset80ma1=0x1222
cckbw202gpo=0x1111
cckbw20ul2gpo=0x0000
mcsbw202gpo=0x65544332
mcsbw402gpo=0xEC444332
dot11agofdmhrbw202gpo=0x4433
ofdmlrbw202gpo=0x0022
mcsbw205glpo=0xA9533333
mcsbw405glpo=0xB6443333
mcsbw805glpo=0xCC553333
mcsbw1605glpo=0
mcsbw205gmpo=0x98544444
mcsbw405gmpo=0xB6443333
mcsbw805gmpo=0xBB553333
mcsbw1605gmpo=0
mcsbw205ghpo=0x98422232
mcsbw405ghpo=0xB7554443
mcsbw805ghpo=0xCC443333
powoffs2gtna0=-3,-2,-2,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,0
powoffs2gtna1=-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0
mcs1024qam2gpo=0xCCAA
mcs1024qam5glpo=0xFFFFCB
mcs1024qam5gmpo=0xFFEECB
mcs1024qam5ghpo=0xFFFFED
mcs1024qam5gx1po=0xEECCCC
mcs1024qam5gx2po=0xEECCCC
mcs8poexp=0
mcs9poexp=0
mcs10poexp=0
# 5G power offset per channel for band edge channel
powoffs5g20mtna0=0,0,0,0,0,0,0
powoffs5g20mtna1=0,0,0,0,0,0,0
powoffs5g40mtna0=0,0,0,0,0
powoffs5g40mtna1=0,0,0,0,0
powoffs5g80mtna0=0,0,0,0,0
powoffs5g80mtna1=0,0,0,0,0
mcs11poexp=0
#LTE Coex Related
ltecxmux=0
ltecxpadnum=0x0504
ltecxfnsel=0x44
ltecxgcigpio=0x04
#OOB params
#device_wake_opt=1
host_wake_opt=0
# SWCTRL Related
swctrlmap_2g=0x10101010,0x06030401,0x04011010,0x000000,0x3FF
swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x000
swctrlmap_5g=0x80408040,0x21240120,0x01208040,0x000000,0x3FF
swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x000
clb2gslice0core0=0x01b
clb2gslice1core0=0x000
clb5gslice0core0=0x064
clb5gslice1core0=0x000
clb2gslice0core1=0x056
clb2gslice1core1=0x000
clb5gslice0core1=0x0a1
clb5gslice1core1=0x000
btc_prisel_ant_mask=0x2
clb_swctrl_smask_ant0=0x27f
clb_swctrl_smask_ant1=0x2f7
#BT Coex 1:TDM
btc_mode=1
# --- PAPD Cal related params ----
txwbpapden=0 # 0:NBPAPD 1:WBPAPD
# NB PAPD Cal params
nb_eps_offset=470,470
nb_bbmult=66,66
nb_papdcalidx=6,6
nb_txattn=2,2
nb_rxattn=1,1
nb_eps_stopidx=63
epsilonoff_5g20_c0=0,1,1,-1
epsilonoff_5g40_c0=0,1,1,1
epsilonoff_5g80_c0=1,0,1,1
epsilonoff_5g20_c1=1,0,0,-1
epsilonoff_5g40_c1=0,0,0,0
epsilonoff_5g80_c1=1,0,1,1
epsilonoff_2g20_c0=0
epsilonoff_2g20_c1=0
# energy detect threshold
ed_thresh2g=-67
ed_thresh5g=-67
# energy detect threshold for EU
eu_edthresh2g=-67
eu_edthresh5g=-67
#rpcal coef for imptxbf
rpcal5gb0=238
rpcal5gb1=228
rpcal5gb2=222
rpcal5gb3=229
rpcal2g=15
ocl=0
bt_coex_chdep_div=1
# OLPC Related
disable_olpc=0
olpc_thresh5g=32
olpc_anchor5g=40
olpc_thresh2g=32
olpc_anchor2g=40
#PAPR related
paprdis=0
paprrmcsgamma2g=500,550,550,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain2g=128,128,128,0,0,0,0,0,0,0,0,0
paprrmcsgamma2g_ch13=500,550,550,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain2g_ch13=128,128,128,0,0,0,0,0,0,0,0,0
paprrmcsgamma2g_ch1=500,550,550,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain2g_ch1=128,128,128,0,0,0,0,0,0,0,0,0
paprrmcsgamma5g20=500,500,500,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain5g20=128,128,128,0,0,0,0,0,0,0,0,0
paprrmcsgamma5g40=600,600,600,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain5g40=128,128,128,0,0,0,0,0,0,0,0,0
paprrmcsgamma5g80=-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
paprrmcsgain5g80=0,0,0,0,0,0,0,0,0,0,0,0
# Enable papd for cck when target pwr ge 16dBm
cckpapd_pwrthresh=64
## ULOFDMA Board limit PPRs for 2G20 ##
ruppr2g20bpska0=0x8421
ruppr2g20bpska1=0x8421
ruppr2g20qpska0=0x8421
ruppr2g20qpska1=0x8421
ruppr2g20qam16a0=0x10842
ruppr2g20qam16a1=0x10842
ruppr2g20qam64a0=0x18C63
ruppr2g20qam64a1=0x18C63
ruppr2g20qam256a0=0x318C6
ruppr2g20qam256a1=0x318C6
ruppr2g20qam1024a0=0x5AD6B
ruppr2g20qam1024a1=0x5AD6B
## ULOFDMA Board limit PPRs for 5G20 ##
ruppr5g20bpska0=0x30C63
ruppr5g20bpska1=0x30C63
ruppr5g20qpska0=0x30C63
ruppr5g20qpska1=0x30C63
ruppr5g20qam16a0=0x30C63
ruppr5g20qam16a1=0x30C63
ruppr5g20qam64a0=0x314A5
ruppr5g20qam64a1=0x314A5
ruppr5g20qam256a0=0x4A529
ruppr5g20qam256a1=0x4A529
ruppr5g20qam1024a0=0x7294A
ruppr5g20qam1024a1=0x7294A
## ULOFDMA Board limit PPRs for 5G40 ##
ruppr5g40bpska0=0x518C63
ruppr5g40bpska1=0x518C63
ruppr5g40qpska0=0x518C63
ruppr5g40qpska1=0x518C63
ruppr5g40qam16a0=0x518C63
ruppr5g40qam16a1=0x518C63
ruppr5g40qam64a0=0x518C63
ruppr5g40qam64a1=0x518C63
ruppr5g40qam256a0=0xA42108
ruppr5g40qam256a1=0xA42108
ruppr5g40qam1024a0=0xE68421
ruppr5g40qam1024a1=0xE68421
## ULOFDMA Board limit PPRs for 5G80 ##
ruppr5g80bpska0=0xC318C63
ruppr5g80bpska1=0xC318C63
ruppr5g80qpska0=0xC318C63
ruppr5g80qpska1=0xC318C63
ruppr5g80qam16a0=0xC318C63
ruppr5g80qam16a1=0xC318C63
ruppr5g80qam64a0=0x14418C63
ruppr5g80qam64a1=0x14418C63
ruppr5g80qam256a0=0x2C94A529
ruppr5g80qam256a1=0x2C94A529
ruppr5g80qam1024a0=0x3CD60000
ruppr5g80qam1024a1=0x3CD60000
muxenab=0x10
cckdigfilttype=5
# ########### BTC Dynctl profile params ############
# flags:bit0 - dynctl enabled, bit1 dynamic desense, bit2 dynamic mode, bit 3 TX power control
#btcdyn_flags=1
fdss_level_2g=6
#fdss_level_5g=6
#pacalshift5g=0,0,1
#btcdyn_default_btc_mode=5
#btcdyn_msw_rows=0
#btcdyn_dsns_rows=0
#btc_params1007=100
#btc_params1017=4

View File

@@ -78,15 +78,36 @@ prepare_board() {
grep -q ondemand /etc/default/cpufrequtils
if [ $? -eq 0 ]; then
echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cd /sys/devices/system/cpu
for i in cpufreq/ondemand cpu0/cpufreq/ondemand cpu4/cpufreq/ondemand ; do
if [ -d $i ]; then
echo 1 >${i}/io_is_busy
echo 25 >${i}/up_threshold
echo 10 >${i}/sampling_down_factor
echo 200000 >${i}/sampling_rate
case ${BOARDFAMILY} in
station*|media)
prefix="/sys/devices/system/cpu"
CPUFreqPolicies=($(ls -d ${prefix}/cpufreq/policy? | sed 's/freq\/policy//'))
if [ ${#CPUFreqPolicies[@]} -eq 1 -a -d "${prefix}/cpufreq" ]; then
# if there's just a single cpufreq policy ondemand sysfs entries differ
CPUFreqPolicies=${prefix}
fi
done
for i in ${CPUFreqPolicies[@]}; do
affected_cpu=$(tr -d -c '[:digit:]' <<< ${i})
echo ondemand >${prefix}/cpu${affected_cpu:-0}/cpufreq/scaling_governor
echo 1 >${i}/cpufreq/ondemand/io_is_busy
echo 25 >${i}/cpufreq/ondemand/up_threshold
echo 10 >${i}/cpufreq/ondemand/sampling_down_factor
echo 200000 >${i}/cpufreq/ondemand/sampling_rate
done
;;
*)
cd /sys/devices/system/cpu
for i in cpufreq/ondemand cpu0/cpufreq/ondemand cpu4/cpufreq/ondemand ; do
if [ -d $i ]; then
echo 1 >${i}/io_is_busy
echo 25 >${i}/up_threshold
echo 10 >${i}/sampling_down_factor
echo 200000 >${i}/sampling_rate
fi
done
;;
fi
# IRQ distribution based on $BOARDFAMILY and/or $BOARD_NAME