resolve merge conflicts of 044b8c4e1d8ccdda798e39984394090136a359f4 to master

Test: I solemnly swear I tested this conflict resolution.
Bug: None
Change-Id: Ie90c3bca8cd6a6573ba0245b4e7460d56b65cde8
diff --git a/audio/oriole/config/bluetooth_with_le_audio_policy_configuration_7_0.xml b/audio/oriole/config/bluetooth_with_le_audio_policy_configuration_7_0.xml
index 8b2af59..e3f27d9 100644
--- a/audio/oriole/config/bluetooth_with_le_audio_policy_configuration_7_0.xml
+++ b/audio/oriole/config/bluetooth_with_le_audio_policy_configuration_7_0.xml
@@ -68,4 +68,4 @@
         <route type="mix" sink="BLE Speaker Out"
                sources="le audio output"/>
     </routes>
-</module>
\ No newline at end of file
+</module>
diff --git a/conf/init.raviole.rc b/conf/init.raviole.rc
index 1437c49..908b6cd 100644
--- a/conf/init.raviole.rc
+++ b/conf/init.raviole.rc
@@ -32,7 +32,7 @@
            property:persist.vendor.fingerprint.disable.fake.override=100
     setprop vendor.fingerprint.disable.fake ${persist.vendor.fingerprint.disable.fake.override}
 
-service insmod_sh_raviole /vendor/bin/init.insmod.sh /vendor/etc/init.insmod.${ro.hardware}.cfg
+service insmod_sh_raviole /vendor/bin/insmod.sh /vendor/etc/init.insmod.${ro.hardware}.cfg
     class main
     user root
     group root system
diff --git a/conf/init.slider.rc b/conf/init.slider.rc
index 3042b5b..af4a484 100644
--- a/conf/init.slider.rc
+++ b/conf/init.slider.rc
@@ -20,7 +20,7 @@
     start insmod_sh_slider
 
 
-service insmod_sh_slider /vendor/bin/init.insmod.sh /vendor/etc/init.insmod.slider.cfg
+service insmod_sh_slider /vendor/bin/insmod.sh /vendor/etc/init.insmod.slider.cfg
     class main
     user root
     group root system
diff --git a/conf/init.whitefin.rc b/conf/init.whitefin.rc
index c030ad7..8894c75 100644
--- a/conf/init.whitefin.rc
+++ b/conf/init.whitefin.rc
@@ -14,7 +14,7 @@
     wait_for_prop vendor.common.modules.ready 1
     start insmod_sh_whitefin
 
-service insmod_sh_whitefin /vendor/bin/init.insmod.sh /vendor/etc/init.insmod.whitefin.cfg
+service insmod_sh_whitefin /vendor/bin/insmod.sh /vendor/etc/init.insmod.whitefin.cfg
     class main
     user root
     group root system
diff --git a/device-oriole.mk b/device-oriole.mk
index 812ce1a..a034a01 100644
--- a/device-oriole.mk
+++ b/device-oriole.mk
@@ -33,7 +33,7 @@
 include device/google/gs101/fingerprint/udfps_common.mk
 include device/google/gs101/telephony/pktrouter.mk
 include hardware/google/pixel/vibrator/cs40l25/device.mk
-include device/google/gs101/bluetooth/bluetooth.mk
+include device/google/gs-common/bcmbt/bluetooth.mk
 
 ifeq ($(filter factory_oriole, $(TARGET_PRODUCT)),)
 include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -89,6 +89,20 @@
     sar_test \
     hci_inject
 
+# userdebug specific
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+# Bluetooth LE Audio Hardware offload
+PRODUCT_PRODUCT_PROPERTIES += \
+    ro.bluetooth.leaudio_offload.supported=true \
+    persist.bluetooth.leaudio_offload.disabled=true \
+    persist.bluetooth.le_audio_test=false
+endif
+
+# Bluetooth HAL
+PRODUCT_COPY_FILES += \
+	device/google/raviole/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
+
+
 # WirelessCharger
 DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
 
@@ -213,12 +227,6 @@
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
 
-# Bluetooth HAL
-PRODUCT_PACKAGES += \
-	bt_vendor.conf
-PRODUCT_COPY_FILES += \
-	device/google/raviole/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
-
 # tetheroffload HAL
 PRODUCT_PACKAGES += \
 	vendor.samsung_slsi.hardware.tetheroffload@1.1-service
@@ -234,15 +242,6 @@
 # This device is shipped with 31 (Android S)
 PRODUCT_SHIPPING_API_LEVEL := 31
 
-# userdebug specific
-ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
-# Bluetooth LE Audio Hardware offload
-PRODUCT_PRODUCT_PROPERTIES += \
-    ro.bluetooth.leaudio_offload.supported=true \
-    persist.bluetooth.leaudio_offload.disabled=true \
-    persist.bluetooth.le_audio_test=false
-endif
-
 # declare use of spatial audio
 PRODUCT_PROPERTY_OVERRIDES += \
     ro.audio.spatializer_enabled=true
@@ -254,16 +253,6 @@
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
 
-# Dolby integration
--include vendor/dolby/ds/dolby-buildspec.mk
-$(call inherit-product-if-exists, vendor/dolby/ds/dolby-product.mk)
-#  overwrite file coming from device/google/gs101/media_codecs_bo_c2.xml
-PRODUCT_COPY_FILES := \
-    device/google/raviole/media_codecs_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
-    $(PRODUCT_COPY_FILES)
-
-PRODUCT_RESTRICT_VENDOR_FILES := false
-
 # Enable adpf cpu hint session for SurfaceFlinger
 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
     debug.sf.enable_adpf_cpu_hint=true
@@ -271,3 +260,13 @@
 # Bluetooth OPUS codec
 PRODUCT_PRODUCT_PROPERTIES += \
     persist.bluetooth.opus.enabled=true
+
+# Location
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps.xml.oriole:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+else
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps_user.xml.oriole:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+endif
+
diff --git a/device-raven.mk b/device-raven.mk
index e97a150..b965539 100644
--- a/device-raven.mk
+++ b/device-raven.mk
@@ -32,7 +32,7 @@
 include device/google/gs101/device-shipping-common.mk
 include device/google/gs101/fingerprint/udfps_common.mk
 include device/google/gs101/telephony/pktrouter.mk
-include device/google/gs101/bluetooth/bluetooth.mk
+include device/google/gs-common/bcmbt/bluetooth.mk
 
 ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),)
 include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -88,12 +88,24 @@
     $(LOCAL_PATH)/bluetooth_power_limits_raven_eu.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \
     $(LOCAL_PATH)/bluetooth_power_limits_raven_jp.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv
 
+# Bluetooth HAL
+PRODUCT_COPY_FILES += \
+	device/google/raviole/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
 
 # Bluetooth Hal Extension test tools
 PRODUCT_PACKAGES_DEBUG += \
     sar_test \
     hci_inject
 
+# userdebug specific
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+# Bluetooth LE Audio Hardware offload
+PRODUCT_PRODUCT_PROPERTIES += \
+    ro.bluetooth.leaudio_offload.supported=true \
+    persist.bluetooth.leaudio_offload.disabled=true \
+    persist.bluetooth.le_audio_test=false
+endif
+
 # WirelessCharger
 DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product_wireless.xml
 
@@ -226,12 +238,6 @@
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
 
-# Bluetooth HAL
-PRODUCT_PACKAGES += \
-	bt_vendor.conf
-PRODUCT_COPY_FILES += \
-	device/google/raviole/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
-
 # tetheroffload HAL
 PRODUCT_PACKAGES += \
 	vendor.samsung_slsi.hardware.tetheroffload@1.1-service
@@ -247,15 +253,6 @@
 # This device is shipped with 31 (Android S)
 PRODUCT_SHIPPING_API_LEVEL := 31
 
-# userdebug specific
-ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
-# Bluetooth LE Audio Hardware offload
-PRODUCT_PRODUCT_PROPERTIES += \
-    ro.bluetooth.leaudio_offload.supported=true \
-    persist.bluetooth.leaudio_offload.disabled=true \
-    persist.bluetooth.le_audio_test=false
-endif
-
 # declare use of spatial audio
 PRODUCT_PROPERTY_OVERRIDES += \
     ro.audio.spatializer_enabled=true
@@ -267,16 +264,6 @@
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
 
-# Dolby integration
--include vendor/dolby/ds/dolby-buildspec.mk
-$(call inherit-product-if-exists, vendor/dolby/ds/dolby-product.mk)
-#  overwrite file coming from device/google/gs101/media_codecs_bo_c2.xml
-PRODUCT_COPY_FILES := \
-    device/google/raviole/media_codecs_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
-    $(PRODUCT_COPY_FILES)
-
-PRODUCT_RESTRICT_VENDOR_FILES := false
-
 # Enable adpf cpu hint session for SurfaceFlinger
 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
     debug.sf.enable_adpf_cpu_hint=true
@@ -284,3 +271,13 @@
 # Bluetooth OPUS codec
 PRODUCT_PRODUCT_PROPERTIES += \
     persist.bluetooth.opus.enabled=true
+
+# Location
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps.xml.raven:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+else
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps_user.xml.raven:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+endif
+
diff --git a/device-slider.mk b/device-slider.mk
index 07834b4..dbbdad4 100644
--- a/device-slider.mk
+++ b/device-slider.mk
@@ -27,7 +27,7 @@
 include device/google/gs101/device-common.mk
 include device/google/raviole/audio/slider/audio-tables.mk
 include hardware/google/pixel/vibrator/cs40l25/device.mk
-include device/google/gs101/bluetooth/bluetooth.mk
+include device/google/gs-common/bcmbt/bluetooth.mk
 
 # go/lyric-soong-variables
 $(call soong_config_set,lyric,camera_hardware,slider)
@@ -107,10 +107,6 @@
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
 
-# Bluetooth HAL
-PRODUCT_PACKAGES += \
-	bt_vendor.conf
-
 # tetheroffload HAL
 PRODUCT_PACKAGES += \
 	vendor.samsung_slsi.hardware.tetheroffload@1.1-service
@@ -125,3 +121,13 @@
 # Device features
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
+
+# Location
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+else
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps_user.xml:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+endif
+
diff --git a/device-whitefin.mk b/device-whitefin.mk
index 41f5da2..0cbd1a3 100644
--- a/device-whitefin.mk
+++ b/device-whitefin.mk
@@ -27,7 +27,7 @@
 include device/google/gs101/device-common.mk
 include hardware/google/pixel/vibrator/drv2624/device.mk
 include device/google/raviole/audio/whitefin/audio-tables.mk
-include device/google/gs101/bluetooth/bluetooth.mk
+include device/google/gs-common/bcmbt/bluetooth.mk
 
 # go/lyric-soong-variables
 $(call soong_config_set,lyric,camera_hardware,slider)
@@ -86,10 +86,6 @@
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
 
-# Bluetooth HAL
-PRODUCT_PACKAGES += \
-	bt_vendor.conf
-
 # tetheroffload HAL
 PRODUCT_PACKAGES += \
 	vendor.samsung_slsi.hardware.tetheroffload@1.1-service
@@ -104,3 +100,13 @@
 # Device features
 PRODUCT_COPY_FILES += \
     frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
+
+# Location
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+else
+        PRODUCT_COPY_FILES += \
+		device/google/raviole/location/gps_user.xml:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
+endif
+
diff --git a/location/gps.xml b/location/gps.xml
new file mode 100644
index 0000000..8fb7c66
--- /dev/null
+++ b/location/gps.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="true"
+       Log="JAVA"
+       SecondaryConfigPath="/data/vendor/gps/overlay/gps_overlay.xml"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="true"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="true"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="13.0"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="3.5"
+       RfPathLossDb_Cp="3.5"
+       RfPathLossDb_Ap_L5="3.5"
+       RfPathLossDb_Cp_L5="3.5"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="2"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/location/gps.xml.oriole b/location/gps.xml.oriole
new file mode 100644
index 0000000..d85fd16
--- /dev/null
+++ b/location/gps.xml.oriole
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="true"
+       Log="JAVA"
+       SecondaryConfigPath="/data/vendor/gps/overlay/gps_overlay.xml"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="true"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="true"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="9.3"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="4.2"
+       RfPathLossDb_Cp="4.2"
+       RfPathLossDb_Ap_L5="4.1"
+       RfPathLossDb_Cp_L5="4.1"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="2"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/location/gps.xml.raven b/location/gps.xml.raven
new file mode 100644
index 0000000..a095dbd
--- /dev/null
+++ b/location/gps.xml.raven
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="true"
+       Log="JAVA"
+       SecondaryConfigPath="/data/vendor/gps/overlay/gps_overlay.xml"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="true"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="true"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="10.6"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="4.1"
+       RfPathLossDb_Cp="4.1"
+       RfPathLossDb_Ap_L5="4"
+       RfPathLossDb_Cp_L5="4"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="2"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/location/gps_user.xml b/location/gps_user.xml
new file mode 100644
index 0000000..5efd542
--- /dev/null
+++ b/location/gps_user.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="false"
+       Log="JAVA"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="false"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="false"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="13.0"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="3.5"
+       RfPathLossDb_Cp="3.5"
+       RfPathLossDb_Ap_L5="3.5"
+       RfPathLossDb_Cp_L5="3.5"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="false"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/location/gps_user.xml.oriole b/location/gps_user.xml.oriole
new file mode 100644
index 0000000..2d50372
--- /dev/null
+++ b/location/gps_user.xml.oriole
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="false"
+       Log="JAVA"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="false"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="false"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="9.3"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="4.2"
+       RfPathLossDb_Cp="4.2"
+       RfPathLossDb_Ap_L5="4.1"
+       RfPathLossDb_Cp_L5="4.1"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="false"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/location/gps_user.xml.raven b/location/gps_user.xml.raven
new file mode 100644
index 0000000..b2fb2bd
--- /dev/null
+++ b/location/gps_user.xml.raven
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<glgps xmlns="http://www.glpals.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.glpals.com/ glconfig.xsd" >
+  <hal
+       PortName="/dev/ttyBCM"
+       BaudRate="921600"
+       GpioNStdbyPath="/sys/devices/platform/10940000.spi/spi_master/spi5/spi5.0/nstandby"
+       CustGpioDelayMs="250"
+       LogEnabled="false"
+       Log="JAVA"
+       LogDirectory="/sdcard/gps/broadcom/storage/"
+       CtrlPipe="/data/vendor/gps/glgpsctrl"
+       NmeaOutName="/data/vendor/gps/nmea_out"
+
+       acSuplServer="supl.google.com"
+       SuplPort="7275"
+       SuplLogEnable="false"
+       SuplLogFullName="/data/vendor/gps/suplflow.txt"
+       tlsEnable="true"
+
+       SuplSslMethod="SSLv23_NO_TLSv1_2"
+       SuplEnable="true"
+       SuplUseApn="false"
+       SuplUseApnNI="true"
+       SuplDummyCellInfo="true"
+       SuplUseFwCellInfo="false"
+       SuplTlsCertDirPath="/etc/security/cacerts"
+       SuplTlsCertPath="/vendor/etc/gnss/gps.cer"
+       SuplUT1Seconds="20"
+       SuplUT2Seconds="20"
+       SuplUT3Seconds="20"
+       TcpConnectionTimeout="20"
+       SuplLppCapable="true"
+       SuplEcidCapable="true"
+       SuplVersion="2"
+       SuplMinorVersion="0"
+       SuplOtdoaCapable="true"
+       SuplGlonassCapable = "true"
+       SuplGalileoCapable = "true"
+       SuplBdsCapable = "true"
+       SuplMgpsCapable = "true"
+
+       RtoEnable="true"
+       RtiEnable="true"
+       HttpSyncLto="true"
+       LtoFileName="lto2.dat"
+       LtoDir="/data/vendor/gps/"
+       LtoSyncThresholdDays="1"
+
+       GnssYearOfHardware="2020"
+       CpGuardTimeSec="1"
+       CpLppGuardTimeSec="1"
+       IgnoreInjectedSystemTime="true"
+
+       AttributionAppPkgName="com.google.android.carrierlocation"
+
+       AssertEnabled="false"
+       CpLppeCancelDbhOnAgnssProvideLoc="true"
+       CpLppeUseAgnssLocForEmptyDbh="true"
+       ReAidingOnHotStart="false"
+       ReAidingIntervalSec="1200"
+       PpsDevice="/sys/class/pps/pps0/assert_elapsed"
+  />
+
+  <gll
+       PpsEnable="true"
+       LogPriMask="LOG_INFO"
+       LogFacMask="LOG_NMEA | LOG_GLLIOS | LOG_GLLAPI"
+       FrqPlan="FRQ_PLAN_26MHZ_2PPM_49_152MHZ_300PPB"
+       MultiCarrRFMode="GL_MULTI_CARR_RF_MODE_L1_L5"
+       MultiCarrLnaMask="L1_EXT_ON|L5_EXT_ON"
+       RfType="GL_RF_4776_BRCM"
+       ExtL5Bias="10.6"
+       EnableFilteringForLTEB13="true"
+
+       WarmStandbyTimeout1Seconds="10"
+       WarmStandbyTimeout2Seconds="15"
+
+       EnableGnssPropagateInStandby="true"
+
+       RfPathLossDb_Ap="4.1"
+       RfPathLossDb_Cp="4.1"
+       RfPathLossDb_Ap_L5="4"
+       RfPathLossDb_Cp_L5="4"
+       OnChipGpsCarrierType="3,2,3,3,2,3,2,3,3,3,1,2,1,3,2,1,2,3,1,1,1,1,3,3,3,3,3,1,2,3,2,3"
+
+       EnableOnChipStopNotification="false"
+       PowerMode="3"
+       MinGpsWeekNumber="2216"
+       OnChipAccMask="50"
+  />
+
+  <gll_features
+       EnableNicAutoSwitch="true"
+       EnableNavic="true"
+  />
+
+</glgps>
+
diff --git a/media_codecs_dolby_c2.xml b/media_codecs_dolby_c2.xml
deleted file mode 100644
index e7ecfd9..0000000
--- a/media_codecs_dolby_c2.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!-- Copyright 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.
--->
-<MediaCodecs>
-    <Include href="media_codecs_aosp_c2.xml" />
-    <Decoders>
-        <MediaCodec name="c2.google.av1.decoder" type="video/av01">
-          <Limit name="size" min="96x96" max="3840x2160" />
-          <Limit name="alignment" value="2x2" />
-          <Limit name="block-size" value="16x16" />
-          <Limit name="block-count" range="36-32400" />
-          <Limit name="blocks-per-second" min="24" max="1944000" />
-          <Limit name="bitrate" range="1-120000000" />
-          <Limit name="frame-rate" range="1-180" />
-          <Limit name="concurrent-instances" max="16" />
-          <Limit name="performance-point-1280x720" value="180" />
-          <Limit name="performance-point-1920x1080" value="120" />
-          <Limit name="performance-point-3840x2160" value="60" />
-          <Feature name="adaptive-playback" />
-          <Feature name="can-swap-width-height" value="1" />
-        </MediaCodec>
-        <MediaCodec name="c2.google.av1.decoder.secure" type="video/av01">
-          <Limit name="size" min="96x96" max="3840x2160" />
-          <Limit name="alignment" value="2x2" />
-          <Limit name="block-size" value="16x16" />
-          <Limit name="block-count" range="36-32400" />
-          <Limit name="blocks-per-second" min="24" max="1944000" />
-          <Limit name="bitrate" range="1-120000000" />
-          <Limit name="frame-rate" range="1-180" />
-          <Limit name="concurrent-instances" max="16" />
-          <Limit name="performance-point-1280x720" value="180" />
-          <Limit name="performance-point-1920x1080" value="120" />
-          <Limit name="performance-point-3840x2160" value="60" />
-          <Feature name="adaptive-playback" />
-          <Feature name="secure-playback" required="true" />
-          <Feature name="can-swap-width-height" value="1" />
-        </MediaCodec>
-        <MediaCodec name="c2.dolby.eac3.decoder">
-            <Type name="audio/ac3">
-                <Alias name="OMX.dolby.ac3.decoder"/>
-                <Limit name="channel-count" max="6"/>
-                <Limit name="sample-rate" ranges="32000,44100,48000"/>
-                <Limit name="bitrate" range="32000-640000"/>
-            </Type>
-            <Attribute name="software-codec"/>
-            <Type name="audio/eac3">
-                <Alias name="OMX.dolby.eac3.decoder"/>
-                <Limit name="channel-count" max="8"/>
-                <Limit name="sample-rate" ranges="32000,44100,48000"/>
-                <Limit name="bitrate" range="32000-6144000"/>
-            </Type>
-        </MediaCodec>
-    </Decoders>
-</MediaCodecs>
diff --git a/oriole/BoardConfig.mk b/oriole/BoardConfig.mk
index dc1db0c..7e95a57 100644
--- a/oriole/BoardConfig.mk
+++ b/oriole/BoardConfig.mk
@@ -13,8 +13,22 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-ifdef PHONE_CAR_BOARD_PRODUCT
-  include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
+
+# Enable load module in parallel
+BOARD_BOOTCONFIG += androidboot.load_modules_parallel=true
+
+# The modules which need to be loaded in sequential
+BOARD_KERNEL_CMDLINE += vh_sched.load_sequential=1
+BOARD_KERNEL_CMDLINE += exynos_mfc.load_sequential=1
+BOARD_KERNEL_CMDLINE += exynos_drm.load_sequential=1
+BOARD_KERNEL_CMDLINE += pcie-exynos-core.load_sequential=1
+BOARD_KERNEL_CMDLINE += g2d.load_sequential=1
+
+ifdef AUTOMOTIVE_PRODUCT_PATH
+  #RBC# include_top device/google/auto_tcu
+  #RBC# include_top device/google/pixel_tcu
+  #RBC# include_top device/google_car
+  include device/$(AUTOMOTIVE_PRODUCT_PATH)/BoardConfig.mk
 else
   TARGET_SCREEN_DENSITY := 420
 endif
diff --git a/oriole/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml b/oriole/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml
new file mode 100644
index 0000000..1499164
--- /dev/null
+++ b/oriole/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+**
+** Copyright 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.
+*/
+-->
+<irq-device-map>
+    <device name="rtc-alarm0">
+        <subsystem>Alarm</subsystem>
+    </device>
+</irq-device-map>
+
diff --git a/powerhint-oriole.json b/powerhint-oriole.json
index cbbbbae..d94475a 100644
--- a/powerhint-oriole.json
+++ b/powerhint-oriole.json
@@ -131,15 +131,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "MIFTargetLoad",
-      "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
-      "Values": [
-        "20 5 80",
-        "20 10 80"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "TAUClampBoost",
       "Path": "/proc/vendor_sched/ta_uclamp_min",
       "Values": [
@@ -849,12 +840,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "TAPreferHighCap",
       "Duration": 0,
       "Value": "1"
@@ -933,12 +918,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "TAPreferHighCap",
       "Duration": 0,
       "Value": "1"
@@ -1017,12 +996,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_STANDARD",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_STANDARD",
       "Node": "CDHighCpusetCpus",
       "Duration": 0,
       "Value": "6-7"
@@ -1095,12 +1068,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CDHighCpusetCpus",
       "Duration": 0,
       "Value": "6-7"
diff --git a/powerhint-raven.json b/powerhint-raven.json
index a232909..338b4ac 100644
--- a/powerhint-raven.json
+++ b/powerhint-raven.json
@@ -130,15 +130,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "MIFTargetLoad",
-      "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
-      "Values": [
-        "20 5 80",
-        "20 10 80"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "TAUClampBoost",
       "Path": "/proc/vendor_sched/ta_uclamp_min",
       "Values": [
@@ -848,12 +839,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "TAPreferHighCap",
       "Duration": 0,
       "Value": "1"
@@ -932,12 +917,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "TAPreferHighCap",
       "Duration": 0,
       "Value": "1"
@@ -1016,12 +995,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_STANDARD",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_STANDARD",
       "Node": "CDHighCpusetCpus",
       "Duration": 0,
       "Value": "6-7"
@@ -1094,12 +1067,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "MIFTargetLoad",
-      "Duration": 0,
-      "Value": "20 10 80"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CDHighCpusetCpus",
       "Duration": 0,
       "Value": "6-7"
diff --git a/raven/BoardConfig.mk b/raven/BoardConfig.mk
index b78d5b4..e9aaf8f 100644
--- a/raven/BoardConfig.mk
+++ b/raven/BoardConfig.mk
@@ -14,8 +14,21 @@
 # limitations under the License.
 #
 
-ifdef PHONE_CAR_BOARD_PRODUCT
-  include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
+# Enable load module in parallel
+BOARD_BOOTCONFIG += androidboot.load_modules_parallel=true
+
+# The modules which need to be loaded in sequential
+BOARD_KERNEL_CMDLINE += vh_sched.load_sequential=1
+BOARD_KERNEL_CMDLINE += exynos_mfc.load_sequential=1
+BOARD_KERNEL_CMDLINE += exynos_drm.load_sequential=1
+BOARD_KERNEL_CMDLINE += pcie-exynos-core.load_sequential=1
+BOARD_KERNEL_CMDLINE += g2d.load_sequential=1
+
+ifdef AUTOMOTIVE_PRODUCT_PATH
+  #RBC# include_top device/google/auto_tcu
+  #RBC# include_top device/google/pixel_tcu
+  #RBC# include_top device/google_car
+  include device/$(AUTOMOTIVE_PRODUCT_PATH)/BoardConfig.mk
 else
   TARGET_SCREEN_DENSITY := 560
 endif
diff --git a/raven/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml b/raven/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml
new file mode 100644
index 0000000..1499164
--- /dev/null
+++ b/raven/overlay/frameworks/base/core/res/res/xml/irq_device_map.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+**
+** Copyright 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.
+*/
+-->
+<irq-device-map>
+    <device name="rtc-alarm0">
+        <subsystem>Alarm</subsystem>
+    </device>
+</irq-device-map>
+