DO NOT MERGE -- Merge PPRL.190405.003 into master
Bug: 130175407
Change-Id: I9ffd208fe9081e9bd3cda8c562d6121498c83868
diff --git a/AndroidProducts.mk b/AndroidProducts.mk
index 599f286..fa47f8b 100644
--- a/AndroidProducts.mk
+++ b/AndroidProducts.mk
@@ -17,3 +17,7 @@
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/aosp_crosshatch.mk \
$(LOCAL_DIR)/aosp_blueline.mk \
+
+COMMON_LUNCH_CHOICES := \
+ aosp_crosshatch-userdebug \
+ aosp_blueline-userdebug
diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk
index de21237..6abe94d 100644
--- a/BoardConfig-common.mk
+++ b/BoardConfig-common.mk
@@ -23,24 +23,26 @@
TARGET_ARCH_VARIANT := armv8-2a
TARGET_CPU_ABI := arm64-v8a
TARGET_CPU_ABI2 :=
-TARGET_CPU_VARIANT := cortex-a75
+TARGET_CPU_VARIANT := kryo385
TARGET_2ND_ARCH := arm
-TARGET_2ND_ARCH_VARIANT := armv8-a
+TARGET_2ND_ARCH_VARIANT := armv8-2a
TARGET_2ND_CPU_ABI := armeabi-v7a
TARGET_2ND_CPU_ABI2 := armeabi
-TARGET_2ND_CPU_VARIANT := cortex-a75
+TARGET_2ND_CPU_VARIANT := kryo385
TARGET_BOARD_COMMON_PATH := device/google/crosshatch/sdm845
+BUILD_BROKEN_DUP_RULES := true
+
BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200n8 androidboot.console=ttyMSM0 printk.devkmsg=on
BOARD_KERNEL_CMDLINE += msm_rtb.filter=0x237
BOARD_KERNEL_CMDLINE += ehci-hcd.park=3
BOARD_KERNEL_CMDLINE += service_locator.enable=1
-BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware
BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem
BOARD_KERNEL_CMDLINE += lpm_levels.sleep_disabled=1
BOARD_KERNEL_CMDLINE += usbcore.autosuspend=7
+BOARD_KERNEL_CMDLINE += loop.max_part=7
BOARD_KERNEL_BASE := 0x00000000
BOARD_KERNEL_PAGESIZE := 4096
@@ -117,9 +119,11 @@
# Install odex files into the other system image
BOARD_USES_SYSTEM_OTHER_ODEX := true
+# Generate an APEX image for experiment b/119800099.
+DEXPREOPT_GENERATE_APEX_IMAGE := true
+
BOARD_ROOT_EXTRA_SYMLINKS := /vendor/dsp:/dsp
BOARD_ROOT_EXTRA_SYMLINKS += /mnt/vendor/persist:/persist
-BOARD_ROOT_EXTRA_SYMLINKS += /vendor/firmware_mnt:/firmware
include device/google/crosshatch-sepolicy/crosshatch-sepolicy.mk
@@ -128,7 +132,7 @@
QCOM_BOARD_PLATFORMS += sdm845
BOARD_HAVE_BLUETOOTH_QCOM := true
BOARD_HAVE_QCOM_FM := false
-BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/google/crosshatch/bluetooth
+BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := build/make/target/board/mainline_arm64/bluetooth
# Enable dex pre-opt to speed up initial boot
ifeq ($(HOST_OS),linux)
@@ -214,8 +218,16 @@
DEVICE_MANIFEST_FILE += device/google/crosshatch/manifest_userdebug.xml
endif
-# Remove health /backup instance
-DEVICE_FRAMEWORK_MANIFEST_FILE += system/libhidl/vintfdata/manifest_healthd_exclude.xml
+ODM_MANIFEST_SKUS += \
+ G013A \
+ G013B \
+ G013C \
+ G013D \
+
+ODM_MANIFEST_G013A_FILES := device/google/crosshatch/nfc/manifest_se_SIM1.xml
+ODM_MANIFEST_G013B_FILES := device/google/crosshatch/nfc/manifest_se_eSE1.xml
+ODM_MANIFEST_G013C_FILES := device/google/crosshatch/nfc/manifest_se_SIM1.xml
+ODM_MANIFEST_G013D_FILES := device/google/crosshatch/nfc/manifest_se_eSE1.xml
BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
@@ -244,6 +256,17 @@
else ifeq (,$(filter-out blueline_kernel_debug_api crosshatch_kernel_debug_api, $(TARGET_PRODUCT)))
BOARD_VENDOR_KERNEL_MODULES += \
$(wildcard device/google/crosshatch-kernel/debug_api/*.ko)
+else ifneq (,$(TARGET_PREBUILT_KERNEL))
+ # If TARGET_PREBUILT_KERNEL is set, check whether there are modules packaged with that kernel
+ # image. If so, use them, otherwise fall back to the default directory.
+ TARGET_PREBUILT_KERNEL_PREBUILT_VENDOR_KERNEL_MODULES := \
+ $(wildcard $(dir $(TARGET_PREBUILT_KERNEL))/*.ko)
+ ifneq (,$(TARGET_PREBUILT_KERNEL_PREBUILT_VENDOR_KERNEL_MODULES))
+ BOARD_VENDOR_KERNEL_MODULES += $(TARGET_PREBUILT_KERNEL_PREBUILT_VENDOR_KERNEL_MODULES)
+ else
+ BOARD_VENDOR_KERNEL_MODULES += $(wildcard device/google/crosshatch-kernel/*.ko)
+ endif
+ # Do NOT delete TARGET_PREBUILT..., it will lead to empty BOARD_VENDOR_KERNEL_MODULES.
else
BOARD_VENDOR_KERNEL_MODULES += \
$(wildcard device/google/crosshatch-kernel/*.ko)
diff --git a/CleanSpec.mk b/CleanSpec.mk
index f4949a7..015df10 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -122,3 +122,9 @@
# Secure_element HAL for eSE1
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/init/android.hardware.secure_element@1.0-service.rc)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/bin/hw/android.hardware.secure_element@1.0-service)
+
+# Move libnfc-nci.conf to /vendor
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/libnfc-nci.conf)
+
+# Remove /firmware which used to be a symlink to /vendor/firmware_mnt
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/firmware)
diff --git a/a2dp_in_audio_policy_configuration.xml b/a2dp_in_audio_policy_configuration.xml
new file mode 100644
index 0000000..57bd4f8
--- /dev/null
+++ b/a2dp_in_audio_policy_configuration.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Bluetooth Input Audio HAL Audio Policy Configuration file -->
+<module name="a2dp" halVersion="2.0">
+ <mixPorts>
+ <mixPort name="a2dp input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100,48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <devicePort tagName="BT A2DP In" type="AUDIO_DEVICE_IN_BLUETOOTH_A2DP" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100,48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
+ </devicePort>
+ </devicePorts>
+ <routes>
+ <route type="mix" sink="a2dp input"
+ sources="BT A2DP In"/>
+ </routes>
+</module>
diff --git a/aosp_blueline.mk b/aosp_blueline.mk
index 77f9c7f..a6866d1 100644
--- a/aosp_blueline.mk
+++ b/aosp_blueline.mk
@@ -16,26 +16,20 @@
# Inherit from the common Open Source product configuration
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
-$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/mainline.mk)
$(call inherit-product, device/google/crosshatch/device-blueline.mk)
$(call inherit-product-if-exists, vendor/google_devices/crosshatch/proprietary/device-vendor.mk)
-PRODUCT_PACKAGES += \
- Dialer \
- Launcher3QuickStep \
- WallpaperPicker
+PRODUCT_COPY_FILES += $(LOCAL_PATH)/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
# STOPSHIP deal with Qualcomm stuff later
# PRODUCT_RESTRICT_VENDOR_FILES := all
+PRODUCT_FORCE_PRODUCT_MODULES_TO_SYSTEM_PARTITION := webview
+
PRODUCT_MANUFACTURER := Google
PRODUCT_BRAND := Android
PRODUCT_NAME := aosp_blueline
PRODUCT_DEVICE := blueline
PRODUCT_MODEL := AOSP on blueline
-
-# Audio XMLs
-PRODUCT_COPY_FILES += \
- $(LOCAL_PATH)/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
-
diff --git a/aosp_crosshatch.mk b/aosp_crosshatch.mk
index 9e871a4..2491e03 100644
--- a/aosp_crosshatch.mk
+++ b/aosp_crosshatch.mk
@@ -16,26 +16,20 @@
# Inherit from the common Open Source product configuration
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
-$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/mainline.mk)
$(call inherit-product, device/google/crosshatch/device-crosshatch.mk)
$(call inherit-product-if-exists, vendor/google_devices/crosshatch/proprietary/device-vendor.mk)
-PRODUCT_PACKAGES += \
- Dialer \
- Launcher3QuickStep \
- WallpaperPicker
+PRODUCT_COPY_FILES += $(LOCAL_PATH)/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
# STOPSHIP deal with Qualcomm stuff later
# PRODUCT_RESTRICT_VENDOR_FILES := all
+PRODUCT_FORCE_PRODUCT_MODULES_TO_SYSTEM_PARTITION := webview
+
PRODUCT_MANUFACTURER := Google
PRODUCT_BRAND := Android
PRODUCT_NAME := aosp_crosshatch
PRODUCT_DEVICE := crosshatch
PRODUCT_MODEL := AOSP on crosshatch
-
-# Audio XMLs
-PRODUCT_COPY_FILES += \
- $(LOCAL_PATH)/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
-
diff --git a/audio_policy_configuration.xml b/audio_policy_configuration.xml
index eb9edf7..2bd2797 100644
--- a/audio_policy_configuration.xml
+++ b/audio_policy_configuration.xml
@@ -189,27 +189,8 @@
</routes>
</module>
- <!-- A2DP Audio HAL -->
- <module name="a2dp" halVersion="2.0">
- <mixPorts>
- <mixPort name="a2dp input" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
- </mixPort>
- </mixPorts>
-
- <devicePorts>
- <devicePort tagName="BT A2DP In" type="AUDIO_DEVICE_IN_BLUETOOTH_A2DP" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
- </devicePort>
- </devicePorts>
-
- <routes>
- <route type="mix" sink="a2dp input"
- sources="BT A2DP In"/>
- </routes>
- </module>
+ <!-- A2DP Input Audio HAL -->
+ <xi:include href="a2dp_in_audio_policy_configuration.xml"/>
<!-- Usb Audio HAL -->
<module name="usb" halVersion="2.0">
diff --git a/audio_policy_configuration_bluetooth_hal_enabled.xml b/audio_policy_configuration_bluetooth_hal_enabled.xml
new file mode 100644
index 0000000..1425285
--- /dev/null
+++ b/audio_policy_configuration_bluetooth_hal_enabled.xml
@@ -0,0 +1,231 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!-- Copyright (C) 2018 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="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
+ <globalConfiguration speaker_drc_enabled="true"/>
+
+ <modules>
+ <module name="primary" halVersion="2.0">
+ <attachedDevices>
+ <item>Speaker</item>
+ <item>Speaker Safe</item>
+ <item>Earpiece</item>
+ <item>Telephony Tx</item>
+ <item>Built-In Mic</item>
+ <item>Built-In Back Mic</item>
+ <item>Telephony Rx</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_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW|AUDIO_OUTPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="hifi_playback" role="source" />
+ <mixPort name="deep_buffer" role="source"
+ flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
+ <profile name="" format="AUDIO_FORMAT_PCM_24_BIT_PACKED"
+ samplingRates="44100,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,11025,12000,16000,22050,24000,32000,44100,48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_LC"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
+ </mixPort>
+ <mixPort name="voice_tx" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000,16000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,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="voip_rx" role="source"
+ flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="incall_music_uplink" role="source"
+ flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000,16000,48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="primary input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
+ </mixPort>
+ <mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
+ </mixPort>
+ <mixPort name="hifi_input" role="sink" />
+ <mixPort name="voice_rx" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000,16000,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_16_BIT"
+ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_INDEX_MASK_3"/>
+ </mixPort>
+ <mixPort name="voip_tx" role="sink"
+ flags="AUDIO_INPUT_FLAG_VOIP_TX">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <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="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" 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="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
+ encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ <devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
+ encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ <devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
+ encodedFormats="AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100,48000,88200,96000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ <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="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">
+ </devicePort>
+ <!-- TODO: Enable multi-channel recording -->
+ <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>
+ </devicePorts>
+ <routes>
+ <route type="mix" sink="Earpiece"
+ sources="primary output,raw,deep_buffer,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Speaker"
+ sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Speaker Safe"
+ sources="primary output,raw,deep_buffer,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="BT SCO"
+ sources="primary output,raw,deep_buffer,voip_rx"/>
+ <route type="mix" sink="BT SCO Headset"
+ sources="primary output,raw,deep_buffer,voip_rx"/>
+ <route type="mix" sink="BT SCO Car Kit"
+ sources="primary output,raw,deep_buffer,voip_rx"/>
+ <route type="mix" sink="USB Device Out"
+ sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="USB Headset Out"
+ sources="primary output,raw,deep_buffer,compressed_offload,hifi_playback,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Telephony Tx"
+ sources="voice_tx,incall_music_uplink"/>
+ <route type="mix" sink="primary input"
+ sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="fast input"
+ sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="voice_rx"
+ sources="Telephony Rx"/>
+ <route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
+ <route type="mix" sink="mmap_no_irq_in"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="voip_tx"
+ sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="BT A2DP Out"
+ sources="primary output,deep_buffer,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Headphones"
+ sources="primary output,deep_buffer,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Speaker"
+ sources="primary output,deep_buffer,compressed_offload,voip_rx"/>
+ </routes>
+ </module>
+
+ <!-- A2DP Input Audio HAL -->
+ <xi:include href="a2dp_in_audio_policy_configuration.xml"/>
+
+ <!-- Usb Audio HAL -->
+ <module name="usb" 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"/>
+
+ <!-- Bluetooth Audio HAL for Hearing aid -->
+ <xi:include href="bluetooth_hearing_aid_audio_policy_configuration.xml"/>
+
+ </modules>
+
+ <!-- Volume section -->
+
+ <xi:include href="audio_policy_volumes.xml"/>
+ <xi:include href="default_volume_tables.xml"/>
+
+</audioPolicyConfiguration>
diff --git a/bluetooth/bdroid_buildcfg.h b/bluetooth/bdroid_buildcfg.h
deleted file mode 100644
index 63515b1..0000000
--- a/bluetooth/bdroid_buildcfg.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * Copyright (c) 2013, The Linux Foundation. All rights reserved.
- * Not a Contribution, Apache license notifications and license are retained
- * for attribution purposes only.
- *
- * Copyright (C) 2012 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.
- */
-
-#ifndef _BDROID_BUILDCFG_H
-#define _BDROID_BUILDCFG_H
-
-// Wide-band speech support
-#define BTM_WBS_INCLUDED TRUE
-#define BTIF_HF_WBS_PREFERRED TRUE
-
-// Google VSC spec support
-#define BLE_VND_INCLUDED TRUE
-
-// QCOM power management workaround
-#define BT_CLEAN_TURN_ON_DISABLED TRUE
-
-#endif
diff --git a/bluetooth_hearing_aid_audio_policy_configuration.xml b/bluetooth_hearing_aid_audio_policy_configuration.xml
new file mode 100644
index 0000000..7dcabf7
--- /dev/null
+++ b/bluetooth_hearing_aid_audio_policy_configuration.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Bluetooth Audio HAL Audio Policy Configuration file -->
+<module name="bluetooth" halVersion="2.0">
+ <mixPorts>
+ <!-- Hearing AIDs Audio Ports -->
+ <mixPort name="hearing aid output" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="24000,16000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <!-- Hearing AIDs Audio Ports -->
+ <devicePort tagName="BT Hearing Aid Out" type="AUDIO_DEVICE_OUT_HEARING_AID" role="sink"/>
+ </devicePorts>
+ <routes>
+ <route type="mix" sink="BT Hearing Aid Out"
+ sources="hearing aid output"/>
+ </routes>
+</module>
diff --git a/crosshatch/AndroidBoard.mk b/crosshatch/AndroidBoard.mk
index c079faf..14f7aa8 100644
--- a/crosshatch/AndroidBoard.mk
+++ b/crosshatch/AndroidBoard.mk
@@ -41,9 +41,11 @@
INSTALLED_KERNEL_MODULES := $(call copy-many-files,$(INTERNAL_KERNEL_MODULES))
+.PHONY: kernel-modules
kernel-modules: $(INSTALLED_KERNEL_MODULES)
@echo Kernel modules installed
+.PHONY: persistimage
persistimage: $(INSTALLED_PERSISTIMAGE_TARGET)
droidcore: $(INSTALLED_PERSISTIMAGE_TARGET) $(INSTALLED_KERNEL_MODULES)
diff --git a/device.mk b/device.mk
index 36fbcfb..dab7da2 100644
--- a/device.mk
+++ b/device.mk
@@ -122,7 +122,6 @@
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/crosshatch/init.crosshatch.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.crosshatch.rc \
$(LOCAL_PATH)/blueline/init.blueline.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.blueline.rc \
- $(LOCAL_PATH)/init.common.rc:root/init.$(PRODUCT_HARDWARE).rc \
$(LOCAL_PATH)/init.recovery.hardware.device.rc:root/init.recovery.crosshatch.rc \
$(LOCAL_PATH)/init.recovery.hardware.device.rc:root/init.recovery.blueline.rc \
@@ -146,10 +145,6 @@
PRODUCT_PROPERTY_OVERRIDES += \
ro.cp_system_other_odex=1
-# Script that copies preloads directory from system_other to data partition
-PRODUCT_COPY_FILES += \
- device/google/crosshatch/preloads_copy.sh:system/bin/preloads_copy.sh
-
AB_OTA_UPDATER := true
AB_OTA_PARTITIONS += \
@@ -202,6 +197,7 @@
frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
+ frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
@@ -368,6 +364,10 @@
ro.vendor.bluetooth.emb_wp_mode=false \
ro.vendor.bluetooth.wipower=false
+# HEH filename encryption is being dropped
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.crypto.volume.filenames_mode=aes-256-cts
+
# DRM HAL
PRODUCT_PACKAGES += \
android.hardware.drm@1.0-impl \
@@ -381,21 +381,22 @@
Tag \
SecureElement \
android.hardware.nfc@1.1-service \
- android.hardware.secure_element@1.0-service-disabled
+ android.hardware.secure_element@1.1-service-disabled
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
vendor.ese.loader_script_path=/sys/firmware/devicetree/base/soc/i2c@88c000/nq@28/ese/loader_scripts_path
PRODUCT_COPY_FILES += \
- device/google/crosshatch/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_SYSTEM)/etc/libnfc-nci.conf \
- device/google/crosshatch/nfc/libese-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libese-nxp.conf
+ frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G013A/android.hardware.nfc.uicc.xml \
+ frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G013B/android.hardware.nfc.ese.xml \
+ frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G013C/android.hardware.nfc.uicc.xml \
+ frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G013D/android.hardware.nfc.ese.xml
-# TODO(b/72443662)
PRODUCT_COPY_FILES += \
- device/google/crosshatch/nfc/manifest_se_SIM1.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/vintf/manifest_G013A.xml \
- device/google/crosshatch/nfc/manifest_se_eSE1.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/vintf/manifest_G013B.xml \
- device/google/crosshatch/nfc/manifest_se_SIM1.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/vintf/manifest_G013C.xml \
- device/google/crosshatch/nfc/manifest_se_eSE1.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/vintf/manifest_G013D.xml
+ device/google/crosshatch/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf \
+ device/google/crosshatch/nfc/libese-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libese-nxp.conf \
+ device/google/crosshatch/felica/loaderservice_updater_1.lss:$(TARGET_COPY_OUT_VENDOR)/etc/loaderservice_updater_1.lss \
+ device/google/crosshatch/felica/loaderservice_updater_2.lss:$(TARGET_COPY_OUT_VENDOR)/etc/loaderservice_updater_2.lss
PRODUCT_PACKAGES += \
android.hardware.usb@1.1-service.crosshatch
@@ -519,13 +520,15 @@
audio.usb.default \
audio.r_submix.default \
libaudio-resampler \
- audio.hearing_aid.default
+ audio.hearing_aid.default \
+ audio.bluetooth.default
PRODUCT_PACKAGES += \
android.hardware.audio@4.0-impl:32 \
android.hardware.audio.effect@4.0-impl:32 \
android.hardware.broadcastradio@1.0-impl \
android.hardware.soundtrigger@2.1-impl \
+ android.hardware.bluetooth.audio@2.0-impl \
android.hardware.audio@2.0-service
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
@@ -540,6 +543,9 @@
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
$(LOCAL_PATH)/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
+ $(LOCAL_PATH)/audio_policy_configuration_bluetooth_hal_enabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_hal_enabled.xml \
+ $(LOCAL_PATH)/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
+ $(LOCAL_PATH)/bluetooth_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_hearing_aid_audio_policy_configuration.xml \
$(LOCAL_PATH)/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
@@ -577,10 +583,6 @@
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf
-# GPS debug file
-PRODUCT_COPY_FILES += \
- $(LOCAL_PATH)/gps_debug.conf:system/etc/gps_debug.conf
-
# Vendor seccomp policy files for media components:
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/seccomp_policy/codec2.vendor.ext.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/codec2.vendor.ext.policy \
diff --git a/dumpstate/DumpstateDevice.cpp b/dumpstate/DumpstateDevice.cpp
index 32139f6..7ef0e13 100755
--- a/dumpstate/DumpstateDevice.cpp
+++ b/dumpstate/DumpstateDevice.cpp
@@ -129,6 +129,8 @@
{
"/data/vendor/radio/ril_log",
"/data/vendor/radio/ril_log_old",
+ "/data/vendor/radio/imsdatadaemon_log",
+ "/data/vendor/radio/imsdatadaemon_log_old",
"/data/vendor/netmgr/netmgr_log",
"/data/vendor/netmgr/netmgr_log_old",
"/data/vendor/radio/power_anomaly_data.txt",
@@ -280,6 +282,29 @@
}
}
+static void DumpVibrator(int fd) {
+ const std::string dir = "/sys/class/leds/vibrator/device/";
+ const std::vector<std::string> files {
+ "comp_enable",
+ "cp_dig_scale",
+ "cp_trigger_index",
+ "cp_trigger_queue",
+ "dig_scale",
+ "f0_stored",
+ "heartbeat",
+ "leds/vibrator/activate",
+ "leds/vibrator/duration",
+ "leds/vibrator/state",
+ "num_waves",
+ "redc_stored",
+ "standby_timeout",
+ };
+
+ for (const auto &file : files) {
+ DumpFileToFd(fd, "Vibrator", dir+file);
+ }
+}
+
// Methods from ::android::hardware::dumpstate::V1_0::IDumpstateDevice follow.
Return<void> DumpstateDevice::dumpstateBoard(const hidl_handle& handle) {
if (handle == nullptr || handle->numFds < 1) {
@@ -307,6 +332,9 @@
DumpFileToFd(fd, "Power Management Stats", "/sys/power/rpmh_stats/master_stats");
DumpFileToFd(fd, "WLAN Power Stats", "/d/wlan0/power_stats");
DumpFileToFd(fd, "LL-Stats", "/d/wlan0/ll_stats");
+ DumpFileToFd(fd, "WLAN Connect Info", "/d/wlan0/connect_info");
+ DumpFileToFd(fd, "WLAN Offload Info", "/d/wlan0/offload_info");
+ DumpFileToFd(fd, "WLAN Roaming Stats", "/d/wlan0/roam_stats");
DumpFileToFd(fd, "ICNSS Stats", "/d/icnss/stats");
DumpFileToFd(fd, "SMD Log", "/d/ipc_logging/smd/log");
RunCommandToFd(fd, "ION HEAPS", {"/vendor/bin/sh", "-c", "for d in $(ls -d /d/ion/*); do for f in $(ls $d); do echo --- $d/$f; cat $d/$f; done; done"});
@@ -352,6 +380,11 @@
RunCommandToFd(fd, "Citadel SELFTEST", {"/vendor/bin/hw/citadel_updater", "--selftest"});
}
+ DumpVibrator(fd);
+
+ // Dump various events in WiFi data path
+ DumpFileToFd(fd, "WLAN DP Trace", "/d/wlan/dpt_stats/dump_set_dpt_logs");
+
// Keep this at the end as very long on not for humans
DumpFileToFd(fd, "WLAN FW Log Symbol Table", "/vendor/firmware/Data.msc");
diff --git a/gps_debug.conf b/gps_debug.conf
deleted file mode 100644
index 34ce96f..0000000
--- a/gps_debug.conf
+++ /dev/null
@@ -1,52 +0,0 @@
-# Sample file for use for on device debug override only
-# Prefer frameworks/base/core/res/res/values/config.xml and
-# frameworks/base/core/res/res/values-mcc*-mnc*/config.xml
-
-################################
-##### AGPS server settings #####
-################################
-# FOR SUPL SUPPORT, set the following
-# SUPL_HOST=supl.google.com or IP
-# SUPL_PORT=7275
-
-# supl version 2.0
-# SUPL_VER=0x20000
-
-#SUPL_MODE is a bit mask set in config.xml per carrier by default.
-#If it is uncommented here, this value will overwrite the value from
-#config.xml.
-#MSA=0X2
-#MSB=0X1
-#SUPL_MODE=1
-
-# Emergency SUPL, 1=enable, 0=disable
-#SUPL_ES=0
-
-#Choose PDN for Emergency SUPL
-#1 - Use emergency PDN
-#0 - Use regular SUPL PDN for Emergency SUPL
-#USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL=0
-
-####################################
-# LTE Positioning Profile Settings
-####################################
-# 0: Enable RRLP on LTE(Default)
-# 1: Enable LPP_User_Plane on LTE
-# 2: Enable LPP_Control_Plane
-# 3: Enable both LPP_User_Plane and LPP_Control_Plane
-#LPP_PROFILE = 2
-
-##################################################
-# Select Positioning Protocol on A-GLONASS system
-##################################################
-# 0x1: RRC CPlane
-# 0x2: RRLP UPlane
-# 0x4: LLP Uplane
-#A_GLONASS_POS_PROTOCOL_SELECT = 0
-
-# Below bit mask configures how GPS functionalities
-# should be locked when user turns off GPS on Settings
-# Set bit 0x1 if MO GPS functionalities are to be locked
-# Set bit 0x2 if NI GPS functionalities are to be locked
-# default - non is locked for backward compatibility
-#GPS_LOCK = 0
diff --git a/gpt-utils/Android.mk b/gpt-utils/Android.mk
index 6dd1a44..3ccd57b 100644
--- a/gpt-utils/Android.mk
+++ b/gpt-utils/Android.mk
@@ -25,6 +25,7 @@
LOCAL_SHARED_LIBRARIES := liblog libz
LOCAL_MODULE := libgptutils
LOCAL_MODULE_OWNER := qti
+LOCAL_CFLAGS := -Wall -Werror
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
@@ -38,6 +39,7 @@
LOCAL_MODULE := libgptutils
LOCAL_MODULE_OWNER := qti
LOCAL_PROPRIETARY_MODULE := true
+LOCAL_CFLAGS := -Wall -Werror
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
diff --git a/gpt-utils/gpt-utils.cpp b/gpt-utils/gpt-utils.cpp
index 13252bb..f051f58 100644
--- a/gpt-utils/gpt-utils.cpp
+++ b/gpt-utils/gpt-utils.cpp
@@ -51,7 +51,7 @@
#include <vector>
#include <string>
#define LOG_TAG "gpt-utils"
-#include <cutils/log.h>
+#include <log/log.h>
#include <cutils/properties.h>
#include "gpt-utils.h"
#include <endian.h>
@@ -747,7 +747,6 @@
enum gpt_state gpt_prim, gpt_second;
enum boot_update_stage internal_stage;
struct stat xbl_partition_stat;
- struct stat ufs_dir_stat;
if (!dev_path) {
fprintf(stderr, "%s: Invalid dev_path\n",
@@ -970,7 +969,6 @@
int prepare_boot_update(enum boot_update_stage stage)
{
- int r, fd;
int is_ufs = gpt_utils_is_ufs_device();
struct stat ufs_dir_stat;
struct update_data data;
diff --git a/health/Android.bp b/health/Android.bp
index b7a7b08..07f3374 100644
--- a/health/Android.bp
+++ b/health/Android.bp
@@ -31,6 +31,7 @@
cflags: [
"-Wall",
"-Werror",
+ "-Wno-implicit-fallthrough", // warning in BatteryRechargingControl.cpp
],
static_libs: [
diff --git a/init.common.rc b/init.common.rc
deleted file mode 100644
index 4f3e5c9..0000000
--- a/init.common.rc
+++ /dev/null
@@ -1,6 +0,0 @@
-# zygote need to be started after otapreopt which will be done on post-fs-data
-on zygote-start
- # zygote is started in common init.rc
- # and now we can continue to initialize /data/
- # create the directory for preload content.
- mkdir /data/preloads 0775 system system
diff --git a/init.hardware.diag.rc.userdebug b/init.hardware.diag.rc.userdebug
index cd69660..38a0e02 100644
--- a/init.hardware.diag.rc.userdebug
+++ b/init.hardware.diag.rc.userdebug
@@ -84,7 +84,7 @@
service ftmd /vendor/bin/ftmdaemon
class late_start
user root
- group bluetooth net_bt_admin misc net_bt_stack diag net_bt
+ group bluetooth net_bt_admin misc diag net_bt
disabled
oneshot
diff --git a/init.hardware.rc b/init.hardware.rc
index 80406dc..448565f 100644
--- a/init.hardware.rc
+++ b/init.hardware.rc
@@ -74,7 +74,6 @@
start keymaster-4-0
# start Citadel keymaster (StrongBox) early
- start vndservicemanager
start vendor.citadeld
start vendor.keymaster-4-0-citadel
@@ -218,8 +217,6 @@
write /sys/devices/virtual/thermal/tz-by-name/fps-therm-adc/mode enabled
on fs
- # Start HW service manager early
- start hwservicemanager
mount_all /vendor/etc/fstab.${ro.boot.hardware.platform} --early
mkdir /persist/data 0700 system system
@@ -439,11 +436,16 @@
chmod 0660 /dev/vd6281
# Permission for Vibrator
+ chown system system /sys/class/leds/vibrator/device/comp_enable
+ chown system system /sys/class/leds/vibrator/device/cp_dig_scale
chown system system /sys/class/leds/vibrator/device/cp_trigger_index
chown system system /sys/class/leds/vibrator/device/cp_trigger_queue
chown system system /sys/class/leds/vibrator/device/dig_scale
chown system system /sys/class/leds/vibrator/device/f0_stored
+ chown system system /sys/class/leds/vibrator/device/heartbeat
+ chown system system /sys/class/leds/vibrator/device/num_waves
chown system system /sys/class/leds/vibrator/device/redc_stored
+ chown system system /sys/class/leds/vibrator/device/standby_timeout
# Permission for LED driver
chown system system /sys/class/leds/red/on_off_ms
@@ -874,17 +876,17 @@
setprop ro.boot.sota enabled
on property:ro.boot.hardware.sku=G013A
- setprop persist.nfc.uicc_enabled true
+ setprop persist.vendor.nfc.uicc_enabled true
on property:ro.boot.hardware.sku=G013B
- setprop persist.nfc.uicc_enabled false
+ setprop persist.vendor.nfc.uicc_enabled false
setprop persist.vendor.radio.uicc_se_enabled false
- interface_start android.hardware.secure_element@1.0::ISecureElement/eSE1
+ interface_start android.hardware.secure_element@1.1::ISecureElement/eSE1
on property:ro.boot.hardware.sku=G013C
- setprop persist.nfc.uicc_enabled true
+ setprop persist.vendor.nfc.uicc_enabled true
on property:ro.boot.hardware.sku=G013D
- setprop persist.nfc.uicc_enabled false
+ setprop persist.vendor.nfc.uicc_enabled false
setprop persist.vendor.radio.uicc_se_enabled false
- interface_start android.hardware.secure_element@1.0::ISecureElement/eSE1
+ interface_start android.hardware.secure_element@1.1::ISecureElement/eSE1
# charger driver exposes now finer grain control, map demo mode to those properties
# demo mode can only be exit wipping data which will also reset the persist properties
diff --git a/init.qcom.wlan.sh b/init.qcom.wlan.sh
index 7858701..0d14fab 100644
--- a/init.qcom.wlan.sh
+++ b/init.qcom.wlan.sh
@@ -1,6 +1,6 @@
#! /vendor/bin/sh
wlan_driver_version=`cat /sys/kernel/wifi/wlan/driver_version`
-setprop sys.wlan.driver.version "$wlan_driver_version"
+setprop vendor.wlan.driver.version "$wlan_driver_version"
wlan_fw_version=`cat /sys/kernel/wifi/wlan/fw/0/version`
-setprop sys.wlan.firmware.version "$wlan_fw_version"
+setprop vendor.wlan.firmware.version "$wlan_fw_version"
diff --git a/init.radio.sh b/init.radio.sh
index c11d1a0..7b980c9 100644
--- a/init.radio.sh
+++ b/init.radio.sh
@@ -22,16 +22,16 @@
prev_version_info=""
fi
-cur_version_info=`cat /firmware/verinfo/ver_info.txt`
-if [ ! -f /firmware/verinfo/ver_info.txt -o "$prev_version_info" != "$cur_version_info" ]; then
+cur_version_info=`cat /vendor/firmware_mnt/verinfo/ver_info.txt`
+if [ ! -f /vendor/firmware_mnt/verinfo/ver_info.txt -o "$prev_version_info" != "$cur_version_info" ]; then
rm -rf /data/vendor/radio/modem_config
mkdir /data/vendor/radio/modem_config
chmod 770 /data/vendor/radio/modem_config
- cp -r /firmware/image/modem_pr/mcfg/configs/* /data/vendor/radio/modem_config
+ cp -r /vendor/firmware_mnt/image/modem_pr/mcfg/configs/* /data/vendor/radio/modem_config
chown -hR radio.radio /data/vendor/radio/modem_config
- cp /firmware/verinfo/ver_info.txt /data/vendor/radio/ver_info.txt
+ cp /vendor/firmware_mnt/verinfo/ver_info.txt /data/vendor/radio/ver_info.txt
chown radio.radio /data/vendor/radio/ver_info.txt
fi
-cp /firmware/image/modem_pr/mbn_ota.txt /data/vendor/radio/modem_config
+cp /vendor/firmware_mnt/image/modem_pr/mbn_ota.txt /data/vendor/radio/modem_config
chown radio.radio /data/vendor/radio/modem_config/mbn_ota.txt
echo 1 > /data/vendor/radio/copy_complete
diff --git a/manifest.xml b/manifest.xml
index 1e18eee..c120eff 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -54,6 +54,15 @@
</interface>
</hal>
<hal format="hidl">
+ <name>android.hardware.bluetooth.audio</name>
+ <transport>hwbinder</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IBluetoothAudioProvidersFactory</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
<name>android.hardware.boot</name>
<transport>hwbinder</transport>
<version>1.0</version>
@@ -72,15 +81,6 @@
</interface>
</hal>
<hal format="hidl">
- <name>android.hardware.cas</name>
- <transport>hwbinder</transport>
- <version>1.0</version>
- <interface>
- <name>IMediaCasService</name>
- <instance>default</instance>
- </interface>
- </hal>
- <hal format="hidl">
<name>android.hardware.configstore</name>
<transport>hwbinder</transport>
<version>1.1</version>
diff --git a/nfc/manifest_se_eSE1.xml b/nfc/manifest_se_eSE1.xml
index 3eb7431..b334e0d 100644
--- a/nfc/manifest_se_eSE1.xml
+++ b/nfc/manifest_se_eSE1.xml
@@ -2,7 +2,7 @@
<hal format="hidl">
<name>android.hardware.secure_element</name>
<transport>hwbinder</transport>
- <version>1.0</version>
+ <version>1.1</version>
<interface>
<name>ISecureElement</name>
<instance>eSE1</instance>
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index a485255..db9d74f 100755
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -332,14 +332,15 @@
<!-- Default list of files pinned by the Pinner Service -->
<string-array translatable="false" name="config_defaultPinnerServiceFiles">
<item>"/system/framework/arm64/boot-framework.oat"</item>
- <item>"/system/framework/boot-framework.vdex"</item>
+ <item>"/system/framework/framework.jar"</item>
<item>"/system/framework/oat/arm64/services.odex"</item>
- <item>"/system/framework/oat/arm64/services.vdex"</item>
+ <item>"/system/framework/services.jar"</item>
<item>"/system/framework/arm64/boot.oat"</item>
- <item>"/system/framework/boot.vdex"</item>
<item>"/system/framework/arm64/boot-core-libart.oat"</item>
- <item>"/system/framework/boot-core-libart.vdex"</item>
- <item>"/system/priv-app/SystemUIGoogle/oat/arm64/SystemUIGoogle.vdex"</item>
+ <item>"/apex/com.android.runtime/javalib/core-oj.jar"</item>
+ <item>"/apex/com.android.runtime/javalib/core-libart.jar"</item>
+ <item>"/apex/com.android.media/javalib/updatable-media.jar"</item>
+ <item>"/system/priv-app/SystemUIGoogle/SystemUIGoogle.apk"</item>
<item>"/system/priv-app/SystemUIGoogle/oat/arm64/SystemUIGoogle.odex"</item>
<item>"/system/lib64/libsurfaceflinger.so"</item>
</string-array>
@@ -350,6 +351,19 @@
<!-- Should the pinner service pin the Home application? -->
<bool name="config_pinnerHomeApp">true</bool>
+ <!-- List of files pinned by the Pinner Service with the apex boot image b/119800099 -->
+ <string-array translatable="false" name="config_apexBootImagePinnerServiceFiles">
+ <item>"/system/framework/framework.jar"</item>
+ <item>"/system/framework/services.jar"</item>
+ <item>"/system/framework/arm64/apex.oat"</item>
+ <item>"/system/framework/arm64/apex-core-libart.oat"</item>
+ <item>"/apex/com.android.runtime/javalib/core-oj.jar"</item>
+ <item>"/apex/com.android.runtime/javalib/core-libart.jar"</item>
+ <item>"/apex/com.android.media/javalib/updatable-media.jar"</item>
+ <item>"/system/priv-app/SystemUIGoogle/SystemUIGoogle.apk"</item>
+ <item>"/system/lib64/libsurfaceflinger.so"</item>
+ </string-array>
+
<!-- Enable system navigation keys. -->
<bool name="config_supportSystemNavigationKeys">true</bool>
diff --git a/overlay/packages/apps/Nfc/res/values/config.xml b/overlay/packages/apps/Nfc/res/values/config.xml
new file mode 100644
index 0000000..180805f
--- /dev/null
+++ b/overlay/packages/apps/Nfc/res/values/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2019 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>
+ <string-array name="config_skuSupportsSecureNfc" translatable="false">
+ <item>G013B</item>
+ <item>G013D</item>
+ </string-array>
+</resources>
diff --git a/preloads_copy.sh b/preloads_copy.sh
deleted file mode 100644
index 7e5e8e4..0000000
--- a/preloads_copy.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/system/bin/sh
-#
-# Copyright (C) 2016 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 script copies preloaded content from system_b to data partition
-
-# create files with 644 (global read) permissions.
-umask 022
-
-if [ $# -eq 1 ]; then
- # Where the system_b is mounted that contains the preloads dir
- mountpoint=$1
- dest_dir=/data/preloads
- log -p i -t preloads_copy "Copying from $mountpoint/preloads"
- # Parallelize by copying subfolders and files in the background
- for file in $(find ${mountpoint}/preloads -mindepth 1 -maxdepth 1); do
- cp -rn $file $dest_dir &
- done
- # Wait for jobs to finish
- wait
- log -p i -t preloads_copy "Copying complete"
- exit 0
-else
- log -p e -t preloads_copy "Usage: preloads_copy.sh <system_other-mount-point>"
- exit 1
-fi
diff --git a/recovery/Android.bp b/recovery/Android.bp
index 4207124..0ff7629 100644
--- a/recovery/Android.bp
+++ b/recovery/Android.bp
@@ -26,12 +26,14 @@
srcs: [
"recovery_ui.cpp",
],
- include_dirs: [
- "bootable/recovery"
- ],
+
static_libs: [
"libbase",
"libnos_for_recovery",
"libnos_citadel_for_recovery",
],
+
+ shared_libs: [
+ "librecovery_ui",
+ ],
}
diff --git a/recovery/recovery_ui.cpp b/recovery/recovery_ui.cpp
index 870831c..6a20579 100644
--- a/recovery/recovery_ui.cpp
+++ b/recovery/recovery_ui.cpp
@@ -21,8 +21,8 @@
#include <nos/debug.h>
#include <nos/NuggetClient.h>
-#include <device.h>
-#include <screen_ui.h>
+#include <recovery_ui/device.h>
+#include <recovery_ui/screen_ui.h>
namespace android {
namespace device {
diff --git a/self-extractors/extract-lists.txt b/self-extractors/extract-lists.txt
index 3ffb3d2..f4ba410 100644
--- a/self-extractors/extract-lists.txt
+++ b/self-extractors/extract-lists.txt
@@ -11,7 +11,6 @@
system/etc/firmware/music_detector.sound_model \
system/etc/init/init-persist.rc \
system/etc/permissions/cneapiclient.xml \
- system/etc/permissions/com.google.android.factoryota.xml \
system/etc/permissions/com.qualcomm.qti.imscmservice.xml \
system/etc/permissions/com.quicinc.cne.xml \
system/etc/permissions/embms.xml \
@@ -63,7 +62,6 @@
system/lib64/libsensorslog.so \
system/lib64/libsns_low_lat_stream_stub.so \
system/lib64/libOpenCL_system.so \
- system/lib64/libprotobuf-cpp-full-rtti.so \
system/lib64/libqcbor.so \
system/lib64/libsmcinvokecred.so \
system/lib64/libtzcom.so \
@@ -80,9 +78,7 @@
system/lib/lib-imsvtutils.so \
system/lib/liblistenjni.so \
system/lib/liblistensoundmodel2.so \
- system/lib/liblogwrap.so \
system/lib/libmdsprpc_system.so \
- system/lib/libprotobuf-cpp-full.so \
system/lib/libqct_resampler.so \
system/lib/libQTEEConnector_system.so \
system/lib/librcc.so \
@@ -93,7 +89,6 @@
system/lib/libsensorslog.so \
system/lib/libsns_low_lat_stream_stub.so \
system/lib/libOpenCL_system.so \
- system/lib/libprotobuf-cpp-full-rtti.so \
system/lib/libqcbor.so \
system/lib/libsmcinvokecred.so \
system/lib/libtzcom.so \
diff --git a/self-extractors/qcom/staging/device-partial.mk b/self-extractors/qcom/staging/device-partial.mk
index 4a65d37..833f4d7 100644
--- a/self-extractors/qcom/staging/device-partial.mk
+++ b/self-extractors/qcom/staging/device-partial.mk
@@ -15,12 +15,12 @@
# AOSP packages required by the blobs
PRODUCT_PACKAGES := \
com.android.ims.rcsmanager.xml \
- com.android.ims.rcsmanager
+ com.android.ims.rcsmanager \
+ libprotobuf-cpp-full
# blob(s) necessary for crosshatch hardware
PRODUCT_COPY_FILES := \
vendor/qcom/crosshatch/proprietary/cneapiclient.xml:system/etc/permissions/cneapiclient.xml:qcom \
- vendor/qcom/crosshatch/proprietary/com.google.android.factoryota.xml:system/etc/permissions/com.google.android.factoryota.xml:qcom \
vendor/qcom/crosshatch/proprietary/com.qualcomm.qti.imscmservice.xml:system/etc/permissions/com.qualcomm.qti.imscmservice.xml:qcom \
vendor/qcom/crosshatch/proprietary/com.qualcomm.qti.uceservice-V2.0-java.jar:system/framework/com.qualcomm.qti.uceservice-V2.0-java.jar:qcom \
vendor/qcom/crosshatch/proprietary/com.quicinc.cne.xml:system/etc/permissions/com.quicinc.cne.xml:qcom \
@@ -53,7 +53,6 @@
vendor/qcom/crosshatch/proprietary/lib64/libsensorslog.so:system/lib64/libsensorslog.so:qcom \
vendor/qcom/crosshatch/proprietary/lib64/libsns_low_lat_stream_stub.so:system/lib64/libsns_low_lat_stream_stub.so:qcom \
vendor/qcom/crosshatch/proprietary/lib64/libOpenCL_system.so:system/lib64/libOpenCL_system.so:qcom \
- vendor/qcom/crosshatch/proprietary/lib64/libprotobuf-cpp-full-rtti.so:system/lib64/libprotobuf-cpp-full-rtti.so:qcom \
vendor/qcom/crosshatch/proprietary/lib64/libqcbor.so:system/lib64/libqcbor.so:qcom \
vendor/qcom/crosshatch/proprietary/lib64/libsmcinvokecred.so:system/lib64/libsmcinvokecred.so:qcom \
vendor/qcom/crosshatch/proprietary/lib64/libtzcom.so:system/lib64/libtzcom.so:qcom \
@@ -70,9 +69,7 @@
vendor/qcom/crosshatch/proprietary/lib-imsvtutils.so:system/lib/lib-imsvtutils.so:qcom \
vendor/qcom/crosshatch/proprietary/liblistenjni.so:system/lib/liblistenjni.so:qcom \
vendor/qcom/crosshatch/proprietary/liblistensoundmodel2.so:system/lib/liblistensoundmodel2.so:qcom \
- vendor/qcom/crosshatch/proprietary/liblogwrap.so:system/lib/liblogwrap.so:qcom \
vendor/qcom/crosshatch/proprietary/libmdsprpc_system.so:system/lib/libmdsprpc_system.so:qcom \
- vendor/qcom/crosshatch/proprietary/libprotobuf-cpp-full.so:system/lib/libprotobuf-cpp-full.so:qcom \
vendor/qcom/crosshatch/proprietary/libqct_resampler.so:system/lib/libqct_resampler.so:qcom \
vendor/qcom/crosshatch/proprietary/libQTEEConnector_system.so:system/lib/libQTEEConnector_system.so:qcom \
vendor/qcom/crosshatch/proprietary/librcc.so:system/lib/librcc.so:qcom \
@@ -84,7 +81,6 @@
vendor/qcom/crosshatch/proprietary/libsns_low_lat_stream_skel.so:system/lib/rfsa/adsp/libsns_low_lat_stream_skel.so:qcom \
vendor/qcom/crosshatch/proprietary/libsns_low_lat_stream_stub.so:system/lib/libsns_low_lat_stream_stub.so:qcom \
vendor/qcom/crosshatch/proprietary/libOpenCL_system.so:system/lib/libOpenCL_system.so:qcom \
- vendor/qcom/crosshatch/proprietary/libprotobuf-cpp-full-rtti.so:system/lib/libprotobuf-cpp-full-rtti.so:qcom \
vendor/qcom/crosshatch/proprietary/libqcbor.so:system/lib/libqcbor.so:qcom \
vendor/qcom/crosshatch/proprietary/libsmcinvokecred.so:system/lib/libsmcinvokecred.so:qcom \
vendor/qcom/crosshatch/proprietary/libtzcom.so:system/lib/libtzcom.so:qcom \
diff --git a/self-extractors_blueline/extract-lists.txt b/self-extractors_blueline/extract-lists.txt
index 3ffb3d2..f4ba410 100644
--- a/self-extractors_blueline/extract-lists.txt
+++ b/self-extractors_blueline/extract-lists.txt
@@ -11,7 +11,6 @@
system/etc/firmware/music_detector.sound_model \
system/etc/init/init-persist.rc \
system/etc/permissions/cneapiclient.xml \
- system/etc/permissions/com.google.android.factoryota.xml \
system/etc/permissions/com.qualcomm.qti.imscmservice.xml \
system/etc/permissions/com.quicinc.cne.xml \
system/etc/permissions/embms.xml \
@@ -63,7 +62,6 @@
system/lib64/libsensorslog.so \
system/lib64/libsns_low_lat_stream_stub.so \
system/lib64/libOpenCL_system.so \
- system/lib64/libprotobuf-cpp-full-rtti.so \
system/lib64/libqcbor.so \
system/lib64/libsmcinvokecred.so \
system/lib64/libtzcom.so \
@@ -80,9 +78,7 @@
system/lib/lib-imsvtutils.so \
system/lib/liblistenjni.so \
system/lib/liblistensoundmodel2.so \
- system/lib/liblogwrap.so \
system/lib/libmdsprpc_system.so \
- system/lib/libprotobuf-cpp-full.so \
system/lib/libqct_resampler.so \
system/lib/libQTEEConnector_system.so \
system/lib/librcc.so \
@@ -93,7 +89,6 @@
system/lib/libsensorslog.so \
system/lib/libsns_low_lat_stream_stub.so \
system/lib/libOpenCL_system.so \
- system/lib/libprotobuf-cpp-full-rtti.so \
system/lib/libqcbor.so \
system/lib/libsmcinvokecred.so \
system/lib/libtzcom.so \
diff --git a/self-extractors_blueline/qcom/staging/device-partial.mk b/self-extractors_blueline/qcom/staging/device-partial.mk
index 038734d..5129571 100644
--- a/self-extractors_blueline/qcom/staging/device-partial.mk
+++ b/self-extractors_blueline/qcom/staging/device-partial.mk
@@ -15,12 +15,12 @@
# AOSP packages required by the blobs
PRODUCT_PACKAGES := \
com.android.ims.rcsmanager.xml \
- com.android.ims.rcsmanager
+ com.android.ims.rcsmanager \
+ libprotobuf-cpp-full
# blob(s) necessary for blueline hardware
PRODUCT_COPY_FILES := \
vendor/qcom/blueline/proprietary/cneapiclient.xml:system/etc/permissions/cneapiclient.xml:qcom \
- vendor/qcom/blueline/proprietary/com.google.android.factoryota.xml:system/etc/permissions/com.google.android.factoryota.xml:qcom \
vendor/qcom/blueline/proprietary/com.qualcomm.qti.imscmservice.xml:system/etc/permissions/com.qualcomm.qti.imscmservice.xml:qcom \
vendor/qcom/blueline/proprietary/com.qualcomm.qti.uceservice-V2.0-java.jar:system/framework/com.qualcomm.qti.uceservice-V2.0-java.jar:qcom \
vendor/qcom/blueline/proprietary/com.quicinc.cne.xml:system/etc/permissions/com.quicinc.cne.xml:qcom \
@@ -53,7 +53,6 @@
vendor/qcom/blueline/proprietary/lib64/libsensorslog.so:system/lib64/libsensorslog.so:qcom \
vendor/qcom/blueline/proprietary/lib64/libsns_low_lat_stream_stub.so:system/lib64/libsns_low_lat_stream_stub.so:qcom \
vendor/qcom/blueline/proprietary/lib64/libOpenCL_system.so:system/lib64/libOpenCL_system.so:qcom \
- vendor/qcom/blueline/proprietary/lib64/libprotobuf-cpp-full-rtti.so:system/lib64/libprotobuf-cpp-full-rtti.so:qcom \
vendor/qcom/blueline/proprietary/lib64/libqcbor.so:system/lib64/libqcbor.so:qcom \
vendor/qcom/blueline/proprietary/lib64/libsmcinvokecred.so:system/lib64/libsmcinvokecred.so:qcom \
vendor/qcom/blueline/proprietary/lib64/libtzcom.so:system/lib64/libtzcom.so:qcom \
@@ -70,9 +69,7 @@
vendor/qcom/blueline/proprietary/lib-imsvtutils.so:system/lib/lib-imsvtutils.so:qcom \
vendor/qcom/blueline/proprietary/liblistenjni.so:system/lib/liblistenjni.so:qcom \
vendor/qcom/blueline/proprietary/liblistensoundmodel2.so:system/lib/liblistensoundmodel2.so:qcom \
- vendor/qcom/blueline/proprietary/liblogwrap.so:system/lib/liblogwrap.so:qcom \
vendor/qcom/blueline/proprietary/libmdsprpc_system.so:system/lib/libmdsprpc_system.so:qcom \
- vendor/qcom/blueline/proprietary/libprotobuf-cpp-full.so:system/lib/libprotobuf-cpp-full.so:qcom \
vendor/qcom/blueline/proprietary/libqct_resampler.so:system/lib/libqct_resampler.so:qcom \
vendor/qcom/blueline/proprietary/libQTEEConnector_system.so:system/lib/libQTEEConnector_system.so:qcom \
vendor/qcom/blueline/proprietary/librcc.so:system/lib/librcc.so:qcom \
@@ -84,7 +81,6 @@
vendor/qcom/blueline/proprietary/libsns_low_lat_stream_skel.so:system/lib/rfsa/adsp/libsns_low_lat_stream_skel.so:qcom \
vendor/qcom/blueline/proprietary/libsns_low_lat_stream_stub.so:system/lib/libsns_low_lat_stream_stub.so:qcom \
vendor/qcom/blueline/proprietary/libOpenCL_system.so:system/lib/libOpenCL_system.so:qcom \
- vendor/qcom/blueline/proprietary/libprotobuf-cpp-full-rtti.so:system/lib/libprotobuf-cpp-full-rtti.so:qcom \
vendor/qcom/blueline/proprietary/libqcbor.so:system/lib/libqcbor.so:qcom \
vendor/qcom/blueline/proprietary/libsmcinvokecred.so:system/lib/libsmcinvokecred.so:qcom \
vendor/qcom/blueline/proprietary/libtzcom.so:system/lib/libtzcom.so:qcom \
diff --git a/system.prop b/system.prop
index 1e13f77..8544330 100644
--- a/system.prop
+++ b/system.prop
@@ -88,3 +88,9 @@
#ro.use_data_netmgrd=true
persist.data.netmgrd.qos.enable=true
persist.data.mode=concurrent
+
+# System props to enable Bluetooth Quality Report (BQR) feature
+# BQR event mask configuration
+persist.bluetooth.bqr.event_mask=14
+# BQR minimum report interval configuration
+persist.bluetooth.bqr.min_interval_ms=500
diff --git a/ueventd.hardware.rc b/ueventd.hardware.rc
index 044cacb..13057ab 100644
--- a/ueventd.hardware.rc
+++ b/ueventd.hardware.rc
@@ -14,6 +14,9 @@
# limitations under the License.
#
+# The modem image is mounted at /vendor/firmware_mnt
+firmware_directories /vendor/firmware_mnt/image/
+
# the DIAG device node is not world writable/readable.
/dev/diag 0660 system diag
@@ -63,6 +66,7 @@
/dev/msm_amrwb 0660 system audio
/dev/msm_amrwbplus 0660 system audio
/dev/msm_aac 0660 system audio
+/dev/msm_mp3* 0660 system audio
/dev/msm_multi_aac 0660 system audio
/dev/msm_aac_in 0660 system audio
/dev/msm_qcelp_in 0660 system audio
@@ -88,6 +92,7 @@
/dev/ramdump_* 0640 system system
# BT
+/dev/ttyMSM0 0600 bluetooth bluetooth
/dev/ttyHS0 0660 bluetooth net_bt
/dev/btpower 0660 bluetooth net_bt
@@ -113,4 +118,4 @@
/dev/block/platform/soc/1d84000.ufshc/by-name/frp 0660 system system
# fuel gauge history
-/dev/maxfg_history 0644 system system
\ No newline at end of file
+/dev/maxfg_history 0644 system system
diff --git a/usb/Usb.cpp b/usb/Usb.cpp
index fcedf83..b3bac21 100644
--- a/usb/Usb.cpp
+++ b/usb/Usb.cpp
@@ -612,9 +612,9 @@
ev.events = EPOLLIN;
ev.data.ptr = (void *)uevent_event;
- epoll_fd = epoll_create(64);
+ epoll_fd = epoll_create1(EPOLL_CLOEXEC);
if (epoll_fd == -1) {
- ALOGE("epoll_create failed; errno=%d", errno);
+ ALOGE("epoll_create1 failed; errno=%d", errno);
goto error;
}
diff --git a/usb/UsbGadget.cpp b/usb/UsbGadget.cpp
index 74afc99..d7456ce 100644
--- a/usb/UsbGadget.cpp
+++ b/usb/UsbGadget.cpp
@@ -551,7 +551,7 @@
return Status::ERROR;
}
- unique_fd epollFd(epoll_create(2));
+ unique_fd epollFd(epoll_create1(EPOLL_CLOEXEC));
if (epollFd == -1) {
ALOGE("mEpollFd failed to create %d", errno);
return Status::ERROR;
diff --git a/utils.mk b/utils.mk
index c823d21..4a0cc2a 100644
--- a/utils.mk
+++ b/utils.mk
@@ -1,6 +1,4 @@
# vars for use by utils
-empty :=
-space := $(empty) $(empty)
colon := $(empty):$(empty)
underscore := $(empty)_$(empty)
diff --git a/vendorsetup.sh b/vendorsetup.sh
deleted file mode 100755
index dc9f0e9..0000000
--- a/vendorsetup.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Copyright 2015 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.
-#
-
-add_lunch_combo aosp_crosshatch-userdebug
-add_lunch_combo aosp_blueline-userdebug