Merge Android 14
Bug: 298295554 Merged-In: Ia42c74a3fab73b984823796b61b0e66f7662ac53 Change-Id: I08cb8a2b2050c04b370de78fd0d422730cc60171
This commit is contained in:
commit
1fba35369d
52 changed files with 1470 additions and 1217 deletions
3
OWNERS
3
OWNERS
|
@ -1 +1,4 @@
|
|||
per-file powerhint.json = jychen@google.com,jenhaochen@google.com,wvw@google.com,joaodias@google.com
|
||||
|
||||
# per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details.
|
||||
per-file *.mk,*/BoardConfig.mk=file:device/google/gs-common:master:/OWNERS
|
||||
|
|
|
@ -20,6 +20,7 @@ AUDIO_TABLE_FOLDER := felix
|
|||
PRODUCT_COPY_FILES += \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_le_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_le_offload_disabled.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \
|
||||
|
@ -43,6 +44,7 @@ PRODUCT_COPY_FILES += $(call copy-files,$(wildcard $(SPK_FIRMWARE_FULL_PATH)/*)
|
|||
# Audio tuning
|
||||
PRODUCT_COPY_FILES += \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/recording.gatf:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/recording.gatf \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/smartfeature.gstf:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/smartfeature.gstf \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.dat \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
|
||||
device/google/felix/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
|
||||
|
|
|
@ -295,7 +295,7 @@
|
|||
|
||||
<device_handle>
|
||||
<handler libname="audio_bt_aoc.so"/>
|
||||
<handler libname="audio_usb_aoc.so" argu="MaxSamplingRate=96000,UnsupportedFormat=S24_LE"/>
|
||||
<handler libname="audio_usb_aoc.so" argu="MaxSamplingRate=192000,UnsupportedFormat=S24_LE,MaxCapPacketInterval=125,MaxCapSampleRate=192000,MaxCapBitWidth=32,MaxCapChannel=2,EnableHifi192kMultichannel=0"/>
|
||||
</device_handle>
|
||||
|
||||
<external_module>
|
||||
|
|
|
@ -166,6 +166,18 @@
|
|||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT BLE Headset" type="AUDIO_DEVICE_OUT_BLE_HEADSET" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_LC3">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT BLE Speaker" type="AUDIO_DEVICE_OUT_BLE_SPEAKER" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_LC3">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BLE Headset Mic" type="AUDIO_DEVICE_IN_BLE_HEADSET" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
|
||||
|
@ -183,34 +195,38 @@
|
|||
<route type="mix" sink="Earpiece"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
|
||||
<route type="mix" sink="BT A2DP Out"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT A2DP Headphones"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT A2DP Speaker"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT BLE Headset"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT BLE Speaker"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="USB Device Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="USB Headset Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="BT SCO"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Headset"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Car Kit"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
|
||||
<route type="mix" sink="primary input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
||||
<route type="mix" sink="hotword input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
||||
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" />
|
||||
<route type="mix" sink="voice call rx" sources="Voice Call And Telephony Rx" />
|
||||
<route type="mix" sink="voip_tx"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic,BLE Headset Mic"/>
|
||||
<route type="mix" sink="fast input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="mmap_no_irq_in"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
|
||||
<route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
|
||||
</routes>
|
||||
|
|
|
@ -173,11 +173,11 @@
|
|||
<route type="mix" sink="USB Headset Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="BT SCO"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Headset"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Car Kit"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
|
||||
<route type="mix" sink="primary input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
|
@ -188,9 +188,9 @@
|
|||
<route type="mix" sink="voip_tx"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="fast input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="mmap_no_irq_in"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
|
||||
<route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
|
||||
</routes>
|
||||
|
|
|
@ -169,11 +169,11 @@
|
|||
<route type="mix" sink="USB Headset Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="BT SCO"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Headset"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Car Kit"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
|
||||
<route type="mix" sink="primary input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
|
@ -184,9 +184,9 @@
|
|||
<route type="mix" sink="voip_tx"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="fast input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="mmap_no_irq_in"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
|
||||
<route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
|
||||
</routes>
|
||||
|
|
|
@ -0,0 +1,249 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<!-- Copyright (C) 2020 The Android Open Source Project
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<audioPolicyConfiguration version="7.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<globalConfiguration speaker_drc_enabled="false" call_screen_mode_supported="true" />
|
||||
<modules>
|
||||
<!-- Primary Audio HAL -->
|
||||
<module name="primary" halVersion="2.0">
|
||||
<attachedDevices>
|
||||
<item>Speaker</item>
|
||||
<item>Speaker Safe</item>
|
||||
<item>Earpiece</item>
|
||||
<item>Built-In Mic</item>
|
||||
<item>Built-In Back Mic</item>
|
||||
<item>Telephony Tx</item>
|
||||
<item>Voice Call And Telephony Rx</item>
|
||||
<item>Echo Ref In</item>
|
||||
</attachedDevices>
|
||||
<defaultOutputDevice>Speaker</defaultOutputDevice>
|
||||
<mixPorts>
|
||||
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="compressed_offload" role="source"
|
||||
flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD AUDIO_OUTPUT_FLAG_NON_BLOCKING">
|
||||
<profile name="" format="AUDIO_FORMAT_MP3"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
||||
<profile name="" format="AUDIO_FORMAT_AAC_LC"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
||||
<profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
||||
<profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
|
||||
samplingRates="8000 16000 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
|
||||
</mixPort>
|
||||
<mixPort name="haptic" role="source">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_AB" />
|
||||
</mixPort>
|
||||
<mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="incall playback" role="source"
|
||||
flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
|
||||
</mixPort>
|
||||
<mixPort name="voice call tx" role="source">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
|
||||
</mixPort>
|
||||
<mixPort name="voip_rx" role="source"
|
||||
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="primary input" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_INDEX_MASK_3"/>
|
||||
</mixPort>
|
||||
<mixPort name="hotword input" role="sink" flags="AUDIO_INPUT_FLAG_HW_HOTWORD" maxActiveCount="0" >
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="incall capture" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||
</mixPort>
|
||||
<mixPort name="voice call rx" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||
</mixPort>
|
||||
<mixPort name="voip_tx" role="sink"
|
||||
flags="AUDIO_INPUT_FLAG_VOIP_TX">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
|
||||
</mixPort>
|
||||
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_RAW AUDIO_INPUT_FLAG_FAST">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
|
||||
</mixPort>
|
||||
<mixPort name="hifi_playback" role="source" />
|
||||
<mixPort name="hifi_input" role="sink" />
|
||||
<mixPort name="echo_ref_input" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
|
||||
samplingRates="48000"
|
||||
channelMasks="AUDIO_CHANNEL_IN_STEREO"/>
|
||||
</mixPort>
|
||||
</mixPorts>
|
||||
<devicePorts>
|
||||
<!-- Output devices declaration, i.e. Sink DEVICE PORT -->
|
||||
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
|
||||
</devicePort>
|
||||
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
|
||||
</devicePort>
|
||||
<!-- Input devices declaration, i.e. Source DEVICE PORT -->
|
||||
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
|
||||
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
|
||||
</devicePort>
|
||||
<!-- AUDIO_DEVICE_IN_VOICE_CALL and AUDIO_DEVICE_IN_TELEPHONY_RX are in the same value -->
|
||||
<devicePort tagName="Voice Call And Telephony Rx" type="AUDIO_DEVICE_IN_VOICE_CALL" role="source">
|
||||
</devicePort>
|
||||
<devicePort tagName="Echo Ref In" type="AUDIO_DEVICE_IN_ECHO_REFERENCE" role="source">
|
||||
</devicePort>
|
||||
</devicePorts>
|
||||
<!-- route declaration, i.e. list all available sources for a given sink -->
|
||||
<routes>
|
||||
<route type="mix" sink="Speaker"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,immersive_out"/>
|
||||
<route type="mix" sink="Earpiece"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
|
||||
<route type="mix" sink="BT A2DP Out"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT A2DP Headphones"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT A2DP Speaker"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="USB Device Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="USB Headset Out"
|
||||
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
|
||||
<route type="mix" sink="BT SCO"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Headset"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="BT SCO Car Kit"
|
||||
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,raw,mmap_no_irq_out"/>
|
||||
<route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
|
||||
<route type="mix" sink="primary input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="hotword input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" />
|
||||
<route type="mix" sink="voice call rx" sources="Voice Call And Telephony Rx" />
|
||||
<route type="mix" sink="voip_tx"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="fast input"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="mmap_no_irq_in"
|
||||
sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
|
||||
<route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
|
||||
<route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
|
||||
</routes>
|
||||
</module>
|
||||
<!-- Bluetooth Audio HAL -->
|
||||
<xi:include href="bluetooth_audio_policy_configuration_7_0.xml"/>
|
||||
<!-- Usb Audio HAL -->
|
||||
<module name="usbv2" halVersion="2.0">
|
||||
<mixPorts>
|
||||
<mixPort name="usb_accessory output" role="source">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</mixPort>
|
||||
</mixPorts>
|
||||
<devicePorts>
|
||||
<devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
|
||||
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
|
||||
samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
|
||||
</devicePort>
|
||||
</devicePorts>
|
||||
<routes>
|
||||
<route type="mix" sink="USB Host Out"
|
||||
sources="usb_accessory output"/>
|
||||
</routes>
|
||||
</module>
|
||||
<!-- Remote Submix Audio HAL -->
|
||||
<xi:include href="r_submix_audio_policy_configuration.xml"/>
|
||||
</modules>
|
||||
<!-- End of Modules section -->
|
||||
<!-- Volume section -->
|
||||
<xi:include href="audio_policy_volumes.xml"/>
|
||||
<xi:include href="default_volume_tables.xml"/>
|
||||
<!-- End of Volume section -->
|
||||
</audioPolicyConfiguration>
|
|
@ -175,6 +175,7 @@
|
|||
<ctl name="BT_RX Mixer NoHost1" value="0"/>
|
||||
<ctl name="BT_RX Mixer VOIP" value="0"/>
|
||||
<ctl name="BT_RX Mixer IMSV" value="0"/>
|
||||
<ctl name="BT_RX Mixer RAW" value="0"/>
|
||||
|
||||
<ctl name="INCALL_RX Mixer EP1" value="0"/>
|
||||
<ctl name="INCALL_RX Mixer EP2" value="0"/>
|
||||
|
@ -409,6 +410,10 @@
|
|||
<ctl name="USB_RX Mixer RAW" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="raw-playbackP bt">
|
||||
<ctl name="BT_RX Mixer RAW" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="raw-playbackP hearing-aid">
|
||||
</path>
|
||||
|
||||
|
@ -423,6 +428,10 @@
|
|||
<ctl name="USB_RX Mixer EP1" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="mmap-playbackP bt">
|
||||
<ctl name="BT_RX Mixer EP1" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="mmap-playbackP hearing-aid">
|
||||
</path>
|
||||
|
||||
|
@ -620,6 +629,10 @@
|
|||
<ctl name="EP3 TX Mixer USB_TX" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="low-latency-recordC bt-mic">
|
||||
<ctl name="EP3 TX Mixer BT_TX" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="mmap-recordC">
|
||||
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1"/>
|
||||
</path>
|
||||
|
@ -628,6 +641,10 @@
|
|||
<ctl name="EP2 TX Mixer USB_TX" value="1"/>
|
||||
</path>
|
||||
|
||||
<path name="mmap-recordC bt-mic">
|
||||
<ctl name="EP2 TX Mixer BT_TX" value="1"/>
|
||||
</path>
|
||||
|
||||
<!-- codec setting -->>
|
||||
<!-- Rx device -->
|
||||
<path name="handset">
|
||||
|
|
BIN
audio/felix/tuning/bluenote/smartfeature.gstf
Normal file
BIN
audio/felix/tuning/bluenote/smartfeature.gstf
Normal file
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load diff
78
bluetooth/le_audio_codec_capabilities.xml
Normal file
78
bluetooth/le_audio_codec_capabilities.xml
Normal file
|
@ -0,0 +1,78 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!---
|
||||
This is an example to configure LE Audio hardware offload supported capability settings
|
||||
codecConfigurationList:
|
||||
Supported codec capability along with its parameter setting
|
||||
|
||||
strategyConfigurationList:
|
||||
ASE Configuration strategies
|
||||
|
||||
configurationList:
|
||||
For each configuration, there are two attributes
|
||||
- codecConfiguration
|
||||
- strategyConfiguration
|
||||
|
||||
scenarioList:
|
||||
There would be only one `scenarios` group
|
||||
For each scenario, the are two attributes
|
||||
- encode
|
||||
- decode
|
||||
If a scenario is unidirectional, mark another direction as `invalid`
|
||||
The configuration should be chosen from `configurationList`
|
||||
-->
|
||||
<leAudioOffloadSetting>
|
||||
<scenarioList>
|
||||
<!-- encode only -->
|
||||
<scenario encode="OneChanMono_16_1" decode="invalid"/>
|
||||
<scenario encode="TwoChanStereo_16_1" decode="invalid"/>
|
||||
<scenario encode="OneChanStereo_16_1" decode="invalid"/>
|
||||
<scenario encode="OneChanMono_16_2" decode="invalid"/>
|
||||
<scenario encode="TwoChanStereo_16_2" decode="invalid"/>
|
||||
<scenario encode="OneChanStereo_16_2" decode="invalid"/>
|
||||
<scenario encode="OneChanMono_24_2" decode="invalid"/>
|
||||
<scenario encode="TwoChanStereo_24_2" decode="invalid"/>
|
||||
<scenario encode="OneChanStereo_24_2" decode="invalid"/>
|
||||
<scenario encode="OneChanMono_48_4" decode="invalid"/>
|
||||
<scenario encode="TwoChanStereo_48_4" decode="invalid"/>
|
||||
<scenario encode="OneChanStereo_48_4" decode="invalid"/>
|
||||
<!-- encode and decode -->
|
||||
<scenario encode="OneChanStereo_16_1" decode="OneChanStereo_16_1"/>
|
||||
<scenario encode="OneChanStereo_16_1" decode="OneChanMono_16_1"/>
|
||||
<scenario encode="TwoChanStereo_16_1" decode="OneChanMono_16_1"/>
|
||||
<scenario encode="OneChanMono_16_1" decode="OneChanMono_16_1"/>
|
||||
<scenario encode="OneChanStereo_16_2" decode="OneChanStereo_16_2"/>
|
||||
<scenario encode="OneChanStereo_16_2" decode="OneChanMono_16_2"/>
|
||||
<scenario encode="TwoChanStereo_16_2" decode="OneChanMono_16_2"/>
|
||||
<scenario encode="OneChanMono_16_2" decode="OneChanMono_16_2"/>
|
||||
<scenario encode="TwoChanStereo_32_2" decode="OneChanMono_32_2"/>
|
||||
<scenario encode="OneChanMono_32_2" decode="OneChanMono_32_2"/>
|
||||
</scenarioList>
|
||||
<configurationList>
|
||||
<configuration name="OneChanMono_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="TwoChanStereo_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
|
||||
<configuration name="OneChanStereo_16_1" codecConfiguration="LC3_16k_1" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="OneChanMono_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="TwoChanStereo_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
|
||||
<configuration name="OneChanStereo_16_2" codecConfiguration="LC3_16k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="OneChanMono_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="TwoChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
|
||||
<configuration name="OneChanStereo_24_2" codecConfiguration="LC3_24k_2" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="OneChanMono_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="TwoChanStereo_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
|
||||
<configuration name="OneChanMono_32_2" codecConfiguration="LC3_32k_2" strategyConfiguration="MONO_ONE_CIS_PER_DEVICE"/>
|
||||
<configuration name="TwoChanStereo_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="STEREO_TWO_CISES_PER_DEVICE"/>
|
||||
<configuration name="OneChanStereo_48_4" codecConfiguration="LC3_48k_4" strategyConfiguration="STEREO_ONE_CIS_PER_DEVICE"/>
|
||||
</configurationList>
|
||||
<codecConfigurationList>
|
||||
<codecConfiguration name="LC3_16k_1" codec="LC3" samplingFrequency="16000" frameDurationUs="7500" octetsPerCodecFrame="30"/>
|
||||
<codecConfiguration name="LC3_16k_2" codec="LC3" samplingFrequency="16000" frameDurationUs="10000" octetsPerCodecFrame="40"/>
|
||||
<codecConfiguration name="LC3_24k_2" codec="LC3" samplingFrequency="24000" frameDurationUs="10000" octetsPerCodecFrame="60"/>
|
||||
<codecConfiguration name="LC3_32k_2" codec="LC3" samplingFrequency="32000" frameDurationUs="10000" octetsPerCodecFrame="80"/>
|
||||
<codecConfiguration name="LC3_48k_4" codec="LC3" samplingFrequency="48000" frameDurationUs="10000" octetsPerCodecFrame="120"/>
|
||||
</codecConfigurationList>
|
||||
<strategyConfigurationList>
|
||||
<strategyConfiguration name="STEREO_ONE_CIS_PER_DEVICE" audioLocation="STEREO" connectedDevice="2" channelCount="1"/>
|
||||
<strategyConfiguration name="STEREO_TWO_CISES_PER_DEVICE" audioLocation="STEREO" connectedDevice="1" channelCount="2"/>
|
||||
<strategyConfiguration name="MONO_ONE_CIS_PER_DEVICE" audioLocation="MONO" connectedDevice="1" channelCount="1"/>
|
||||
</strategyConfigurationList>
|
||||
</leAudioOffloadSetting>
|
|
@ -1,56 +0,0 @@
|
|||
<manifest version="1.0" type="device">
|
||||
<hal format="hidl">
|
||||
<name>android.hardware.bluetooth</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.1</version>
|
||||
<interface>
|
||||
<name>IBluetoothHci</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.bt_channel_avoidance</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.0</version>
|
||||
<interface>
|
||||
<name>IBTChannelAvoidance</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.sar</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.1</version>
|
||||
<interface>
|
||||
<name>IBluetoothSar</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.ext</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.0</version>
|
||||
<interface>
|
||||
<name>IBluetoothExt</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.ccc</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.1</version>
|
||||
<interface>
|
||||
<name>IBluetoothCcc</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.ewp</name>
|
||||
<transport>hwbinder</transport>
|
||||
<version>1.0</version>
|
||||
<interface>
|
||||
<name>IBluetoothEwp</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
</manifest>
|
|
@ -11,9 +11,6 @@ on post-fs-data
|
|||
chown system system /sys/devices/platform/odm/odm:fp_fpc1020/irq
|
||||
chown system system /sys/devices/platform/odm/odm:fp_fpc1020/wakeup_enable
|
||||
|
||||
on fs
|
||||
exec_background - system shell -- /vendor/bin/trusty_apploader /vendor/firmware/1540.app
|
||||
|
||||
# Permissions for hwcomposer
|
||||
on fs
|
||||
chown system system /sys/class/backlight/panel1-backlight/als_table
|
||||
|
@ -56,24 +53,6 @@ on property:vendor.device.modules.ready=1
|
|||
chown system input /dev/touch_offload_fts_ext
|
||||
chmod 660 /dev/touch_offload_fts
|
||||
chmod 660 /dev/touch_offload_fts_ext
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/force_active
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/fw_ver
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ms_base
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ms_diff
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ms_raw
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/self_test
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ss_base
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ss_diff
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.0/ss_raw
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/force_active
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/fw_ver
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ms_base
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ms_diff
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ms_raw
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/self_test
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ss_base
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ss_diff
|
||||
chown system system /sys/devices/virtual/goog_touch_interface/gti.1/ss_raw
|
||||
# Start the twoshay touch service
|
||||
start twoshay
|
||||
|
||||
|
@ -105,7 +84,7 @@ on early-boot
|
|||
wait_for_prop vendor.common.modules.ready 1
|
||||
start insmod_sh_felix
|
||||
|
||||
service insmod_sh_felix /vendor/bin/init.insmod.sh /vendor/etc/init.insmod.felix.cfg
|
||||
service insmod_sh_felix /vendor/bin/insmod.sh /vendor/etc/init.insmod.felix.cfg
|
||||
class main
|
||||
user root
|
||||
group root system
|
||||
|
@ -127,6 +106,10 @@ on property:vendor.mfgapi.touchpanel.permission=1
|
|||
on property:persist.device_config.vendor_system_native_boot.thermal_proactive_skin=1
|
||||
setprop vendor.thermal.config "thermal_info_config_proactive_skin.json"
|
||||
|
||||
on property:vendor.thermal.link_ready=1
|
||||
write /dev/thermal/tz-by-name/skin_therm/trip_point_1_temp 61000
|
||||
write /dev/thermal/tz-by-name/skin_therm/trip_point_2_temp 63000
|
||||
|
||||
# Bluetooth
|
||||
on post-fs-data
|
||||
chown bluetooth system /proc/bluetooth/timesync
|
||||
|
@ -138,6 +121,9 @@ on post-fs-data
|
|||
on init && property:ro.bootmode=normal
|
||||
write /sys/devices/platform/hall_sensor/enable 0
|
||||
|
||||
on init && property:ro.bootmode=unknown
|
||||
write /sys/devices/platform/hall_sensor/enable 0
|
||||
|
||||
on init && property:ro.bootmode=factory
|
||||
write /sys/devices/platform/hall_sensor/enable 0
|
||||
|
||||
|
@ -161,14 +147,6 @@ on post-fs-data
|
|||
setprop wifi.direct.interface p2p-dev-wlan0
|
||||
setprop wifi.aware.interface aware_nmi0
|
||||
|
||||
# Override SF and RE uclamps to 0 on boot after being set elsewhere, for adpf cpu hints
|
||||
on property:sys.boot_completed=1
|
||||
trigger override-sf-uclamp
|
||||
|
||||
on override-sf-uclamp
|
||||
write /proc/vendor_sched/rt_uclamp_min 0
|
||||
write /proc/vendor_sched/sf_uclamp_min 0
|
||||
|
||||
# For Japan sku, always enforce camera shutter sound
|
||||
# Since this property is read by the audio server in system service,
|
||||
# it should be written by the system init.
|
||||
|
|
|
@ -31,7 +31,10 @@ include device/google/felix/audio/felix/audio-tables.mk
|
|||
include device/google/gs201/device-shipping-common.mk
|
||||
$(call soong_config_set,fp_hal_feature,pixel_product, product_a)
|
||||
include device/google/felix/vibrator/cs40l26/device.mk
|
||||
include device/google/gs101/bluetooth/bluetooth.mk
|
||||
include device/google/gs-common/bcmbt/bluetooth.mk
|
||||
include device/google/gs-common/display/dump_second_display.mk
|
||||
include device/google/gs-common/touch/gti/gti.mk
|
||||
include device/google/gs-common/touch/stm/stm6.mk
|
||||
ifeq ($(filter factory_felix, $(TARGET_PRODUCT)),)
|
||||
include device/google/felix/uwb/uwb_calibration.mk
|
||||
endif
|
||||
|
@ -121,13 +124,6 @@ PRODUCT_COPY_FILES += \
|
|||
device/google/felix/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
|
||||
|
||||
# Bluetooth HAL
|
||||
DEVICE_MANIFEST_FILE += \
|
||||
device/google/felix/bluetooth/manifest_bluetooth.xml
|
||||
PRODUCT_SOONG_NAMESPACES += \
|
||||
vendor/broadcom/bluetooth
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.bluetooth@1.1-service.bcmbtlinux \
|
||||
bt_vendor.conf
|
||||
PRODUCT_COPY_FILES += \
|
||||
device/google/felix/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
|
@ -156,6 +152,22 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||
ro.audio.spatializer_transaural_enabled_default=false \
|
||||
persist.vendor.audio.spatializer.speaker_enabled=true
|
||||
|
||||
# Bluetooth SAR test tool
|
||||
PRODUCT_PACKAGES_DEBUG += \
|
||||
sar_test
|
||||
|
||||
# Bluetooth hci_inject test tool
|
||||
PRODUCT_PACKAGES_DEBUG += \
|
||||
hci_inject
|
||||
|
||||
# Bluetooth
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
persist.bluetooth.a2dp_aac.vbr_supported=true
|
||||
|
||||
# default BDADDR for EVB only
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.vendor.bluetooth.evb_bdaddr="22:22:22:33:44:55"
|
||||
|
||||
# Keymaster HAL
|
||||
#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
|
||||
|
||||
|
@ -186,10 +198,6 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||
# ro.hardware.keystore=software \
|
||||
# ro.hardware.gatekeeper=software
|
||||
|
||||
# default BDADDR for EVB only
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.vendor.bluetooth.evb_bdaddr="22:22:22:33:44:55"
|
||||
|
||||
# PowerStats HAL
|
||||
PRODUCT_SOONG_NAMESPACES += \
|
||||
device/google/felix/powerstats/felix \
|
||||
|
@ -197,7 +205,7 @@ PRODUCT_SOONG_NAMESPACES += \
|
|||
|
||||
# Increment the SVN for any official public releases
|
||||
PRODUCT_VENDOR_PROPERTIES += \
|
||||
ro.vendor.build.svn=1
|
||||
ro.vendor.build.svn=24
|
||||
|
||||
# Vibrator HAL
|
||||
PRODUCT_VENDOR_PROPERTIES +=\
|
||||
|
@ -219,23 +227,8 @@ PRODUCT_PRODUCT_PROPERTIES += \
|
|||
|
||||
# DCK properties based on target
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.gms.dck.eligible_wcc=3
|
||||
|
||||
# Bluetooth SAR test tool
|
||||
PRODUCT_PACKAGES_DEBUG += \
|
||||
sar_test
|
||||
|
||||
# Bluetooth hci_inject test tool
|
||||
PRODUCT_PACKAGES_DEBUG += \
|
||||
hci_inject
|
||||
|
||||
# Bluetooth
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
persist.bluetooth.a2dp_aac.vbr_supported=true
|
||||
|
||||
# Bluetooth HAL
|
||||
PRODUCT_PACKAGES += \
|
||||
bt_vendor.conf
|
||||
ro.gms.dck.eligible_wcc=3 \
|
||||
ro.gms.dck.se_capability=1
|
||||
|
||||
# Graphics
|
||||
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_frame_rate_override=true
|
||||
|
@ -281,8 +274,8 @@ else
|
|||
device/google/felix/location/scd_user.conf.f10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
|
||||
endif
|
||||
|
||||
# WiFi
|
||||
PRODUCT_PACKAGES += \
|
||||
UwbOverlayF10 \
|
||||
WifiOverlay2023Mid_F10
|
||||
|
||||
# MIPI Coex Configs
|
||||
|
@ -298,10 +291,6 @@ DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/felix/device_framework
|
|||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
|
||||
|
||||
# Enable adpf cpu hint session for SurfaceFlinger
|
||||
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
|
||||
debug.sf.enable_adpf_cpu_hint=true
|
||||
|
||||
# Increase thread priority for nodes stop
|
||||
PRODUCT_VENDOR_PROPERTIES += \
|
||||
persist.vendor.camera.increase_thread_priority_nodes_stop=true
|
||||
|
@ -312,7 +301,9 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||
|
||||
# Camera
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
persist.vendor.camera.adjust_backend_min_freq_for_1p_front_video_1080p_30fps=1 \
|
||||
persist.vendor.camera.extended_launch_boost=1 \
|
||||
persist.vendor.camera.multicam_streaming_boost=1 \
|
||||
persist.vendor.camera.optimized_tnr_freq=1 \
|
||||
persist.vendor.camera.raise_buf_allocation_priority=1 \
|
||||
persist.vendor.camera.start_cpu_throttling_at_moderate_thermal=1 \
|
||||
|
@ -338,3 +329,38 @@ ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
|
|||
PRODUCT_COPY_FILES += \
|
||||
device/google/gs201/init.hardware.wlc.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.wlc.rc
|
||||
endif
|
||||
|
||||
# Bluetooth LE Audio
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
ro.bluetooth.leaudio_offload.supported=true \
|
||||
persist.bluetooth.leaudio_offload.disabled=false \
|
||||
ro.bluetooth.leaudio_switcher.supported=true \
|
||||
bluetooth.profile.bap.unicast.client.enabled=true \
|
||||
bluetooth.profile.csip.set_coordinator.enabled=true \
|
||||
bluetooth.profile.hap.client.enabled=true \
|
||||
bluetooth.profile.mcp.server.enabled=true \
|
||||
bluetooth.profile.ccp.server.enabled=true \
|
||||
bluetooth.profile.vcp.controller.enabled=true \
|
||||
|
||||
# Override BQR mask to enable LE Audio Choppy report
|
||||
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
persist.bluetooth.bqr.event_mask=262238
|
||||
else
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
persist.bluetooth.bqr.event_mask=94
|
||||
endif
|
||||
|
||||
# Bluetooth LE Audio CIS handover to SCO
|
||||
# Set the property only if the controller doesn't support CIS and SCO
|
||||
# simultaneously. More details in b/242908683.
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
persist.bluetooth.leaudio.notify.idle.during.call=true
|
||||
|
||||
# LE Audio Offload Capabilities Setting
|
||||
PRODUCT_COPY_FILES += \
|
||||
device/google/felix/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
|
||||
|
||||
# Bluetooth EWP test tool
|
||||
PRODUCT_PACKAGES_DEBUG += \
|
||||
ewp_tool
|
||||
|
|
|
@ -1,18 +1,10 @@
|
|||
<compatibility-matrix version="1.0" type="framework" level="7">
|
||||
<hal format="aidl" optional="true">
|
||||
<name>com.google.hardware.pixel.display</name>
|
||||
<version>7</version>
|
||||
<version>8</version>
|
||||
<interface>
|
||||
<name>IDisplay</name>
|
||||
<instance>secondary</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
<hal format="hidl">
|
||||
<name>hardware.google.bluetooth.ccc</name>
|
||||
<version>1.1</version>
|
||||
<interface>
|
||||
<name>IBluetoothCcc</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
</compatibility-matrix>
|
||||
|
|
|
@ -20,6 +20,13 @@ BOARD_USES_GENERIC_AUDIO := true
|
|||
USES_DEVICE_GOOGLE_FELIX := true
|
||||
BOARD_KERNEL_CMDLINE += swiotlb=noforce
|
||||
|
||||
# Enable load module in parallel
|
||||
BOARD_BOOTCONFIG += androidboot.load_modules_parallel=true
|
||||
|
||||
# The modules which need to be loaded in sequential
|
||||
BOARD_KERNEL_CMDLINE += exynos_drm.load_sequential=1
|
||||
BOARD_KERNEL_CMDLINE += panel-samsung-ana6707-f10.load_sequential=1
|
||||
|
||||
#Display
|
||||
USES_IDISPLAY_INTF_SEC := true
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,36 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
**
|
||||
** Copyright 2023, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License")
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
<irq-device-map>
|
||||
<device name="rtc-alarm0">
|
||||
<subsystem>Alarm</subsystem>
|
||||
</device>
|
||||
<device name="dhdpcie_host_wake">
|
||||
<subsystem>Wifi</subsystem>
|
||||
</device>
|
||||
<device name="cp2ap_wakeup">
|
||||
<subsystem>Cellular_data</subsystem>
|
||||
</device>
|
||||
<device name="MAILBOX_AOCF12APx1100">
|
||||
<subsystem>Sound_trigger</subsystem>
|
||||
</device>
|
||||
<device name="MAILBOX_AOCA322APx100">
|
||||
<subsystem>Sensor</subsystem>
|
||||
</device>
|
||||
</irq-device-map>
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
* Copyright (c) 2023, The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
-->
|
||||
<resources>
|
||||
<!-- Weather clock smartspace scaling to apply for the weather clock on tablets -->
|
||||
<item name="weather_clock_smartspace_scale" type="dimen" format="float">0.85</item>
|
||||
<dimen name="weather_clock_smartspace_translateX">-40dp</dimen>
|
||||
<dimen name="weather_clock_smartspace_translateY">-26dp</dimen>
|
||||
</resources>
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
* Copyright (c) 2023, The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
-->
|
||||
<resources>
|
||||
<!-- Weather clock smartspace scaling to apply for the weather clock on tablets -->
|
||||
<dimen name="weather_clock_smartspace_translateX">-8dp</dimen>
|
||||
<dimen name="weather_clock_smartspace_translateY">-16dp</dimen>
|
||||
</resources>
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
* Copyright (c) 2023, The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
-->
|
||||
<resources>
|
||||
<!-- Weather clock smartspace positioning to apply for the weather clock on tablets -->
|
||||
<dimen name="weather_clock_smartspace_translateX">-15dp</dimen>
|
||||
<dimen name="weather_clock_smartspace_translateY">-26dp</dimen>
|
||||
</resources>
|
|
@ -19,4 +19,17 @@
|
|||
<item>G9FPL</item>
|
||||
<item>G0B96</item>
|
||||
</string-array>
|
||||
<bool name="tag_intent_app_pref_supported">true</bool>
|
||||
<!-- NFC Antenna Location API -->
|
||||
<integer name="device_width">160</integer>
|
||||
<integer name="device_height">140</integer>
|
||||
<bool name="device_foldable">true</bool>
|
||||
<integer-array name="antenna_x">
|
||||
<item>90</item>
|
||||
<item>30</item>
|
||||
</integer-array>
|
||||
<integer-array name="antenna_y">
|
||||
<item>103</item>
|
||||
<item>103</item>
|
||||
</integer-array>
|
||||
</resources>
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2023 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<resources>
|
||||
<!-- Lock pattern view size, align sysui biometric_auth_pattern_view_size -->
|
||||
<dimen name="biometric_auth_pattern_view_size">290dp</dimen>
|
||||
|
||||
</resources>
|
|
@ -4,7 +4,8 @@ GOOGLE_CONFIG_FP_STATUS=1
|
|||
FPC_CONFIG_TRUSTY_CLEAN_TA=1
|
||||
else
|
||||
# Non factory build, use fingerprint AIDL version
|
||||
GOOGLE_CONFIG_POWER_NODE=/dev/input/event1
|
||||
GOOGLE_CONFIG_POWER_NODE=/dev/input/event2
|
||||
GOOGLE_CONFIG_DP_COUNT=2
|
||||
GOOGLE_CONFIG_FP_STATUS=1
|
||||
GOOGLE_CONFIG_TOUCH_TO_UNLOCK_ANYTIME=1
|
||||
endif
|
||||
|
|
|
@ -10,8 +10,7 @@ modprobe|bcmdhd4389.ko
|
|||
modprobe|snd-soc-cs35l41-i2c.ko
|
||||
modprobe|fst2.ko
|
||||
modprobe|ftm5.ko
|
||||
modprobe|cl_dsp.ko
|
||||
modprobe|input-cs40l26-i2c.ko
|
||||
modprobe|cs40l26-i2c.ko
|
||||
modprobe|snd-soc-cs40l26.ko
|
||||
|
||||
# All device specific modules loaded
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
SuplVersion="2"
|
||||
SuplMinorVersion="0"
|
||||
SuplOtdoaCapable="true"
|
||||
SuplOtdoaCapable2="true"
|
||||
SuplOtdoaCapable2="false"
|
||||
SuplGlonassCapable = "true"
|
||||
SuplGalileoCapable = "true"
|
||||
SuplBdsCapable = "true"
|
||||
|
@ -88,6 +88,7 @@
|
|||
EnableOnChipStopNotification="2"
|
||||
PowerMode="3"
|
||||
MinGpsWeekNumber="2216"
|
||||
OnChipAccMask="50"
|
||||
/>
|
||||
|
||||
<gll_features
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
SuplVersion="2"
|
||||
SuplMinorVersion="0"
|
||||
SuplOtdoaCapable="true"
|
||||
SuplOtdoaCapable2="true"
|
||||
SuplOtdoaCapable2="false"
|
||||
SuplGlonassCapable = "true"
|
||||
SuplGalileoCapable = "true"
|
||||
SuplBdsCapable = "true"
|
||||
|
@ -87,6 +87,7 @@
|
|||
EnableOnChipStopNotification="0"
|
||||
PowerMode="3"
|
||||
MinGpsWeekNumber="2216"
|
||||
OnChipAccMask="50"
|
||||
/>
|
||||
|
||||
<gll_features
|
||||
|
|
238
powerhint.json
238
powerhint.json
|
@ -1,5 +1,18 @@
|
|||
{
|
||||
"Nodes": [
|
||||
{
|
||||
"Name": "GPUMinFreq",
|
||||
"Path": "/sys/devices/platform/28000000.mali/hint_min_freq",
|
||||
"Values": [
|
||||
"848000",
|
||||
"762000",
|
||||
"572000",
|
||||
"471000",
|
||||
"302000",
|
||||
"202000"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
},
|
||||
{
|
||||
"Name": "MemFreq",
|
||||
"Path": "/sys/devices/platform/17000010.devfreq_mif/devfreq/17000010.devfreq_mif/min_freq",
|
||||
|
@ -114,19 +127,6 @@
|
|||
],
|
||||
"ResetOnInit": true
|
||||
},
|
||||
{
|
||||
"Name": "GPUMinFreq",
|
||||
"Path": "/sys/devices/platform/28000000.mali/hint_min_freq",
|
||||
"Values": [
|
||||
"848000",
|
||||
"762000",
|
||||
"572000",
|
||||
"471000",
|
||||
"302000",
|
||||
"202000"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
},
|
||||
{
|
||||
"Name": "GPUDvfsPeriod",
|
||||
"Path": "/sys/devices/platform/28000000.mali/dvfs_period",
|
||||
|
@ -155,6 +155,16 @@
|
|||
"DefaultIndex": 0,
|
||||
"ResetOnInit": true
|
||||
},
|
||||
{
|
||||
"Name": "CPUDVFSHeadroom",
|
||||
"Path": "/proc/vendor_sched/dvfs_headroom",
|
||||
"Values": [
|
||||
"1280",
|
||||
"1100 1078 1024"
|
||||
],
|
||||
"DefaultIndex": 0,
|
||||
"ResetOnInit": true
|
||||
},
|
||||
{
|
||||
"Name": "MIFTargetLoad",
|
||||
"Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
|
||||
|
@ -169,7 +179,7 @@
|
|||
"Name": "CAMUClampBoost",
|
||||
"Path": "/proc/vendor_sched/cam_uclamp_min",
|
||||
"Values": [
|
||||
"612",
|
||||
"764",
|
||||
"0"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
|
@ -178,7 +188,7 @@
|
|||
"Name": "TAUClampBoost",
|
||||
"Path": "/proc/vendor_sched/ta_uclamp_min",
|
||||
"Values": [
|
||||
"612",
|
||||
"764",
|
||||
"1"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
|
@ -196,8 +206,8 @@
|
|||
"Name": "MLUclampBoost",
|
||||
"Path": "/proc/vendor_sched/nnapi_uclamp_min",
|
||||
"Values": [
|
||||
"180",
|
||||
"650"
|
||||
"225",
|
||||
"813"
|
||||
],
|
||||
"DefaultIndex": 0,
|
||||
"ResetOnInit": true
|
||||
|
@ -345,6 +355,7 @@
|
|||
"Path": "/sys/devices/platform/17000030.devfreq_intcam/devfreq/17000030.devfreq_intcam/min_freq",
|
||||
"Values": [
|
||||
"664000",
|
||||
"233000",
|
||||
"67000"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
|
@ -364,6 +375,7 @@
|
|||
"Path": "/sys/devices/platform/17000060.devfreq_tnr/devfreq/17000060.devfreq_tnr/min_freq",
|
||||
"Values": [
|
||||
"664000",
|
||||
"233000",
|
||||
"67000"
|
||||
],
|
||||
"ResetOnInit": true
|
||||
|
@ -560,6 +572,16 @@
|
|||
"0,1,2,3,4,5,6,7"
|
||||
],
|
||||
"Type": "Property"
|
||||
},
|
||||
{
|
||||
"Name": "Dex2oatGroup",
|
||||
"Path": "/proc/vendor_sched/dex2oat_ug",
|
||||
"Values": [
|
||||
"1",
|
||||
"0"
|
||||
],
|
||||
"DefaultIndex": 0,
|
||||
"ResetOnInit": true
|
||||
}
|
||||
],
|
||||
"Actions": [
|
||||
|
@ -632,7 +654,7 @@
|
|||
"PowerHint": "LAUNCH",
|
||||
"Node": "TAUClampBoost",
|
||||
"Duration": 5000,
|
||||
"Value": "612"
|
||||
"Value": "764"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LAUNCH",
|
||||
|
@ -699,6 +721,18 @@
|
|||
"Duration": 2000,
|
||||
"Value": "9999999"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CPU_LOAD_RESET",
|
||||
"Node": "GPUMinFreq",
|
||||
"Duration": 50,
|
||||
"Value": "302000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CPU_LOAD_RESET",
|
||||
"Node": "MemFreq",
|
||||
"Duration": 33,
|
||||
"Value": "1014000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_LAUNCH",
|
||||
"Node": "MemFreq",
|
||||
|
@ -745,7 +779,7 @@
|
|||
"PowerHint": "CAMERA_LAUNCH",
|
||||
"Node": "CAMUClampBoost",
|
||||
"Duration": 1000,
|
||||
"Value": "612"
|
||||
"Value": "764"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_LAUNCH",
|
||||
|
@ -1143,6 +1177,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "1100 1078 1024"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_STREAMING_HIGH",
|
||||
"Node": "CPUDVFSHeadroom",
|
||||
"Duration": 0,
|
||||
"Value": "1100 1078 1024"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_STREAMING_HIGH",
|
||||
"Node": "CPUMidClusterMaxFreq",
|
||||
|
@ -1317,6 +1357,24 @@
|
|||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_MULTI_CAM_STREAMING",
|
||||
"Node": "CPUBigClusterMaxFreq",
|
||||
"Duration": 0,
|
||||
"Value": "9999999"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_MULTI_CAM_STREAMING",
|
||||
"Node": "CPUMidClusterMaxFreq",
|
||||
"Duration": 0,
|
||||
"Value": "9999999"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_MULTI_CAM_STREAMING",
|
||||
"Node": "CPULittleClusterMaxFreq",
|
||||
"Duration": 0,
|
||||
"Value": "9999999"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_VIDEO_RECORDING",
|
||||
"Type": "MaskHint",
|
||||
|
@ -1349,6 +1407,18 @@
|
|||
"Duration": 0,
|
||||
"Value": "302000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_ADJUST_BACKEND_MIN_FREQ",
|
||||
"Node": "INTCAMFreq",
|
||||
"Duration": 0,
|
||||
"Value": "233000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_ADJUST_BACKEND_MIN_FREQ",
|
||||
"Node": "TNRFreq",
|
||||
"Duration": 0,
|
||||
"Value": "233000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "CAMERA_TNR_LOW",
|
||||
"Node": "TNRMaxFreq",
|
||||
|
@ -1487,6 +1557,72 @@
|
|||
"Duration": 0,
|
||||
"Value": "1"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "BigControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "MidControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "LittleControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "G3dControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "TpuControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "AurControlTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "80000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "BigSwitchOnTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "60000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "MidSwitchOnTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "60000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "LittleSwitchOnTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "60000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "G3dSwitchOnTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "60000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "LOW_POWER",
|
||||
"Node": "TpuSwitchOnTempSet",
|
||||
"Duration": 0,
|
||||
"Value": "60000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "REFRESH_120FPS",
|
||||
"Node": "TAUClampBoost",
|
||||
|
@ -1552,12 +1688,6 @@
|
|||
"Duration": 0,
|
||||
"Value": "572000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "ADPF_FIRST_FRAME",
|
||||
"Node": "GPUMinFreq",
|
||||
"Duration": 50,
|
||||
"Value": "302000"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT",
|
||||
"Node": "PMU_POLL",
|
||||
|
@ -1648,6 +1778,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "0,1,2,3"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT",
|
||||
"Node": "Dex2oatGroup",
|
||||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE",
|
||||
"Node": "PMU_POLL",
|
||||
|
@ -1738,6 +1874,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "0,1,2,3"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE",
|
||||
"Node": "Dex2oatGroup",
|
||||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE",
|
||||
"Node": "PMU_POLL",
|
||||
|
@ -1828,6 +1970,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "0,1,2,3"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE",
|
||||
"Node": "Dex2oatGroup",
|
||||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL",
|
||||
"Node": "PMU_POLL",
|
||||
|
@ -1918,6 +2066,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "0,1,2,3"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL",
|
||||
"Node": "Dex2oatGroup",
|
||||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY",
|
||||
"Node": "PMU_POLL",
|
||||
|
@ -2026,6 +2180,12 @@
|
|||
"Duration": 0,
|
||||
"Value": "0,1,2,3"
|
||||
},
|
||||
{
|
||||
"PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY",
|
||||
"Node": "Dex2oatGroup",
|
||||
"Duration": 0,
|
||||
"Value": "0"
|
||||
},
|
||||
{
|
||||
"PowerHint": "FACE_UNLOCK_BOOST",
|
||||
"Node": "CPUBigClusterMaxFreq",
|
||||
|
@ -2096,7 +2256,7 @@
|
|||
"PowerHint": "ML_ACC",
|
||||
"Node": "MLUclampBoost",
|
||||
"Duration": 2000,
|
||||
"Value": "650"
|
||||
"Value": "813"
|
||||
},
|
||||
{
|
||||
"PowerHint": "ML_ACC",
|
||||
|
@ -2118,8 +2278,8 @@
|
|||
"PID_Do": 500.0,
|
||||
"PID_Du": 0.0,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 185,
|
||||
"UclampMin_High": 384,
|
||||
"UclampMin_Init": 232,
|
||||
"UclampMin_High": 480,
|
||||
"UclampMin_Low": 2,
|
||||
"SamplingWindow_P": 1,
|
||||
"SamplingWindow_I": 0,
|
||||
|
@ -2142,8 +2302,8 @@
|
|||
"PID_Do": 500.0,
|
||||
"PID_Du": 0.0,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 129,
|
||||
"UclampMin_High": 384,
|
||||
"UclampMin_Init": 162,
|
||||
"UclampMin_High": 480,
|
||||
"UclampMin_Low": 2,
|
||||
"SamplingWindow_P": 1,
|
||||
"SamplingWindow_I": 0,
|
||||
|
@ -2166,8 +2326,8 @@
|
|||
"PID_Do": 500.0,
|
||||
"PID_Du": 0.0,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 129,
|
||||
"UclampMin_High": 384,
|
||||
"UclampMin_Init": 162,
|
||||
"UclampMin_High": 480,
|
||||
"UclampMin_Low": 2,
|
||||
"SamplingWindow_P": 1,
|
||||
"SamplingWindow_I": 0,
|
||||
|
@ -2193,9 +2353,9 @@
|
|||
"SamplingWindow_I": 1,
|
||||
"SamplingWindow_D": 1,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 200,
|
||||
"UclampMin_High": 157,
|
||||
"UclampMin_Low": 157,
|
||||
"UclampMin_Init": 250,
|
||||
"UclampMin_High": 197,
|
||||
"UclampMin_Low": 197,
|
||||
"ReportingRateLimitNs": 1,
|
||||
"EarlyBoost_On": false,
|
||||
"EarlyBoost_TimeFactor": 0.0,
|
||||
|
@ -2217,9 +2377,9 @@
|
|||
"SamplingWindow_I": 1,
|
||||
"SamplingWindow_D": 1,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 200,
|
||||
"UclampMin_High": 42,
|
||||
"UclampMin_Low": 42,
|
||||
"UclampMin_Init": 250,
|
||||
"UclampMin_High": 53,
|
||||
"UclampMin_Low": 53,
|
||||
"ReportingRateLimitNs": 1,
|
||||
"EarlyBoost_On": false,
|
||||
"EarlyBoost_TimeFactor": 0.0,
|
||||
|
@ -2241,7 +2401,7 @@
|
|||
"SamplingWindow_I": 1,
|
||||
"SamplingWindow_D": 1,
|
||||
"UclampMin_On": true,
|
||||
"UclampMin_Init": 200,
|
||||
"UclampMin_Init": 250,
|
||||
"UclampMin_High": 0,
|
||||
"UclampMin_Low": 0,
|
||||
"ReportingRateLimitNs": 1,
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#include <android/binder_manager.h>
|
||||
#include <android/binder_process.h>
|
||||
#include <log/log.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
using aidl::android::hardware::power::stats::DevfreqStateResidencyDataProvider;
|
||||
using aidl::android::hardware::power::stats::DisplayStateResidencyDataProvider;
|
||||
|
@ -39,7 +40,9 @@ void addDisplay(std::shared_ptr<PowerStats> p) {
|
|||
// Add display residency stats for inner display
|
||||
std::vector<std::string> inner_states = {
|
||||
"Off",
|
||||
"LP: 1840x2208@1",
|
||||
"LP: 1840x2208@30",
|
||||
"On: 1840x2208@1",
|
||||
"On: 1840x2208@10",
|
||||
"On: 1840x2208@60",
|
||||
"On: 1840x2208@120",
|
||||
|
@ -138,6 +141,18 @@ void addGPU(std::shared_ptr<PowerStats> p) {
|
|||
stateCoeffs));
|
||||
}
|
||||
|
||||
std::string getNfcPath() {
|
||||
struct stat buffer;
|
||||
int size = 128;
|
||||
char path[size];
|
||||
for (int i = 0; i < 10; i++) {
|
||||
std::snprintf(path, size,
|
||||
"/sys/devices/platform/10970000.hsi2c/i2c-%d/i2c-st21nfc/power_stats", i);
|
||||
if (!stat(path, &buffer)) break;
|
||||
}
|
||||
return std::string(path);
|
||||
}
|
||||
|
||||
int main() {
|
||||
LOG(INFO) << "Pixel PowerStats HAL AIDL Service is starting.";
|
||||
|
||||
|
@ -158,7 +173,7 @@ int main() {
|
|||
addWifi(p);
|
||||
addTPU(p);
|
||||
addUfs(p);
|
||||
addNFC(p, "/sys/devices/platform/10970000.hsi2c/i2c-4/i2c-st21nfc/power_stats");
|
||||
addNFC(p, getNfcPath());
|
||||
addUwb(p);
|
||||
addPowerDomains(p);
|
||||
addDevfreq(p);
|
||||
|
|
18
rro_overlays/UwbOverlay/Android.bp
Normal file
18
rro_overlays/UwbOverlay/Android.bp
Normal file
|
@ -0,0 +1,18 @@
|
|||
package {
|
||||
// See: http://go/android-license-faq
|
||||
// A large-scale-change added 'default_applicable_licenses' to import
|
||||
// all of the 'license_kinds' from "//device/google/felix:device_google_felix_license"
|
||||
// to get the below license kinds:
|
||||
// SPDX-license-identifier-Apache-2.0
|
||||
default_applicable_licenses: [
|
||||
"//device/google/felix:device_google_felix_license",
|
||||
],
|
||||
}
|
||||
|
||||
runtime_resource_overlay {
|
||||
name: "UwbOverlayF10",
|
||||
theme: "UwbOverlayF10",
|
||||
certificate: "platform",
|
||||
sdk_version: "current",
|
||||
product_specific: true
|
||||
}
|
27
rro_overlays/UwbOverlay/AndroidManifest.xml
Normal file
27
rro_overlays/UwbOverlay/AndroidManifest.xml
Normal file
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2022 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!-- Pixel specific uwb overlays -->
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.android.uwb.resources.pixel"
|
||||
android:versionCode="1"
|
||||
android:versionName="1.0">
|
||||
<application android:hasCode="false" />
|
||||
<overlay
|
||||
android:targetPackage="com.android.uwb.resources"
|
||||
android:targetName="UwbCustomization"
|
||||
android:isStatic="true"
|
||||
android:priority="0"/>
|
||||
</manifest>
|
3
rro_overlays/UwbOverlay/OWNERS
Normal file
3
rro_overlays/UwbOverlay/OWNERS
Normal file
|
@ -0,0 +1,3 @@
|
|||
# People who can approve changes for submission
|
||||
include platform/packages/modules/Uwb:/OWNERS
|
||||
victorliu@google.com
|
26
rro_overlays/UwbOverlay/res/values/config.xml
Normal file
26
rro_overlays/UwbOverlay/res/values/config.xml
Normal file
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
-->
|
||||
<resources>
|
||||
<!-- When true, the filter engine will alter UWB values to improve accuracy. -->
|
||||
<bool name="enable_filters">true</bool>
|
||||
|
||||
<!-- Enables the AoA conversion primer. This is needed on hardware that does not convert AoA
|
||||
to spherical coordinates, including hardware that does not support elevation.-->
|
||||
<bool name="enable_primer_aoa">true</bool>
|
||||
</resources>
|
|
@ -56,6 +56,7 @@
|
|||
|
||||
<!-- True if the firmware supports connected MAC randomization -->
|
||||
<bool name="config_wifi_connected_mac_randomization_supported">true</bool>
|
||||
<bool name="config_wifiAllowNonPersistentMacRandomizationOnOpenSsids">true</bool>
|
||||
|
||||
<!-- True if the firmware supports p2p MAC randomization -->
|
||||
<bool name="config_wifi_p2p_mac_randomization_supported">true</bool>
|
||||
|
@ -152,4 +153,18 @@
|
|||
|
||||
<!-- Enable WPA2 to WPA3 auto-upgrade offload to capable Driver/Firmware -->
|
||||
<bool translatable="false" name="config_wifiSaeUpgradeOffloadEnabled">true</bool>
|
||||
|
||||
<!-- Boolean indicating whether DTIM multiplier configuration is enabled. DTIM multiplier value
|
||||
is when the system is in the suspended mode -->
|
||||
<bool translatable="false" name="config_wifiDtimMultiplierConfigEnabled">true</bool>
|
||||
|
||||
<!-- Enable the feature of adjusting link layer stats polling interval based on
|
||||
device mobility state and client mode RSSI monitoring. -->
|
||||
<bool translatable="false" name="config_wifiAdjustPollRssiIntervalEnabled">true</bool>
|
||||
|
||||
<!-- Boolean indicating whether the framework updates country from scan results when there is
|
||||
no telephony country code. This is applied to all generic cases and might require the
|
||||
regulatory approval (for example, FCC pre-approval is required according to "594280 D01
|
||||
Software Configuration Control v02r01").-->
|
||||
<bool translatable="false" name ="config_wifiUpdateCountryCodeFromScanResultGeneric">true</bool>
|
||||
</resources>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
system_ext/lib64/libmediaadaptor.so \
|
||||
system_ext/priv-app/ShannonRcs/ShannonRcs.apk \
|
||||
system_ext/priv-app/ShannonIms/ShannonIms.apk \
|
||||
system_ext/priv-app/QualifiedNetworksService/QualifiedNetworksService.apk \
|
||||
system_ext/priv-app/PixelQualifiedNetworksService/PixelQualifiedNetworksService.apk \
|
||||
system_ext/priv-app/UwbVendorService/UwbVendorService.apk \
|
||||
"
|
||||
;;
|
||||
|
|
|
@ -24,7 +24,7 @@ endif
|
|||
ifneq ($(filter felix,$(TARGET_DEVICE)),)
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
|
||||
LOCAL_MODULE := QualifiedNetworksService
|
||||
LOCAL_MODULE := PixelQualifiedNetworksService
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_BUILT_MODULE_STEM := package.apk
|
||||
LOCAL_SYSTEM_EXT_MODULE := true
|
||||
|
@ -48,7 +48,7 @@ LOCAL_PRIVILEGED_MODULE := true
|
|||
LOCAL_MODULE_OWNER := samsung
|
||||
LOCAL_MODULE_CLASS := APPS
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
|
||||
LOCAL_CERTIFICATE := platform
|
||||
LOCAL_CERTIFICATE := PRESIGNED
|
||||
LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
|
||||
LOCAL_LICENSE_CONDITIONS := notice
|
||||
LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../COPYRIGHT $(LOCAL_PATH)/../LICENSE
|
||||
|
@ -64,7 +64,7 @@ LOCAL_PRIVILEGED_MODULE := true
|
|||
LOCAL_MODULE_OWNER := samsung
|
||||
LOCAL_MODULE_CLASS := APPS
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
|
||||
LOCAL_CERTIFICATE := platform
|
||||
LOCAL_CERTIFICATE := PRESIGNED
|
||||
LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
|
||||
LOCAL_LICENSE_CONDITIONS := notice
|
||||
LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../COPYRIGHT $(LOCAL_PATH)/../LICENSE
|
||||
|
@ -80,7 +80,7 @@ LOCAL_PRIVILEGED_MODULE := true
|
|||
LOCAL_MODULE_OWNER := qorvo
|
||||
LOCAL_MODULE_CLASS := APPS
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
|
||||
LOCAL_CERTIFICATE := platform
|
||||
LOCAL_CERTIFICATE := PRESIGNED
|
||||
LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
|
||||
LOCAL_LICENSE_CONDITIONS := notice
|
||||
LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../COPYRIGHT $(LOCAL_PATH)/../LICENSE
|
||||
|
|
|
@ -17,7 +17,7 @@ PRODUCT_SOONG_NAMESPACES += \
|
|||
|
||||
# AOSP packages required by the blobs
|
||||
PRODUCT_PACKAGES := \
|
||||
QualifiedNetworksService \
|
||||
PixelQualifiedNetworksService \
|
||||
ShannonIms \
|
||||
ShannonRcs \
|
||||
UwbVendorService \
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
# Copyright (C) 2009 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
# HAL module implemenation stored in
|
||||
# hw/<SENSORS_HARDWARE_MODULE_ID>.<ro.hardware>.so
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_MODULE_RELATIVE_PATH := hw
|
||||
LOCAL_SHARED_LIBRARIES := liblog libcutils libhardware
|
||||
LOCAL_SRC_FILES := sensors_dummy.c
|
||||
LOCAL_MODULE := sensors.felix
|
||||
LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
|
||||
LOCAL_LICENSE_CONDITIONS := notice
|
||||
LOCAL_NOTICE_FILE := $(LOCAL_PATH)/../NOTICE
|
||||
LOCAL_PROPRIETARY_MODULE := true
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
|
@ -1,409 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2009 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/* this implements a sensors hardware library for the Android emulator.
|
||||
* the following code should be built as a shared library that will be
|
||||
* placed into /system/lib/hw/sensors.goldfish.so
|
||||
*
|
||||
* it will be loaded by the code in hardware/libhardware/hardware.c
|
||||
* which is itself called from com_android_server_SensorService.cpp
|
||||
*/
|
||||
|
||||
#define SENSORS_SERVICE_NAME "sensors"
|
||||
|
||||
#define LOG_TAG "Dummy_Sensors"
|
||||
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <log/log.h>
|
||||
#include <cutils/sockets.h>
|
||||
#include <hardware/sensors.h>
|
||||
#include <pthread.h>
|
||||
|
||||
#if 0
|
||||
#define D(...) ALOGD(__VA_ARGS__)
|
||||
#else
|
||||
#define D(...) ((void)0)
|
||||
#endif
|
||||
|
||||
#define E(...) ALOGE(__VA_ARGS__)
|
||||
|
||||
/** SENSOR IDS AND NAMES
|
||||
**/
|
||||
|
||||
#define MAX_NUM_SENSORS 8
|
||||
|
||||
#define SUPPORTED_SENSORS ((1<<MAX_NUM_SENSORS)-1)
|
||||
|
||||
#define ID_BASE SENSORS_HANDLE_BASE
|
||||
#define ID_ACCELERATION (ID_BASE+0)
|
||||
#define ID_MAGNETIC_FIELD (ID_BASE+1)
|
||||
#define ID_ORIENTATION (ID_BASE+2)
|
||||
#define ID_TEMPERATURE (ID_BASE+3)
|
||||
#define ID_PROXIMITY (ID_BASE+4)
|
||||
#define ID_LIGHT (ID_BASE+5)
|
||||
#define ID_PRESSURE (ID_BASE+6)
|
||||
#define ID_HUMIDITY (ID_BASE+7)
|
||||
|
||||
#define SENSORS_ACCELERATION (1 << ID_ACCELERATION)
|
||||
#define SENSORS_MAGNETIC_FIELD (1 << ID_MAGNETIC_FIELD)
|
||||
#define SENSORS_ORIENTATION (1 << ID_ORIENTATION)
|
||||
#define SENSORS_TEMPERATURE (1 << ID_TEMPERATURE)
|
||||
#define SENSORS_PROXIMITY (1 << ID_PROXIMITY)
|
||||
#define SENSORS_LIGHT (1 << ID_LIGHT)
|
||||
#define SENSORS_PRESSURE (1 << ID_PRESSURE)
|
||||
#define SENSORS_HUMIDITY (1 << ID_HUMIDITY)
|
||||
|
||||
#define ID_CHECK(x) ((unsigned)((x) - ID_BASE) < MAX_NUM_SENSORS)
|
||||
|
||||
#define SENSORS_LIST \
|
||||
SENSOR_(ACCELERATION,"acceleration") \
|
||||
SENSOR_(MAGNETIC_FIELD,"magnetic-field") \
|
||||
SENSOR_(ORIENTATION,"orientation") \
|
||||
SENSOR_(TEMPERATURE,"temperature") \
|
||||
SENSOR_(PROXIMITY,"proximity") \
|
||||
SENSOR_(LIGHT, "light") \
|
||||
SENSOR_(PRESSURE, "pressure") \
|
||||
SENSOR_(HUMIDITY, "humidity")
|
||||
|
||||
static const struct {
|
||||
const char* name;
|
||||
int id; } _sensorIds[MAX_NUM_SENSORS] =
|
||||
{
|
||||
#define SENSOR_(x,y) { y, ID_##x },
|
||||
SENSORS_LIST
|
||||
#undef SENSOR_
|
||||
};
|
||||
|
||||
static const char*
|
||||
_sensorIdToName( int id )
|
||||
{
|
||||
int nn;
|
||||
for (nn = 0; nn < MAX_NUM_SENSORS; nn++)
|
||||
if (id == _sensorIds[nn].id)
|
||||
return _sensorIds[nn].name;
|
||||
return "<UNKNOWN>";
|
||||
}
|
||||
|
||||
static int
|
||||
_sensorIdFromName( const char* name )
|
||||
{
|
||||
int nn;
|
||||
|
||||
if (name == NULL)
|
||||
return -1;
|
||||
|
||||
for (nn = 0; nn < MAX_NUM_SENSORS; nn++)
|
||||
if (!strcmp(name, _sensorIds[nn].name))
|
||||
return _sensorIds[nn].id;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* return the current time in nanoseconds */
|
||||
static int64_t now_ns(void) {
|
||||
struct timespec ts;
|
||||
clock_gettime(CLOCK_MONOTONIC, &ts);
|
||||
return (int64_t)ts.tv_sec * 1000000000 + ts.tv_nsec;
|
||||
}
|
||||
|
||||
/** SENSORS POLL DEVICE
|
||||
**
|
||||
** This one is used to read sensor data from the hardware.
|
||||
** We implement this by simply reading the data from the
|
||||
** emulator through the QEMUD channel.
|
||||
**/
|
||||
|
||||
typedef struct SensorDevice {
|
||||
struct sensors_poll_device_1 device;
|
||||
sensors_event_t sensors[MAX_NUM_SENSORS];
|
||||
uint32_t pendingSensors;
|
||||
int64_t timeStart;
|
||||
int64_t timeOffset;
|
||||
uint32_t active_sensors;
|
||||
int fd;
|
||||
pthread_mutex_t lock;
|
||||
} SensorDevice;
|
||||
|
||||
/* Grab the file descriptor to the emulator's sensors service pipe.
|
||||
* This function returns a file descriptor on success, or -errno on
|
||||
* failure, and assumes the SensorDevice instance's lock is held.
|
||||
*
|
||||
* This is needed because set_delay(), poll() and activate() can be called
|
||||
* from different threads, and poll() is blocking.
|
||||
*
|
||||
* 1) On a first thread, de-activate() all sensors first, then call poll(),
|
||||
* which results in the thread blocking.
|
||||
*
|
||||
* 2) On a second thread, slightly later, call set_delay() then activate()
|
||||
* to enable the acceleration sensor.
|
||||
*
|
||||
* The system expects this to unblock the first thread which will receive
|
||||
* new sensor events after the activate() call in 2).
|
||||
*
|
||||
* This cannot work if both threads don't use the same connection.
|
||||
*
|
||||
* TODO(digit): This protocol is brittle, implement another control channel
|
||||
* for set_delay()/activate()/batch() when supporting HAL 1.3
|
||||
*/
|
||||
static int sensor_device_get_fd_locked(SensorDevice* dev) {
|
||||
/* Create connection to service on first call */
|
||||
if (dev->fd < 0) {
|
||||
int ret = -errno;
|
||||
E("%s: Could not open connection to service: %s", __FUNCTION__,
|
||||
strerror(-ret));
|
||||
return ret;
|
||||
}
|
||||
return dev->fd;
|
||||
}
|
||||
|
||||
/* Pick up one pending sensor event. On success, this returns the sensor
|
||||
* id, and sets |*event| accordingly. On failure, i.e. if there are no
|
||||
* pending events, return -EINVAL.
|
||||
*
|
||||
* Note: The device's lock must be acquired.
|
||||
*/
|
||||
static int sensor_device_pick_pending_event_locked(SensorDevice* d,
|
||||
sensors_event_t* event)
|
||||
{
|
||||
uint32_t mask = SUPPORTED_SENSORS & d->pendingSensors;
|
||||
|
||||
if (mask) {
|
||||
uint32_t i = 31 - __builtin_clz(mask);
|
||||
|
||||
pthread_mutex_lock(&d->lock);
|
||||
d->pendingSensors &= ~(1U << i);
|
||||
*event = d->sensors[i];
|
||||
event->sensor = i;
|
||||
event->version = sizeof(*event);
|
||||
pthread_mutex_unlock(&d->lock);
|
||||
D("%s: %d [%f, %f, %f]", __FUNCTION__,
|
||||
i,
|
||||
event->data[0],
|
||||
event->data[1],
|
||||
event->data[2]);
|
||||
return i;
|
||||
}
|
||||
E("No sensor to return!!! pendingSensors=0x%08x", d->pendingSensors);
|
||||
// we may end-up in a busy loop, slow things down, just in case.
|
||||
usleep(1000);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static int sensor_device_close(struct hw_device_t* dev0)
|
||||
{
|
||||
SensorDevice* dev = (void*)dev0;
|
||||
// Assume that there are no other threads blocked on poll()
|
||||
if (dev->fd >= 0) {
|
||||
close(dev->fd);
|
||||
dev->fd = -1;
|
||||
}
|
||||
pthread_mutex_destroy(&dev->lock);
|
||||
free(dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Return an array of sensor data. This function blocks until there is sensor
|
||||
* related events to report. On success, it will write the events into the
|
||||
* |data| array, which contains |count| items. The function returns the number
|
||||
* of events written into the array, which shall never be greater than |count|.
|
||||
* On error, return -errno code.
|
||||
*
|
||||
* Note that according to the sensor HAL [1], it shall never return 0!
|
||||
*
|
||||
* [1] http://source.android.com/devices/sensors/hal-interface.html
|
||||
*/
|
||||
static int sensor_device_poll(struct sensors_poll_device_t *dev0,
|
||||
sensors_event_t* data, int count)
|
||||
{
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
static int sensor_device_activate(struct sensors_poll_device_t *dev0,
|
||||
int handle,
|
||||
int enabled)
|
||||
{
|
||||
SensorDevice* dev = (void*)dev0;
|
||||
|
||||
D("%s: handle=%s (%d) enabled=%d", __FUNCTION__,
|
||||
_sensorIdToName(handle), handle, enabled);
|
||||
|
||||
/* Sanity check */
|
||||
if (!ID_CHECK(handle)) {
|
||||
E("%s: bad handle ID", __FUNCTION__);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/* Exit early if sensor is already enabled/disabled. */
|
||||
uint32_t mask = (1U << handle);
|
||||
uint32_t sensors = enabled ? mask : 0;
|
||||
|
||||
pthread_mutex_lock(&dev->lock);
|
||||
|
||||
uint32_t active = dev->active_sensors;
|
||||
uint32_t new_sensors = (active & ~mask) | (sensors & mask);
|
||||
uint32_t changed = active ^ new_sensors;
|
||||
|
||||
if (changed)
|
||||
dev->active_sensors = new_sensors;
|
||||
|
||||
pthread_mutex_unlock(&dev->lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int sensor_device_default_flush(
|
||||
struct sensors_poll_device_1* dev0,
|
||||
int handle) {
|
||||
|
||||
SensorDevice* dev = (void*)dev0;
|
||||
|
||||
D("%s: handle=%s (%d)", __FUNCTION__,
|
||||
_sensorIdToName(handle), handle);
|
||||
|
||||
/* Sanity check */
|
||||
if (!ID_CHECK(handle)) {
|
||||
E("%s: bad handle ID", __FUNCTION__);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pthread_mutex_lock(&dev->lock);
|
||||
dev->sensors[handle].version = META_DATA_VERSION;
|
||||
dev->sensors[handle].type = SENSOR_TYPE_META_DATA;
|
||||
dev->sensors[handle].sensor = 0;
|
||||
dev->sensors[handle].timestamp = 0;
|
||||
dev->sensors[handle].meta_data.what = META_DATA_FLUSH_COMPLETE;
|
||||
dev->pendingSensors |= (1U << handle);
|
||||
pthread_mutex_unlock(&dev->lock);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int sensor_device_set_delay(struct sensors_poll_device_t *dev0,
|
||||
int handle __unused,
|
||||
int64_t ns)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int sensor_device_default_batch(
|
||||
struct sensors_poll_device_1* dev,
|
||||
int sensor_handle,
|
||||
int flags,
|
||||
int64_t sampling_period_ns,
|
||||
int64_t max_report_latency_ns) {
|
||||
return sensor_device_set_delay(dev, sensor_handle, sampling_period_ns);
|
||||
}
|
||||
|
||||
/** MODULE REGISTRATION SUPPORT
|
||||
**
|
||||
** This is required so that hardware/libhardware/hardware.c
|
||||
** will dlopen() this library appropriately.
|
||||
**/
|
||||
|
||||
/*
|
||||
* the following is the list of all supported sensors.
|
||||
* this table is used to build sSensorList declared below
|
||||
* according to which hardware sensors are reported as
|
||||
* available from the emulator (see get_sensors_list below)
|
||||
*
|
||||
* note: numerical values for maxRange/resolution/power for
|
||||
* all sensors but light, pressure and humidity were
|
||||
* taken from the reference AK8976A implementation
|
||||
*/
|
||||
static const struct sensor_t sSensorListInit[] = {
|
||||
{ .name = "Accelerometer",
|
||||
.vendor = "The Android Open Source Project",
|
||||
.version = 1,
|
||||
.handle = ID_ACCELERATION,
|
||||
.type = SENSOR_TYPE_ACCELEROMETER,
|
||||
.maxRange = 2.8f,
|
||||
.resolution = 1.0f/4032.0f,
|
||||
.power = 3.0f,
|
||||
.minDelay = 10000,
|
||||
.maxDelay = 60 * 1000 * 1000,
|
||||
.fifoReservedEventCount = 0,
|
||||
.fifoMaxEventCount = 0,
|
||||
.stringType = 0,
|
||||
.requiredPermission = 0,
|
||||
.flags = SENSOR_FLAG_CONTINUOUS_MODE,
|
||||
.reserved = {}
|
||||
},
|
||||
};
|
||||
|
||||
static struct sensor_t sSensorList[1];
|
||||
|
||||
static int sensors__get_sensors_list(struct sensors_module_t* module __unused,
|
||||
struct sensor_t const** list)
|
||||
{
|
||||
*list = sSensorList;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
open_sensors(const struct hw_module_t* module,
|
||||
const char* name,
|
||||
struct hw_device_t* *device)
|
||||
{
|
||||
int status = -EINVAL;
|
||||
|
||||
D("%s: name=%s", __FUNCTION__, name);
|
||||
|
||||
if (!strcmp(name, SENSORS_HARDWARE_POLL)) {
|
||||
SensorDevice *dev = malloc(sizeof(*dev));
|
||||
|
||||
memset(dev, 0, sizeof(*dev));
|
||||
|
||||
dev->device.common.tag = HARDWARE_DEVICE_TAG;
|
||||
dev->device.common.version = SENSORS_DEVICE_API_VERSION_1_3;
|
||||
dev->device.common.module = (struct hw_module_t*) module;
|
||||
dev->device.common.close = sensor_device_close;
|
||||
dev->device.poll = sensor_device_poll;
|
||||
dev->device.activate = sensor_device_activate;
|
||||
dev->device.setDelay = sensor_device_set_delay;
|
||||
|
||||
// Version 1.3-specific functions
|
||||
dev->device.batch = sensor_device_default_batch;
|
||||
dev->device.flush = sensor_device_default_flush;
|
||||
|
||||
dev->fd = -1;
|
||||
pthread_mutex_init(&dev->lock, NULL);
|
||||
|
||||
*device = &dev->device.common;
|
||||
status = 0;
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
static struct hw_module_methods_t sensors_module_methods = {
|
||||
.open = open_sensors
|
||||
};
|
||||
|
||||
struct sensors_module_t HAL_MODULE_INFO_SYM = {
|
||||
.common = {
|
||||
.tag = HARDWARE_MODULE_TAG,
|
||||
.version_major = 1,
|
||||
.version_minor = 0,
|
||||
.id = SENSORS_HARDWARE_MODULE_ID,
|
||||
.name = "Dummy SENSORS Module",
|
||||
.author = "The Android Open Source Project",
|
||||
.methods = &sensors_module_methods,
|
||||
},
|
||||
.get_sensors_list = sensors__get_sensors_list
|
||||
};
|
|
@ -79,26 +79,15 @@
|
|||
"Coefficient":[-1.0],
|
||||
"Multiplier":1
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB1",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm"],
|
||||
"Coefficient":[-0.15, -0.45, 0.2, 1.5],
|
||||
"Offset":-670,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB2",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.3, 0.3, -0.1, 0.4, 0.1],
|
||||
"Offset":2500,
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.259, 0.652, -0.161, 0.03],
|
||||
"Offset":8450,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -151,8 +140,8 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"MAXIMUM",
|
||||
"Combination":["CLOSE-SUB1", "CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0, 1.0],
|
||||
"Combination":["CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0],
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -182,9 +171,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "quiet_therm", "skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[-0.15, -1.05, 0.1, 0.25, 1.85, 0.05],
|
||||
"Offset":-990,
|
||||
"Combination":["skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.385, 0.075, 0.348, 0.302],
|
||||
"Offset":-4950,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -215,9 +204,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "usb_pwr_therm2", "inner_disp_therm"],
|
||||
"Coefficient":[0.15, 1.05, -0.65, 1, -0.55],
|
||||
"Offset":3540,
|
||||
"Combination":["quiet_therm", "skin_therm", "usb_pwr_therm"],
|
||||
"Coefficient":[0.429, 0.314, 0.205],
|
||||
"Offset":2600,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
|
|
@ -85,26 +85,15 @@
|
|||
"Coefficient":[-1.0],
|
||||
"Multiplier":1
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB1",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm"],
|
||||
"Coefficient":[-0.15, -0.45, 0.2, 1.5],
|
||||
"Offset":-670,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB2",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.3, 0.3, -0.1, 0.4, 0.1],
|
||||
"Offset":2500,
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.259, 0.652, -0.161, 0.03],
|
||||
"Offset":8450,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -157,8 +146,8 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"MAXIMUM",
|
||||
"Combination":["CLOSE-SUB1", "CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0, 1.0],
|
||||
"Combination":["CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0],
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -188,9 +177,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "quiet_therm", "skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[-0.15, -1.05, 0.1, 0.25, 1.85, 0.05],
|
||||
"Offset":-990,
|
||||
"Combination":["skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.385, 0.075, 0.348, 0.302],
|
||||
"Offset":-4950,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -221,9 +210,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "usb_pwr_therm2", "inner_disp_therm"],
|
||||
"Coefficient":[0.15, 1.05, -0.65, 1, -0.55],
|
||||
"Offset":3540,
|
||||
"Combination":["quiet_therm", "skin_therm", "usb_pwr_therm"],
|
||||
"Coefficient":[0.429, 0.314, 0.205],
|
||||
"Offset":2600,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -249,13 +238,13 @@
|
|||
{
|
||||
"Name":"VIRTUAL-SKIN",
|
||||
"Type":"SKIN",
|
||||
"Version":"0.5",
|
||||
"Version":"6.2",
|
||||
"VirtualSensor":true,
|
||||
"TriggerSensor":"skin_therm",
|
||||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN-CLOSE", "VIRTUAL-SKIN-OPEN"],
|
||||
"Coefficient":[1.0, 1.0],
|
||||
"HotThreshold":["NAN", 39.0, 43.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -281,7 +270,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"SendPowerHint":true,
|
||||
|
@ -296,7 +285,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 52.5, "NAN"],
|
||||
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
|
||||
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 1.9, 0.0],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -312,7 +301,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 39.0, 41.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 39.0, 41.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -373,7 +362,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -438,7 +427,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 25.0, 39.0, 41.0, 45.0, 46.5, 54.0],
|
||||
"HotThreshold":["NAN", 25.0, 39.0, 41.0, 45.0, 46.5, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 1.4, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":60000,
|
||||
|
@ -977,5 +966,25 @@
|
|||
"PowerSampleDelay":60000,
|
||||
"PowerSampleCount":1
|
||||
}
|
||||
]
|
||||
],
|
||||
"Stats": {
|
||||
"Sensors": {
|
||||
"RecordWithDefaultThreshold": ["VIRTUAL-SKIN"],
|
||||
"RecordWithThreshold": [
|
||||
{
|
||||
"Name": "VIRTUAL-SKIN",
|
||||
"Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51]
|
||||
},
|
||||
{
|
||||
"Name": "VIRTUAL-USB-THROTTLING",
|
||||
"Thresholds": [2.0]
|
||||
}
|
||||
]
|
||||
},
|
||||
"CoolingDevices": {
|
||||
"RecordVotePerSensor": {
|
||||
"DefaultThresholdEnableAll": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,26 +85,15 @@
|
|||
"Coefficient":[-1.0],
|
||||
"Multiplier":1
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB1",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm"],
|
||||
"Coefficient":[-0.15, -0.45, 0.2, 1.5],
|
||||
"Offset":-670,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
"Name":"CLOSE-SUB2",
|
||||
"Type":"UNKNOWN",
|
||||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "outer_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.3, 0.3, -0.1, 0.4, 0.1],
|
||||
"Offset":2500,
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.259, 0.652, -0.161, 0.03],
|
||||
"Offset":8450,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -157,8 +146,8 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"MAXIMUM",
|
||||
"Combination":["CLOSE-SUB1", "CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0, 1.0],
|
||||
"Combination":["CLOSE-SUB2", "CLOSE-SUB3", "CLOSE-SUB4", "CLOSE-SUB5"],
|
||||
"Coefficient":[1.0, 1.0, 1.0, 1.0],
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -188,9 +177,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "quiet_therm", "skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[-0.15, -1.05, 0.1, 0.25, 1.85, 0.05],
|
||||
"Offset":-990,
|
||||
"Combination":["skin_therm", "usb_pwr_therm", "inner_disp_therm", "gnss_tcxo_therm"],
|
||||
"Coefficient":[0.385, 0.075, 0.348, 0.302],
|
||||
"Offset":-4950,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -221,9 +210,9 @@
|
|||
"Hidden":true,
|
||||
"VirtualSensor":true,
|
||||
"Formula":"WEIGHTED_AVG",
|
||||
"Combination":["neutral_therm", "skin_therm", "usb_pwr_therm", "usb_pwr_therm2", "inner_disp_therm"],
|
||||
"Coefficient":[0.15, 1.05, -0.65, 1, -0.55],
|
||||
"Offset":3540,
|
||||
"Combination":["quiet_therm", "skin_therm", "usb_pwr_therm"],
|
||||
"Coefficient":[0.429, 0.314, 0.205],
|
||||
"Offset":2600,
|
||||
"Multiplier":0.001
|
||||
},
|
||||
{
|
||||
|
@ -249,13 +238,13 @@
|
|||
{
|
||||
"Name":"VIRTUAL-SKIN",
|
||||
"Type":"SKIN",
|
||||
"Version":"0.5",
|
||||
"Version":"6.2",
|
||||
"VirtualSensor":true,
|
||||
"TriggerSensor":"skin_therm",
|
||||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN-CLOSE", "VIRTUAL-SKIN-OPEN"],
|
||||
"Coefficient":[1.0, 1.0],
|
||||
"HotThreshold":["NAN", 37.0, 41.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 41.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -281,7 +270,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 41.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 41.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"SendPowerHint":true,
|
||||
|
@ -296,7 +285,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 52.5, "NAN"],
|
||||
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
|
||||
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 1.9, 0.0],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -312,7 +301,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 39.0, 41.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 39.0, 41.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -373,7 +362,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 51.0, 54.0],
|
||||
"HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":300000,
|
||||
|
@ -438,7 +427,7 @@
|
|||
"Formula":"MAXIMUM",
|
||||
"Combination":["VIRTUAL-SKIN"],
|
||||
"Coefficient":[1.0],
|
||||
"HotThreshold":["NAN", 25.0, 39.0, 41.0, 45.0, 46.5, 54.0],
|
||||
"HotThreshold":["NAN", 25.0, 39.0, 41.0, 45.0, 46.5, 57.0],
|
||||
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 1.4, 1.9],
|
||||
"Multiplier":0.001,
|
||||
"PollingDelay":60000,
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=4
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x34
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x34
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x7E7E687E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x34
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x7E7E687E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x34
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x9E9E7C9E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x34
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x9E9E7C9E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x34
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=4
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x16
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x16
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x28
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x28
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=4
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x16
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x16
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x28
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x28
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=12
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x01
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x5E5E4C5E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x27
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x5E5E4C5E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x27
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x5E5E4C5E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x27
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x5E5E4C5E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x27
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x01
|
||||
restricted_channels=0x20
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=4
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x16
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x16
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x28
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x28
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0xFFFF
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=12
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x16
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x16
|
||||
|
@ -57,11 +51,11 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x28
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x28
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0x20
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,21 +1,15 @@
|
|||
[CCC]version=2
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf2_rf1=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_iso_rf1_rf2=0
|
||||
[CCC]ant0.ch5.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch9.prf64.pdoa_offset=0
|
||||
[CCC]ant0.ch5.prf64.pll_locking_code=0
|
||||
[CCC]ant0.ch9.prf64.pll_locking_code=0
|
||||
[CCC]id=0
|
||||
[CCC]version=3
|
||||
[CCC]wifi_coex_time_gap=10
|
||||
[CCC]ap_coop_mode=1
|
||||
[CCC]antenna_selection=4
|
||||
ant0.ch5.prf16.ant_delay=16449
|
||||
[CCC]wifi_coex_min_spacing=0x08
|
||||
[CCC]ch5.antenna_selection=ant0
|
||||
[CCC]ch9.antenna_selection=ant2
|
||||
[CCC]alternate_pulse_shape=0x00
|
||||
ant0.ch5.prf16.ant_delay=16459
|
||||
ant0.ch5.prf16.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf16.pg_count=0
|
||||
ant0.ch5.prf16.pg_delay=0x28
|
||||
ant0.ch5.prf64.ant_delay=16449
|
||||
ant0.ch5.prf64.ant_delay=16459
|
||||
ant0.ch5.prf64.tx_power=0xFFFFD4FF
|
||||
ant0.ch5.prf64.pg_count=0
|
||||
ant0.ch5.prf64.pg_delay=0x28
|
||||
|
@ -38,11 +32,11 @@ ant1.ch5.prf64.ant_delay=16450
|
|||
ant1.ch5.prf64.tx_power=0xFFFFFFFF
|
||||
ant1.ch5.prf64.pg_count=0
|
||||
ant1.ch5.prf64.pg_delay=0x26
|
||||
ant1.ch9.prf16.ant_delay=16451
|
||||
ant1.ch9.prf16.ant_delay=16436
|
||||
ant1.ch9.prf16.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf16.pg_count=0
|
||||
ant1.ch9.prf16.pg_delay=0x16
|
||||
ant1.ch9.prf64.ant_delay=16451
|
||||
ant1.ch9.prf64.ant_delay=16436
|
||||
ant1.ch9.prf64.tx_power=0x3E3E303E
|
||||
ant1.ch9.prf64.pg_count=0
|
||||
ant1.ch9.prf64.pg_delay=0x16
|
||||
|
@ -57,14 +51,14 @@ ant2.ch5.prf64.ant_delay=16450
|
|||
ant2.ch5.prf64.tx_power=0
|
||||
ant2.ch5.prf64.pg_count=0
|
||||
ant2.ch5.prf64.pg_delay=0
|
||||
ant2.ch9.prf16.ant_delay=16451
|
||||
ant2.ch9.prf16.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.ant_delay=16437
|
||||
ant2.ch9.prf16.tx_power=0x5E5E4C5E
|
||||
ant2.ch9.prf16.pg_count=0
|
||||
ant2.ch9.prf16.pg_delay=0x28
|
||||
ant2.ch9.prf64.ant_delay=16451
|
||||
ant2.ch9.prf64.tx_power=0x8E8E748E
|
||||
ant2.ch9.prf16.pg_delay=0x27
|
||||
ant2.ch9.prf64.ant_delay=16437
|
||||
ant2.ch9.prf64.tx_power=0x5E5E4C5E
|
||||
ant2.ch9.prf64.pg_count=0
|
||||
ant2.ch9.prf64.pg_delay=0x28
|
||||
ant2.ch9.prf64.pg_delay=0x27
|
||||
ant2.port=1
|
||||
ant2.selector_gpio=6
|
||||
ant2.selector_gpio_value=0
|
||||
|
@ -76,11 +70,11 @@ ant3.ch5.prf64.ant_delay=16450
|
|||
ant3.ch5.prf64.tx_power=0
|
||||
ant3.ch5.prf64.pg_count=0
|
||||
ant3.ch5.prf64.pg_delay=0
|
||||
ant3.ch9.prf16.ant_delay=16450
|
||||
ant3.ch9.prf16.ant_delay=16459
|
||||
ant3.ch9.prf16.tx_power=0
|
||||
ant3.ch9.prf16.pg_count=0
|
||||
ant3.ch9.prf16.pg_delay=0
|
||||
ant3.ch9.prf64.ant_delay=16450
|
||||
ant3.ch9.prf64.ant_delay=16459
|
||||
ant3.ch9.prf64.tx_power=0
|
||||
ant3.ch9.prf64.pg_count=0
|
||||
ant3.ch9.prf64.pg_delay=0
|
||||
|
@ -111,6 +105,7 @@ smart_tx_power=1
|
|||
auto_sleep_margin=20000
|
||||
alternate_pulse_shape=0x00
|
||||
restricted_channels=0
|
||||
[HAL]aoa_restricted_channels=0x20
|
||||
[HAL]aoa_capability=2
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_nonranging=6
|
||||
[HAL]ant_sets.ch5.range.rx_ant_set_ranging=6
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
chasewu@google.com
|
||||
chrispaulo@google.com
|
||||
michaelwr@google.com
|
||||
nathankulczak@google.com
|
||||
taikuo@google.com
|
||||
|
|
|
@ -8,3 +8,4 @@ p2p_add_cli_chan=1
|
|||
disable_scan_offload=1
|
||||
p2p_go_vht=1
|
||||
p2p_pref_chan=124:149, 115:36
|
||||
p2p_6ghz_disable=1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue