1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2019 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16
17<!-- These resources are around just to allow their values to be customized
18     for different hardware and product builds.  Do not translate.
19
20     NOTE: The naming convention is "config_camelCaseValue". Some legacy
21     entries do not follow the convention, but all new entries should. -->
22
23<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
24    <!-- boolean indicating whether the WiFi chipset has 24GHz band support -->
25    <bool translatable="false" name ="config_wifi24ghzSupport">true</bool>
26
27    <!-- boolean indicating whether the WiFi chipset has 5GHz band support.
28         Note: This config is replacing the config_wifi_dual_band_support
29         since more bands may now be supported (such as 6GHz), the naming dual_band
30         is no longer indicative, and a separate config now exists for each band -->
31    <bool translatable="false" name ="config_wifi5ghzSupport">false</bool>
32
33    <!-- boolean indicating whether the WiFi chipset has 6GHz band support -->
34    <bool translatable="false" name ="config_wifi6ghzSupport">false</bool>
35
36    <!-- boolean indicating whether the WiFi chipset has 60GHz band support -->
37    <bool translatable="false" name ="config_wifi60ghzSupport">false</bool>
38
39      <!-- Indicates that 11ax mode is supported on this device
40           Note that if this flag is set to true, then 11ax is assumed to be supported.
41           However, if it is left to the default value of false, the 11ax support will
42           be checked via NL80211 interface -->
43    <bool translatable="false" name="config_wifi11axSupportOverride">false</bool>
44
45    <!-- Indicates whether to enable overriding the max number of spatial stream supported by the device
46         If true, config_wifiFrameworkMaxNumSpatialStreamDeviceOverrideValue
47         will be used to override the max number of spatial stream supported by the device.
48         If false, it will be left to WifiCond to derive the value from NL80211 interface -->
49    <bool translatable="false" name="config_wifiFrameworkMaxNumSpatialStreamDeviceOverrideEnable">true</bool>
50    <integer translatable="false" name="config_wifiFrameworkMaxNumSpatialStreamDeviceOverrideValue">2</integer>
51
52    <!-- Boolean indicating whether 802.11r Fast BSS Transition is enabled on this platform -->
53    <bool translatable="false" name="config_wifi_fast_bss_transition_enabled">false</bool>
54
55    <!-- Device type information conforming to Annex B format in WiFi Direct specification.
56         The default represents a dual-mode smartphone -->
57    <string translatable="false" name="config_wifi_p2p_device_type">10-0050F204-5</string>
58
59    <!-- Boolean indicating whether the wifi chipset supports background scanning mechanism.
60         This mechanism allows the host to remain in suspend state and the dongle to actively
61         scan and wake the host when a configured SSID is detected by the dongle. This chipset
62         capability can provide power savings when wifi needs to be always kept on. -->
63    <bool translatable="false" name="config_wifi_background_scan_support">false</bool>
64
65    <!-- Boolean indicating whether or not to revert to default country code when cellular
66         radio is unable to find any MCC information to infer wifi country code from -->
67    <bool translatable="false" name="config_wifi_revert_country_code_on_cellular_loss">false</bool>
68
69    <!-- Integer size limit, in KB, for a single WifiLogger ringbuffer, in default logging mode -->
70    <integer translatable="false" name="config_wifi_logger_ring_buffer_default_size_limit_kb">32</integer>
71
72    <!-- Integer size limit, in KB, for a single WifiLogger ringbuffer, in verbose logging mode -->
73    <integer translatable="false" name="config_wifi_logger_ring_buffer_verbose_size_limit_kb">1024</integer>
74
75    <!-- Array indicating wifi fatal firmware alert error code list from driver -->
76    <integer-array translatable="false" name="config_wifi_fatal_firmware_alert_error_code_list">
77        <!-- Example:
78        <item>0</item>
79        <item>1</item>
80        <item>2</item>
81        -->
82    </integer-array>
83
84    <!-- Boolean indicating whether or not wifi should turn off when emergency call is made -->
85    <bool translatable="false" name="config_wifi_turn_off_during_emergency_call">false</bool>
86
87    <!-- Parameters for controlling network selection by the framework -->
88
89    <!-- The ratio of the next two parameters is the multiplier that converts the estimated
90         throughput in Mbps to score points. -->
91    <integer translatable="false" name="config_wifiFrameworkThroughputBonusNumerator">120</integer>
92    <integer translatable="false" name="config_wifiFrameworkThroughputBonusDenominator">433</integer>
93
94    <!-- Maximum contribution (in score points) due to the estimated throughput. -->
95    <integer translatable="false" name="config_wifiFrameworkThroughputBonusLimit">320</integer>
96
97    <!-- The default values chosen here establish four non-overlapping categories:
98             saved, unmetered
99             unsaved, unmetered
100             saved, metered
101             unsaved, metered
102         These values can be reduced to allow overlapping between categories. -->
103    <integer translatable="false" name="config_wifiFrameworkSavedNetworkBonus">500</integer>
104    <integer translatable="false" name="config_wifiFrameworkUnmeteredNetworkBonus">1000</integer>
105    <!-- Integer specifying the minimum bonus for current network -->
106    <integer translatable="false" name="config_wifiFrameworkCurrentNetworkBonusMin">20</integer>
107    <!-- Integer specifying the percent bonus for current network. The percent is applied to
108         the sum of rssi base score and throughput score-->
109    <integer translatable="false" name="config_wifiFrameworkCurrentNetworkBonusPercent">20</integer>
110    <integer translatable="false" name="config_wifiFrameworkSecureNetworkBonus">40</integer>
111
112    <!-- The duration in minutes to strongly favor the last-selected network over other options. -->
113    <integer translatable="false" name="config_wifiFrameworkLastSelectionMinutes">480</integer>
114
115    <!-- Integer specifying the min packet Tx/Rx rates in packets per second to be considered
116         active traffic so that network selection and scan could be skipped-->
117    <integer translatable="false" name="config_wifiFrameworkMinPacketPerSecondActiveTraffic">16</integer>
118    <!-- Integer specifying the min packet Tx/Rx rates in packets per second to be considered
119         high traffic so that the device should stay on WiFi even if RSSI is very low -->
120    <integer translatable="false" name="config_wifiFrameworkMinPacketPerSecondHighTraffic">100</integer>
121    <!-- Integer parameters of the wifi to cellular handover feature
122         wifi should not stick to bad networks -->
123    <!-- Integer threshold for low network score, should be somewhat less than the entry threshhold -->
124    <integer translatable="false" name="config_wifi_framework_wifi_score_bad_rssi_threshold_5GHz">-80</integer>
125    <!-- Integer threshold, do not connect to APs with RSSI lower than the entry threshold -->
126    <integer translatable="false" name="config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz">-77</integer>
127    <integer translatable="false" name="config_wifi_framework_wifi_score_low_rssi_threshold_5GHz">-70</integer>
128    <integer translatable="false" name="config_wifi_framework_wifi_score_good_rssi_threshold_5GHz">-57</integer>
129    <integer translatable="false" name="config_wifi_framework_wifi_score_bad_rssi_threshold_24GHz">-83</integer>
130    <integer translatable="false" name="config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz">-80</integer>
131    <integer translatable="false" name="config_wifi_framework_wifi_score_low_rssi_threshold_24GHz">-73</integer>
132    <integer translatable="false" name="config_wifi_framework_wifi_score_good_rssi_threshold_24GHz">-60</integer>
133    <integer translatable="false" name="config_wifiFrameworkScoreBadRssiThreshold6ghz">-80</integer>
134    <integer translatable="false" name="config_wifiFrameworkScoreEntryRssiThreshold6ghz">-77</integer>
135    <integer translatable="false" name="config_wifiFrameworkScoreLowRssiThreshold6ghz">-70</integer>
136    <integer translatable="false" name="config_wifiFrameworkScoreGoodRssiThreshold6ghz">-57</integer>
137
138    <!-- Integer delay in milliseconds before shutting down soft AP when there
139         are no connected devices. -->
140    <integer translatable="false" name="config_wifiFrameworkSoftApShutDownTimeoutMilliseconds">600000</integer>
141
142    <!-- Integer delay in milliseconds before shutting down idle soft AP instance.
143         This timer is the inactivity timer for transitioning a Dual AP to Single AP mode
144         by shutting down one of the APs that has been inactive/unused.
145         If both APs in Dual AP mode are idle, it shuts down the AP in higher band. -->
146    <integer translatable="false" name="config_wifiFrameworkSoftApShutDownIdleInstanceInBridgedModeTimeoutMillisecond">300000</integer>
147
148    <!-- Integer indicating maximum hardware supported client number of soft ap -->
149    <integer translatable="false" name="config_wifiHardwareSoftapMaxClientCount">16</integer>
150
151    <!-- boolean indicating whether or not to reset channel configuration during cloud configuration restore -->
152    <bool translatable="false" name ="config_wifiSoftapResetChannelConfig">true</bool>
153
154    <!-- boolean indicating whether or not to reset hiddenSsid configuration during cloud configuration restore -->
155    <bool translatable="false" name ="config_wifiSoftapResetHiddenConfig">true</bool>
156
157    <!-- boolean indicating whether or not to reset user control configuration during cloud configuration restore -->
158    <bool translatable="false" name ="config_wifiSoftapResetUserControlConfig">true</bool>
159
160    <!-- boolean indicating whether or not to reset auto shotdown configuration during cloud configuration restore -->
161    <bool translatable="false" name ="config_wifiSoftapResetAutoShutdownTimerConfig">true</bool>
162
163    <!-- boolean indicating whether or not to reset max client setting configuration during cloud configuration restore -->
164    <bool translatable="false" name ="config_wifiSoftapResetMaxClientSettingConfig">true</bool>
165
166    <!-- List of allowed channels in 2GHz band for softap. If the device doesn't want to restrict
167         channels this should be empty. Values is a comma separated channel string and/or channel
168         range string like '1-6,11'. -->
169    <string  translatable="false" name="config_wifiSoftap2gChannelList">1-11</string>
170
171    <!-- List of allowed channels in 5GHz band for softap. If the device doesn't want to restrict
172         channels this should be empty. Values is a comma separated channel string and/or channel
173         range string like '36-48,149'. -->
174    <string  translatable="false" name="config_wifiSoftap5gChannelList"></string>
175
176    <!-- List of allowed channels in 6GHz band for softap. If the device doesn't want to restrict
177         channels this should be empty. Values is a comma separated channel string and/or channel
178         range string like '36-48,149'. -->
179    <string  translatable="false" name="config_wifiSoftap6gChannelList"></string>
180
181    <!-- List of allowed channels in 60GHz band for softap. If the device doesn't want to restrict
182         channels this should be empty. Values is a comma separated channel string and/or channel
183         range string like '1-2,4'. -->
184    <string  translatable="false" name="config_wifiSoftap60gChannelList"></string>
185
186    <!-- Integer indicating associated full scan max num active channels -->
187    <integer translatable="false" name="config_wifi_framework_associated_partial_scan_max_num_active_channels">6</integer>
188
189    <!-- Integer delay in milliseconds before set wlan interface up during watchdog recovery -->
190    <integer translatable="false" name="config_wifi_framework_recovery_timeout_delay">2000</integer>
191
192    <!-- Boolean indicating associated network selection is allowed -->
193    <bool translatable="false" name="config_wifi_framework_enable_associated_network_selection">true</bool>
194
195    <!-- Integer duration after connection that a user-selected network is considered sufficient (milliseconds) -->
196    <integer translatable="false" name="config_wifiSufficientDurationAfterUserSelectionMilliseconds">60000</integer>
197
198    <!-- Boolean indicating whether the wifi module should always scan the 6Ghz Preferred Scanning
199         Channels when performing full connectivity scans.
200         If set to true, the wifi module will scan 6Ghz PSC channels in addition to the 2.4Ghz,
201         5Ghz, and 6Ghz channels co-located with 2.4/5Ghz APs when doing full connectivity scans.
202         If set to false, the wifi module will only scan the 2.4Ghz, 5Ghz,
203         and 6Ghz channels co-located with 2.4/5Ghz APs when doing full connectivity scans.-->
204    <bool translatable="false" name="config_wifiEnable6ghzPscScanning">true</bool>
205
206    <!-- Boolean indicating performing a partial initial scan is enabled -->
207    <bool translatable="false" name="config_wifiEnablePartialInitialScan">false</bool>
208
209    <!-- Integer for maximum number of channels to use in initial partial scan. If equals to 0, means add all available channels for networks -->
210    <integer translatable="false" name="config_wifiInitialPartialScanChannelMaxCount">10</integer>
211
212    <!-- Integer for maximum age for scan results used to identify channels for partial initial
213         scan in minutes -->
214    <integer translatable="false" name="config_wifiInitialPartialScanChannelCacheAgeMins">14400</integer>
215
216    <!-- Boolean indicating whether single radio chain scan results are to be used for network selection -->
217    <bool translatable="false" name="config_wifi_framework_use_single_radio_chain_scan_results_network_selection">true</bool>
218
219    <!-- Boolean indicating that wifi may link networks whose gateways have not yet been determined -->
220    <bool translatable="false" name="config_wifiAllowLinkingUnknownDefaultGatewayConfigurations">true</bool>
221
222    <!-- Boolean indicating that enable roaming between linked networks -->
223    <bool translatable="false" name="config_wifiEnableLinkedNetworkRoaming">false</bool>
224
225    <!-- Boolean indicating that only configurations that have the same pre-shared key will be linked -->
226    <bool translatable="false" name="config_wifi_only_link_same_credential_configurations">true</bool>
227
228    <!-- Boolean indicating whether framework needs to set the tx power limit for meeting SAR requirements -->
229    <bool translatable="false" name="config_wifi_framework_enable_sar_tx_power_limit">false</bool>
230
231    <!-- Boolean indicating whether framework should use detection of softAP mode to set the tx
232         power limit for meeting SAR requirements -->
233    <bool translatable="false" name="config_wifi_framework_enable_soft_ap_sar_tx_power_limit">false</bool>
234
235    <!-- Boolean indicating that softap passphrase need to enable ASCII encodable check -->
236    <bool translatable="false" name="config_wifiSoftapPassphraseAsciiEncodableCheck">true</bool>
237
238    <!-- Wifi Hal supports force client disconnect for softap -->
239    <bool translatable="false" name="config_wifiSofapClientForceDisconnectSupported">true</bool>
240
241    <!-- Wifi driver supports Automatic channel selection (ACS) for softap -->
242    <bool translatable="false" name="config_wifi_softap_acs_supported">false</bool>
243
244    <!-- Wifi driver supports WPA3 Simultaneous Authentication of Equals (WPA3-SAE) for softap -->
245    <bool translatable="false" name="config_wifi_softap_sae_supported">false</bool>
246
247    <!-- Wifi driver supports Mac address customization for softap -->
248    <bool translatable="false" name="config_wifiSoftapMacAddressCustomizationSupported">true</bool>
249
250    <!-- Wifi driver supports IEEE80211AC for softap -->
251    <bool translatable="false" name="config_wifi_softap_ieee80211ac_supported">false</bool>
252
253    <!-- Wifi driver supports IEEE80211AX for softap -->
254    <bool translatable="false" name="config_wifiSoftapIeee80211axSupported">false</bool>
255
256    <!-- Wifi driver supports IEEE80211AX single user beamformer for softap -->
257    <bool translatable="false" name="config_wifiSoftapHeSuBeamformerSupported">false</bool>
258
259    <!-- Wifi driver supports IEEE80211AX single user beamformee for softap -->
260    <bool translatable="false" name="config_wifiSoftapHeSuBeamformeeSupported">false</bool>
261
262    <!-- Wifi driver supports IEEE80211AX multiple user beamformer for softap -->
263    <bool translatable="false" name="config_wifiSoftapHeMuBeamformerSupported">false</bool>
264
265    <!-- Wifi driver supports IEEE80211AX TWT (Target Wake Time) for softap -->
266    <bool translatable="false" name="config_wifiSoftapHeTwtSupported">false</bool>
267
268    <!-- Wifi driver supports 2.4GHz band for softap when chip support 24GHz -->
269    <bool translatable="false" name="config_wifiSoftap24ghzSupported">true</bool>
270
271    <!-- Wifi driver supports 5GHz band for softap when chip support 5GHz -->
272    <bool translatable="false" name="config_wifiSoftap5ghzSupported">true</bool>
273
274    <!-- Wifi driver supports 6GHz band for softap when chip support 6GHz -->
275    <bool translatable="false" name="config_wifiSoftap6ghzSupported">false</bool>
276
277    <!-- Wifi driver supports 60GHz band for softap when chip support 60GHz -->
278    <bool translatable="false" name="config_wifiSoftap60ghzSupported">false</bool>
279
280    <!-- Indicates that local-only hotspot should be brought up at 6GHz if possible.
281         This option is for automotive builds only (the one that have
282         PackageManager#FEATURE_AUTOMOTIVE) -->
283    <bool translatable="false" name="config_wifiLocalOnlyHotspot6ghz">false</bool>
284
285    <!-- Indicates that local-only hotspot should be brought up at 5GHz if 6GHz is not enabled
286         or feasible.  This option is for automotive builds only (the one that have
287         PackageManager#FEATURE_AUTOMOTIVE) -->
288    <bool translatable="false" name="config_wifi_local_only_hotspot_5ghz">false</bool>
289
290    <!-- Indicates that connected MAC randomization is supported on this device -->
291    <bool translatable="false" name="config_wifi_connected_mac_randomization_supported">false</bool>
292
293    <!-- Indicates that enhanced MAC randomization is allowed on open networks that do not
294     use captive portals -->
295    <bool translatable="false" name="config_wifiAllowEnhancedMacRandomizationOnOpenSsids">false</bool>
296
297    <!-- Indicates that p2p MAC randomization is supported on this device -->
298    <bool translatable="false" name="config_wifi_p2p_mac_randomization_supported">false</bool>
299
300    <!-- Indicates that AP mode MAC randomization is supported on this device -->
301    <bool translatable="false" name="config_wifi_ap_mac_randomization_supported">true</bool>
302
303    <!-- Indicates that bridged AP mode is supported on this device -->
304    <bool translatable="false" name="config_wifiBridgedSoftApSupported">false</bool>
305
306    <!-- Indicates that STA + bridged AP concurrency mode is supported on this device -->
307    <bool translatable="false" name="config_wifiStaWithBridgedSoftApConcurrencySupported">false</bool>
308
309    <!-- Indicates that dynamic country code update in AP mode is supported on this device -->
310    <bool translatable="false" name="config_wifiSoftApDynamicCountryCodeUpdateSupported">false</bool>
311
312    <!-- list of SSIDs to enable aggressive MAC randomization on -->
313    <string-array translatable="false" name="config_wifi_aggressive_randomization_ssid_allowlist">
314        <!-- SSIDs are expected in quoted format:
315        <item>\"SSID_1\"</item>
316        <item>\"SSID_2\"</item>
317        -->
318    </string-array>
319
320    <!-- list of SSIDs to disable aggressive MAC randomization on. If a SSID is in both the
321    allowlist and blocklist, then aggressive MAC randomization will still be disabled. -->
322    <string-array translatable="false" name="config_wifi_aggressive_randomization_ssid_blocklist">
323        <!-- SSIDs are expected in quoted format:
324        <item>\"SSID_1\"</item>
325        <item>\"SSID_2\"</item>
326        -->
327    </string-array>
328
329    <!-- Duration in minutes a recent failure should be displayed in the wifi picker UI. -->
330    <integer translatable="false" name="config_wifiRecentFailureReasonExpirationMinutes">30</integer>
331
332    <!-- The minimum duration in minutes that all non-carrier-merged wifi becomes disabled when
333    WifiManager#startRestrictingAutoJoinToSubscriptionId is called. -->
334    <integer translatable="false"
335             name="config_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes">30</integer>
336
337    <!-- Configures 2 things:
338    1. The maximum duration in minutes that all non-carrier-merged wifi becomes disabled when
339    WifiManager#startRestrictingAutoJoinToSubscriptionId is called.
340    2. The maximum duration in minutes that a network is disabled when the user manually
341    triggers the "disconnect" feature.-->
342    <integer translatable="false"
343             name="config_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes">480</integer>
344
345    <!-- Indicates that wifi link probing is supported on this device -->
346    <bool translatable="false" name="config_wifi_link_probing_supported">false</bool>
347
348    <!-- Configure wifi tcp buffersizes in the form:
349         rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max -->
350    <string name="config_wifi_tcp_buffers" translatable="false">524288,1048576,2097152,262144,524288,1048576</string>
351
352    <!-- Do not translate. Default access point SSID used for tethering -->
353    <string name="wifi_tether_configure_ssid_default" translatable="false">AndroidAP</string>
354    <!-- Do not translate. Default access point SSID used for local only hotspot -->
355    <string name="wifi_localhotspot_configure_ssid_default" translatable="false">AndroidShare</string>
356
357    <!-- Indicates that a full bugreport should be triggered when wifi diagnostics detects an error on non-user (i.e debug) builds -->
358    <bool translatable="false" name="config_wifi_diagnostics_bugreport_enabled">false</bool>
359
360    <!-- Indicates that wifi watchdog is enabled on this device -->
361    <bool translatable="false" name="config_wifi_watchdog_enabled">true</bool>
362
363    <!-- list of package names for which WifiManager.startScan() will not be throttled when the app
364    is in foreground. -->
365    <string-array translatable="false" name="config_wifiForegroundScanThrottleExceptionList">
366        <!-- Below is a sample configuration for this list:
367        <item>com.company1.example.test.name1</item>
368        <item>com.company2.example.test.name2</item>
369        -->
370    </string-array>
371
372    <!-- list of package names for which WifiManager.startScan() will not be throttled when the app
373    is in background. -->
374    <string-array translatable="false" name="config_wifiBackgroundScanThrottleExceptionList">
375        <!-- Below is a sample configuration for this list:
376        <item>com.company1.example.test.name1</item>
377        <item>com.company2.example.test.name2</item>
378        -->
379    </string-array>
380
381    <!--
382    Controls the mapping between RSSI and RSSI levels.
383
384    RSSI                                    RSSI Level
385    (-infinity, thresholds[0])                       0
386    [threshold[0], threshold[1])                     1
387    [threshold[1], threshold[2])                     2
388    ...                                            ...
389    [threshold[len-2], threshold[len-1])         len-1
390    [threshold[len-1], +infinity)                  len
391
392    where:
393        [a, b) is the range of integers `n` such that a <= n < b
394        `threshold[i]` represents the i'th element of the config_wifiRssiLevelThresholds array
395        and `len` is the length of the config_wifiRssiLevelThresholds array.
396    -->
397    <integer-array translatable="false" name="config_wifiRssiLevelThresholds">
398                         <!-- RSSI                RSSI Level -->
399        <item>-88</item> <!-- (-infinity, -88)             0 -->
400        <item>-77</item> <!-- [-88, -77)                   1 -->
401        <item>-66</item> <!-- [-77, -66)                   2 -->
402        <item>-55</item> <!-- [-66, -55)                   3 -->
403                         <!-- [-55, +infinity)             4 -->
404    </integer-array>
405
406    <!-- Array describing scanning schedule in seconds when device is disconnected and screen is on -->
407    <integer-array translatable="false" name="config_wifiDisconnectedScanIntervalScheduleSec">
408        <item>20</item>
409        <item>40</item>
410        <item>80</item>
411        <item>160</item>
412    </integer-array>
413
414    <!-- Array describing scanning schedule in seconds when device is connected and screen is on -->
415    <integer-array translatable="false" name="config_wifiConnectedScanIntervalScheduleSec">
416        <item>20</item>
417        <item>40</item>
418        <item>80</item>
419        <item>160</item>
420    </integer-array>
421
422    <!-- Integer specifying minimum wait time in seconds for next PNO scan when a network is found
423    by PNO scan but gets rejected by Wifi Network Selector due to its low RSSI value-->
424    <integer translatable="false" name="config_wifiPnoScanLowRssiNetworkRetryStartDelaySec"> 20 </integer>
425
426    <!-- Integer specifying maximum wait time in seconds for next PNO scan when a network is found
427    by PNO scan but gets rejected by Wifi Network Selector due to its low RSSI value-->
428    <integer translatable="false" name="config_wifiPnoScanLowRssiNetworkRetryMaxDelaySec"> 80 </integer>
429
430    <!-- Integer for minimum time between the last network selection and next high RSSI scan
431         in seconds when device is connected and screen is on -->
432    <integer translatable="false" name="config_wifiConnectedHighRssiScanMinimumWindowSizeSec"> 600 </integer>
433
434    <!-- Array describing scanning schedule in seconds when device is connected and screen is on
435         and the connected network is the only saved network.
436         When this array is set to an empty array, the noraml connected scan schedule defined
437         in config_wifiConnectedScanIntervalScheduleSec will be used -->
438    <integer-array translatable="false" name="config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec">
439    </integer-array>
440
441    <!-- List of constants to indicate how many failures are needed to temporarily disable a network
442    from auto-connect -->
443    <integer translatable="false" name="config_wifiDisableReasonAssociationRejectionThreshold"> 3 </integer>
444    <integer translatable="false" name="config_wifiDisableReasonAuthenticationFailureThreshold"> 3 </integer>
445    <integer translatable="false" name="config_wifiDisableReasonDhcpFailureThreshold"> 2 </integer>
446    <integer translatable="false" name="config_wifiDisableReasonNetworkNotFoundThreshold"> 2 </integer>
447
448    <!-- List of constants that indicate the number of consecutive failures per type needed to block a BSSID.
449    A blocked BSSID will not be considered in network selection and firmware roaming.-->
450    <integer translatable="false" name="config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold"> 1 </integer>
451    <integer translatable="false" name="config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold"> 1 </integer>
452    <integer translatable="false" name="config_wifiBssidBlocklistMonitorWrongPasswordThreshold"> 1 </integer>
453    <integer translatable="false" name="config_wifiBssidBlocklistMonitorEapFailureThreshold"> 1 </integer>
454    <integer translatable="false" name="config_wifiBssidBlocklistMonitorAssociationRejectionThreshold"> 3 </integer>
455    <integer translatable="false" name="config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold"> 3 </integer>
456    <integer translatable="false" name="config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold"> 3 </integer>
457    <integer translatable="false" name="config_wifiBssidBlocklistMonitorDhcpFailureThreshold"> 2 </integer>
458    <integer translatable="false" name="config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold"> 3 </integer>
459    <integer translatable="false" name="config_wifiBssidBlocklistMonitorNonlocalDisconnectConnectingThreshold"> 2 </integer>
460
461    <!-- Base duration to block a BSSID after consecutive failures happen. (default = 5 mins)
462    The blocklist duration is increased exponentially for a BSSID that consecutively gets added to the blocklist.
463    ie. 5/10/20/40/80/160/320/640 minutes - capped at 640 minutes because the default for
464    config_wifiBssidBlocklistMonitorFailureStreakCap is set to 7-->
465    <integer translatable="false" name="config_wifiBssidBlocklistMonitorBaseBlockDurationMs"> 300000 </integer>
466
467    <!-- Base duration to block a BSSID after the external connected scorer sets wifi as unusable.
468    The block duration is increased exponentially if the same BSSID is repeated marked as unusable.
469    ie. 0.5/1/2/4/8/16/32/64 minutes - capped at 64 minutes because the default for
470    config_wifiBssidBlocklistMonitorFailureStreakCap is set to 7. The block duration is reset to
471    the base value 3 hours after the latest connection to this BSSID. -->
472    <integer translatable="false" name="config_wifiBssidBlocklistMonitorConnectedScoreBaseBlockDurationMs"> 30000 </integer>
473
474    <!-- The failure streak is the number of times a BSSID consecutively gets blocked without ever
475    successfully connecting in between, and is used to calculate the exponentially growing blocklist time.
476    The config_wifiBssidBlocklistMonitorFailureStreakCap controls how many times the block duration
477    could exponentially grow when a BSSID keeps failing.
478    ie. A value of 0 means BSSIDs are always blocked for the flat base duration defined by
479    config_wifiBssidBlocklistMonitorBaseBlockDurationMs. -->
480    <integer translatable="false" name="config_wifiBssidBlocklistMonitorFailureStreakCap"> 7 </integer>
481
482    <!-- If a non-locally generated disconnect happens within this time window after association,
483    then count it as a failure with reason code REASON_ABNORMAL_DISCONNECT (default = 30 seconds) -->
484    <integer translatable="false" name="config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs"> 30000 </integer>
485
486    <!-- Indicates that hidden networks are to be scanned during scan only mode -->
487    <bool translatable="false" name="config_wifiScanHiddenNetworksScanOnlyMode">false</bool>
488
489    <!-- Enable logging WifiIsUnusableEvent in metrics which gets triggered when wifi becomes unusable. -->
490    <bool translatable="false" name="config_wifiIsUnusableEventMetricsEnabled">true</bool>
491
492    <!-- The minimum number of txBad the framework has to observe to trigger a wifi data stall. -->
493    <integer translatable="false" name="config_wifiDataStallMinTxBad">1</integer>
494
495    <!-- The minimum number of txSuccess the framework has to observe
496         to trigger a wifi data stall when rxSuccess is 0. -->
497    <integer translatable="false" name="config_wifiDataStallMinTxSuccessWithoutRx">50</integer>
498
499    <!-- Enable logging Wifi LinkSpeedCounts in metrics. -->
500    <bool translatable="false" name="config_wifiLinkSpeedMetricsEnabled">true</bool>
501
502    <!-- Enable the PNO frequency culling optimization. -->
503    <bool translatable="false" name="config_wifiPnoFrequencyCullingEnabled">true</bool>
504
505    <!-- Enable the PNO frequency culling optimization. -->
506    <bool translatable="false" name="config_wifiPnoRecencySortingEnabled">true</bool>
507
508    <!-- Maximum number of SSIDs that can be PNO scanned concurrently-->
509    <integer translatable="false" name="config_wifiMaxPnoSsidCount">16</integer>
510
511    <!-- When disconnected and PNO scan is enabled, wake up to do a single scan every
512    config_wifiPnoWatchdogIntervalMs in case PNO scan failed. (default = 20 minutes)-->
513    <integer translatable="false" name="config_wifiPnoWatchdogIntervalMs">1200000</integer>
514
515    <!-- Suspend optimization. -->
516    <bool translatable="false" name="config_wifiSuspendOptimizationsEnabled">true</bool>
517
518    <!-- Network selection optimization at DEVICE_MOBILITY_STATE_HIGH_MVMT -->
519    <bool translatable="false" name="config_wifiHighMovementNetworkSelectionOptimizationEnabled">true</bool>
520
521    <!-- Do a single scan when cell data loss is detected. -->
522    <bool translatable="false" name="config_wifiScanOnCellularDataLossEnabled">false</bool>
523
524    <!-- Duration for the delayed scan used to verify access points are staying relatively stationary
525    to the device at high mobility state. (default = 10 seconds) -->
526    <integer translatable="false" name="config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs">10000</integer>
527
528    <!-- When config_wifiHighMovementNetworkSelectionOptimizationEnabled is true, BSSIDs with RSSI
529    from 2 consecutive scans that differ in either direction by more than this threshold will be
530    filtered out from network selection. (default = 10 dBs) -->
531    <integer translatable="false" name="config_wifiHighMovementNetworkSelectionOptimizationRssiDelta">10</integer>
532
533    <!-- The estimate RSSI error margin in dBs to account minor differences in the environment and
534    the device's orientation. -->
535    <integer translatable="false" name="config_wifiEstimateRssiErrorMarginDb">5</integer>
536
537    <!-- The interval in milliseconds at which wifi rtt ranging requests will be throttled when
538         they are coming from the background apps (default = 30 mins). -->
539    <integer translatable="false" name="config_wifiRttBackgroundExecGapMs">1800000</integer>
540
541    <!-- Integer indicating the RSSI and link layer stats polling interval in milliseconds when device is connected and screen is on -->
542    <integer translatable="false" name="config_wifiPollRssiIntervalMilliseconds">3000</integer>
543
544    <!-- Override channel utilization estimation with fixed value -->
545    <bool translatable="false" name="config_wifiChannelUtilizationOverrideEnabled">true</bool>
546    <!-- Integer values represent the channel utilization in different RF bands when
547          config_wifiChannelUtilizationOverridingEnabled is true.
548         They should be set to [0, 255] corresponding to utilization ratio between 0 and 1 -->
549    <integer translatable="false" name="config_wifiChannelUtilizationOverride2g">80</integer>
550    <integer translatable="false" name="config_wifiChannelUtilizationOverride5g">15</integer>
551    <integer translatable="false" name="config_wifiChannelUtilizationOverride6g">10</integer>
552
553    <!-- Enable WPA2 to WPA3 auto-upgrade -->
554    <bool translatable="false" name="config_wifiSaeUpgradeEnabled">true</bool>
555
556    <!-- Enable WPA2 to WPA3 auto-upgrade offload to capable Driver/Firmware -->
557    <bool translatable="false" name="config_wifiSaeUpgradeOffloadEnabled">false</bool>
558
559    <!-- Enable Open to OWE auto-upgrade -->
560    <bool translatable="false" name="config_wifiOweUpgradeEnabled">true</bool>
561
562    <!-- Number of self recoveries to be attempted per hour. Any fatal errors beyond this will
563         cause the wifi stack to turn wifi off and wait for user input.
564         Set to 0 to turn off recovery attempts and always turn off wifi on failures -->
565    <integer translatable="false" name="config_wifiMaxNativeFailureSelfRecoveryPerHour">2</integer>
566    <!-- Ignore the open saved network if from carrier provisioning app, there is a same open suggestion and a secure suggestion from same carrier available -->
567    <bool translatable="false" name="config_wifiIgnoreOpenSavedNetworkWhenSecureSuggestionAvailable">true</bool>
568
569    <!-- Wifi driver Automatic channel selection (ACS) for softap to include DFS channels -->
570    <bool translatable="false" name="config_wifiSoftapAcsIncludeDfs">false</bool>
571
572    <!-- Initial PNO scan interval, in milliseconds, when the device is moving (i.e.
573         WifiManager.DEVICE_MOBILITY_STATE_UNKNOWN, WifiManager.DEVICE_MOBILITY_STATE_HIGH_MVMT, or
574         WifiManager.DEVICE_MOBILITY_STATE_LOW_MVMT).
575         The scan interval backs off from this initial interval on subsequent scans.
576         This scan is performed when screen is off and disconnected. -->
577    <integer translatable="false" name="config_wifiMovingPnoScanIntervalMillis">20000</integer>
578
579    <!-- Initial PNO scan interval, in milliseconds, when the device is stationary (i.e.
580         WifiManager.DEVICE_MOBILITY_STATE_STATIONARY).
581         The scan interval backs off from this initial interval on subsequent scans.
582         This scan is performed when screen is off and disconnected. -->
583    <integer translatable="false" name="config_wifiStationaryPnoScanIntervalMillis">60000</integer>
584
585    <!-- integer indicating additional disconnect delay (in ms) after IMS onLost() indication is received -->
586    <integer translatable="false" name="config_wifiDelayDisconnectOnImsLostMs">0</integer>
587
588    <!-- Enable adding minimum confirmation duration when sending network score to connectivity service. -->
589    <bool translatable="false" name="config_wifiMinConfirmationDurationSendNetworkScoreEnabled">false</bool>
590
591    <!-- Enable Make-Before-Break Wifi network switching.
592         Note: this is conditional on the device supporting dual concurrent STAs. -->
593    <bool translatable="false" name="config_wifiMultiStaNetworkSwitchingMakeBeforeBreakEnabled">false</bool>
594    <!-- Enable concurrent peer to peer + internet connectivity
595         Note: this is conditional on the device supporting dual concurrent STAs. -->
596    <bool translatable="false" name="config_wifiMultiStaLocalOnlyConcurrencyEnabled">false</bool>
597    <!-- Enable concurrent restricted connectivity + internet connectivity
598         Note: this is conditional on the device supporting dual concurrent STAs. -->
599    <bool translatable="false" name="config_wifiMultiStaRestrictedConcurrencyEnabled">false</bool>
600    <!-- Enable the default coex channel avoidance algorithm and disable the functionality of
601         WifiManager#setCoexUnsafeChannels. -->
602    <bool translatable="false" name="config_wifiDefaultCoexAlgorithmEnabled">false</bool>
603    <!-- Filepath of the xml table of parameters used by Wifi coex channel avoidance. -->
604    <string translatable="false" name="config_wifiCoexTableFilepath">/vendor/etc/wifi/coex_table.xml</string>
605    <!-- A value to indicate how many failures are needed to temporarily or permanently
606    (depends on config_wifiDisableReasonAuthenticationFailureCarrierSpecificDurationMs)
607    disable a network from auto-connect based on Carrier requirement -->
608    <integer translatable="false" name="config_wifiDisableReasonAuthenticationFailureCarrierSpecificThreshold">1</integer>
609    <!-- A value to indicate the duration (in ms) to disable a network from auto-connect based on
610    Carrier requirement. -1 represents disabling a network permanently -->
611    <integer translatable="false" name="config_wifiDisableReasonAuthenticationFailureCarrierSpecificDurationMs">-1</integer>
612    <!-- Flush ANQP cache on Wi-Fi toggle off event -->
613    <bool translatable="false" name="config_wifiFlushAnqpCacheOnWifiToggleOffEvent">true</bool>
614
615    <!-- Enable Aware NDP interface selection on interface that already has network set up.
616     Note: the default AOSP Android does not support multiple networks on the same Aware NDI.
617     Enabling this configuration will restore legacy behavior but may result in incorrect behavior.
618     -->
619    <bool translatable="false" name="config_wifiAllowMultipleNetworksOnSameAwareNdi">false</bool>
620
621    <!-- Integer threshold for minimum packets required to notify clients of data activity -->
622    <integer translatable="false" name="config_wifiTrafficPollerTxPacketThreshold">0</integer>
623    <integer translatable="false" name="config_wifiTrafficPollerRxPacketThreshold">0</integer>
624
625    <!-- A value to decide when NetworkCapabilities are updated to reflect the latest link
626    bandwidth. If the bandwidth change is above this value, NetworkCapabilities are updated -->
627    <integer translatable="false" name="config_wifiLinkBandwidthUpdateThresholdPercent">15</integer>
628
629    <!-- Whether we should apply APF filters on non primary STA connections when STA + STA is active.
630         Defaults to false since most wifi chips cannot support concurrent APF filter set needed for STA + STA-->
631    <bool translatable="false" name="config_wifiEnableApfOnNonPrimarySta">false</bool>
632
633    <!-- Whether to use the explicit vendor HAL API: IWifiStaIface.setRoamingState for disabling fw roaming (only needed if
634         setting the bssid on the connection alone does not disable fw roaming on this chip) -->
635    <bool translatable="false" name="config_wifiUseHalApiToDisableFwRoaming">false</bool>
636
637    <!-- Indicates that SAE Hash-to-Element is supported on this device -->
638    <bool translatable="false" name="config_wifiSaeH2eSupported">false</bool>
639
640    <!-- Enable aggregation of Wifi link layer radio stats from all radios.
641         Defaults to false will fetch radio stats only from Radio 0. This is to avoid
642         incorrect behavior due to driver/firmware returning bogus radio stats from other radios.
643         Note: Full DBS capable devices interested in radio stats from all the radios can enable this
644         configuration. -->
645    <bool translatable="false" name="config_wifiLinkLayerAllRadiosStatsAggregationEnabled">false</bool>
646
647    <!-- Indicate the prefix of wifi p2p device name, the length should be between 1 ~ 28. -->
648    <string translatable="false" name="config_wifiP2pDeviceNamePrefix">Android_</string>
649    <!-- Indicate how many digits the postfix are. If the value is negative or smaller than 4,
650         the postfix will fallback to the first digit of ANDROID_ID. -->
651    <integer translatable="false" name="config_wifiP2pDeviceNamePostfixNumDigits">-1</integer>
652
653    <!-- Integer threshold for max number of WifiConfigurations that can be saved on the device.
654         A value of -1 indicates no limit. If a max number is specified, then under-used configs will
655         be deleted to make room for new configs.-->
656    <integer translatable="false" name="config_wifiMaxNumWifiConfigurations">-1</integer>
657
658    <!-- Whether to allow Settings or SUW to create insecure Enterprise networks where server
659         certificate is not validated, by not specifying a Root CA certificate and/or server domain
660         name. It is STRONGLY RECOMMENDED to be set to false -->
661    <bool translatable="false" name="config_wifiAllowInsecureEnterpriseConfigurationsForSettingsAndSUW">false</bool>
662
663    <!-- Indicate the max lines for connectivity local log based on the device ram size -->
664    <integer translatable="false" name="config_wifiConnectivityLocalLogMaxLinesLowRam">256</integer>
665    <integer translatable="false" name="config_wifiConnectivityLocalLogMaxLinesHighRam">512</integer>
666
667    <!-- Indicate max number of log records for WifiClientModeImpl -->
668    <integer translatable="false" name="config_wifiClientModeImplNumLogRecs">100</integer>
669</resources>
670