[automerger skipped] [automerge] powerhint: fork powerhint.json for slider/whitefin 2p: 0f91059905 am: 0b64b2131f -s ours

am skip reason: Merged-In I1517dc761837476485f7782610f0474f87e6b989 with SHA-1 63fe74554f is already in history

Original change: https://googleplex-android-review.googlesource.com/c/device/google/raviole/+/16810167

Change-Id: I7aa958e3a13d4f80d1d800a603b638c9b96fd5c8
diff --git a/audio/oriole/audio-tables.mk b/audio/oriole/audio-tables.mk
index 79fff6b..2516080 100644
--- a/audio/oriole/audio-tables.mk
+++ b/audio/oriole/audio-tables.mk
@@ -25,6 +25,11 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml
 
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+PRODUCT_COPY_FILES += \
+	frameworks/av/services/audiopolicy/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
+endif
+
 # AudioEffectHAL Configuration
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
@@ -46,6 +51,7 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
 
diff --git a/audio/oriole/config/audio_platform_configuration.xml b/audio/oriole/config/audio_platform_configuration.xml
index 6bc6159..f0bec9b 100644
--- a/audio/oriole/config/audio_platform_configuration.xml
+++ b/audio/oriole/config/audio_platform_configuration.xml
@@ -176,8 +176,8 @@
         <usecase id="UC_RAW_PLAYBACK" dev1="23" dyn_path="true" dsp_vol="false" mmap="true" period="64" period_num="32"/>
         <!-- for output with AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST, 4 * 10ms buffer -->
         <usecase id="UC_LOW_LATENCY_PLAYBACK" dev1="1" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
-        <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 80 periods * 48 frames/period(=1ms w/ 48k sample rate) * 4 bytes/frame = 15360 bytes -->
-        <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="80"/>
+        <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 40 periods * 48 frames/period(=1ms w/ 48k sample rate) * 2ch * 4(float) = 15360 bytes -->
+        <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="40"/>
         <!-- for output with AUDIO_OUTPUT_FLAG_DEEP_BUFFER, 4 * 20ms buffer -->
         <usecase id="UC_DEEP_BUFFER_PLAYBACK" dev1="5" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/>
         <!-- dev1: voice-call downlink dev2: voice-clal uplink -->
diff --git a/audio/oriole/config/audio_policy_configuration.xml b/audio/oriole/config/audio_policy_configuration.xml
index 90ee1c3..030c767 100644
--- a/audio/oriole/config/audio_policy_configuration.xml
+++ b/audio/oriole/config/audio_policy_configuration.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
index ea540e8..be5287b 100644
--- a/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
+++ b/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml b/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
index 0623ec4..0972b9f 100644
--- a/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
+++ b/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/oriole/tuning/fortemedia/mcps.dat b/audio/oriole/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/oriole/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/raven/audio-tables.mk b/audio/raven/audio-tables.mk
index 905464c..05deac9 100644
--- a/audio/raven/audio-tables.mk
+++ b/audio/raven/audio-tables.mk
@@ -25,6 +25,11 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml
 
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+PRODUCT_COPY_FILES += \
+	frameworks/av/services/audiopolicy/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
+endif
+
 # AudioEffectHAL Configuration
 PRODUCT_COPY_FILES += \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
@@ -46,6 +51,7 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
 
diff --git a/audio/raven/config/audio_platform_configuration.xml b/audio/raven/config/audio_platform_configuration.xml
index 6bc6159..f0bec9b 100644
--- a/audio/raven/config/audio_platform_configuration.xml
+++ b/audio/raven/config/audio_platform_configuration.xml
@@ -176,8 +176,8 @@
         <usecase id="UC_RAW_PLAYBACK" dev1="23" dyn_path="true" dsp_vol="false" mmap="true" period="64" period_num="32"/>
         <!-- for output with AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST, 4 * 10ms buffer -->
         <usecase id="UC_LOW_LATENCY_PLAYBACK" dev1="1" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
-        <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 80 periods * 48 frames/period(=1ms w/ 48k sample rate) * 4 bytes/frame = 15360 bytes -->
-        <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="80"/>
+        <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 40 periods * 48 frames/period(=1ms w/ 48k sample rate) * 2ch * 4(float) = 15360 bytes -->
+        <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="40"/>
         <!-- for output with AUDIO_OUTPUT_FLAG_DEEP_BUFFER, 4 * 20ms buffer -->
         <usecase id="UC_DEEP_BUFFER_PLAYBACK" dev1="5" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/>
         <!-- dev1: voice-call downlink dev2: voice-clal uplink -->
diff --git a/audio/raven/config/audio_policy_configuration.xml b/audio/raven/config/audio_policy_configuration.xml
index 90ee1c3..030c767 100644
--- a/audio/raven/config/audio_policy_configuration.xml
+++ b/audio/raven/config/audio_policy_configuration.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
index ea540e8..be5287b 100644
--- a/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
+++ b/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml b/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
index 0623ec4..0972b9f 100644
--- a/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
+++ b/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
@@ -28,7 +28,7 @@
             <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"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
-                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
                              samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                 </mixPort>
                 <mixPort name="incall playback" role="source"
diff --git a/audio/raven/tuning/fortemedia/mcps.dat b/audio/raven/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/raven/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/slider/audio-tables.mk b/audio/slider/audio-tables.mk
index 21200ce..c46f856 100644
--- a/audio/slider/audio-tables.mk
+++ b/audio/slider/audio-tables.mk
@@ -45,6 +45,7 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
 
diff --git a/audio/slider/tuning/fortemedia/mcps.dat b/audio/slider/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/slider/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/whitefin/audio-tables.mk b/audio/whitefin/audio-tables.mk
index f87c54b..37cd1b0 100644
--- a/audio/whitefin/audio-tables.mk
+++ b/audio/whitefin/audio-tables.mk
@@ -45,6 +45,7 @@
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+    device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
     device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
 
diff --git a/audio/whitefin/tuning/fortemedia/mcps.dat b/audio/whitefin/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/whitefin/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/conf/init.oriole.rc b/conf/init.oriole.rc
index 1724b5f..10206b3 100644
--- a/conf/init.oriole.rc
+++ b/conf/init.oriole.rc
@@ -15,9 +15,16 @@
 on property:persist.vendor.touch_sensitivity_mode=1 && property:sys.boot_completed=1
     write /sys/class/spi_master/spi11/spi11.0/glove_mode 01
 
+# Thermal
 on late-init && property:ro.boot.hardware.revision=PROTO1.0
     setprop vendor.thermal.config "thermal_info_config_WHI_A.json"
 
+on late-init && property:ro.boot.hardware.revision=PROTO1.1
+    setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=EVT1.0
+    setprop vendor.disable.usb.overheat.mitigation.control 1
+
 # For Japan sku, always enforce camera shutter sound
 # Since this property is read by the audio server in system service,
 # it should be written by the system init.
diff --git a/conf/init.raven.rc b/conf/init.raven.rc
index 4d5d2a9..5153c58 100644
--- a/conf/init.raven.rc
+++ b/conf/init.raven.rc
@@ -11,6 +11,10 @@
     # Power Stats HAL
     chown system system /sys/devices/platform/10d30000.spi/spi_master/spi10/spi10.0/uwb/power_stats
 
+on fs
+    # Face
+    exec_background - system shell -- /vendor/bin/trusty_apploader /vendor/firmware/faceauth.app
+
 on property:vendor.mfgapi.touchpanel.permission=1
     chmod 0600 /sys/devices/virtual/sec/tsp/cmd
     chown system system /sys/devices/virtual/sec/tsp/cmd
@@ -30,6 +34,16 @@
 on property:graphics.display.kernel_idle_timer.enabled=false
     write /sys/devices/platform/exynos-drm/primary-panel/panel_idle "0"
 
+# Thermal
+on late-init && property:ro.boot.hardware.revision=PROTO1.0
+    setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=PROTO1.1
+    setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=EVT1.0
+    setprop vendor.disable.usb.overheat.mitigation.control 1
+
 # Bluetooth
 on post-fs-data
     chown bluetooth system /proc/bluetooth/timesync
diff --git a/conf/init.raviole.rc b/conf/init.raviole.rc
index ed55764..22f0917 100644
--- a/conf/init.raviole.rc
+++ b/conf/init.raviole.rc
@@ -52,3 +52,13 @@
 
 on property:ro.revision=PROTO1.0
     setprop persist.fingerprint.ghbm true
+
+# SecureElement eSE2 cts mode
+on property:persist.vendor.se.ese2.mode=ctsmode
+    write /sys/class/st33spi/st33spi/st33spi_state 33
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+    setprop persist.vendor.charge.stop.level 35
+    setprop persist.vendor.charge.start.level 30
diff --git a/conf/init.slider.rc b/conf/init.slider.rc
index f8506a5..3042b5b 100644
--- a/conf/init.slider.rc
+++ b/conf/init.slider.rc
@@ -26,3 +26,9 @@
     group root system
     disabled
     oneshot
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+    setprop persist.vendor.charge.stop.level 35
+    setprop persist.vendor.charge.start.level 30
diff --git a/conf/init.whitefin.rc b/conf/init.whitefin.rc
index f74abbb..c030ad7 100644
--- a/conf/init.whitefin.rc
+++ b/conf/init.whitefin.rc
@@ -24,3 +24,9 @@
 on fs
     # Fingerprint
     chown system system /dev/goodix_fp
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+    setprop persist.vendor.charge.stop.level 35
+    setprop persist.vendor.charge.start.level 30
diff --git a/device-oriole.mk b/device-oriole.mk
index 7f9f1e1..0b82895 100644
--- a/device-oriole.mk
+++ b/device-oriole.mk
@@ -31,7 +31,9 @@
 include device/google/raviole/audio/oriole/audio-tables.mk
 include device/google/gs101/device-shipping-common.mk
 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
 
 ifeq ($(filter factory_oriole, $(TARGET_PRODUCT)),)
 include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -62,7 +64,7 @@
 
 # Power HAL config
 PRODUCT_COPY_FILES += \
-    device/google/raviole/powerhint-oriole.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
+	device/google/raviole/powerhint-oriole.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
 
 # Bluetooth
 PRODUCT_PRODUCT_PROPERTIES += \
@@ -118,12 +120,14 @@
 
 # SecureElement
 PRODUCT_PACKAGES += \
-	android.hardware.secure_element@1.2-service-gto
+	android.hardware.secure_element@1.2-service-gto \
+	android.hardware.secure_element@1.2-service-gto-ese2
 
 PRODUCT_COPY_FILES += \
 	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
 	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
-        device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
+	device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
+	device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
 
 DEVICE_MANIFEST_FILE += \
 	device/google/raviole/nfc/manifest_nfc.xml \
@@ -207,6 +211,10 @@
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
 
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+	bt_vendor.conf
+
 # Override default distortion output gain according to UX experiments
 PRODUCT_PRODUCT_PROPERTIES += \
     vendor.audio.hapticgenerator.distortion.output.gain=0.5
diff --git a/device-raven.mk b/device-raven.mk
index 357d21d..6df02de 100644
--- a/device-raven.mk
+++ b/device-raven.mk
@@ -31,6 +31,8 @@
 include device/google/raviole/audio/raven/audio-tables.mk
 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
 
 ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),)
 include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -70,7 +72,7 @@
 
 # Power HAL config
 PRODUCT_COPY_FILES += \
-    device/google/raviole/powerhint-raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
+	device/google/raviole/powerhint-raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
 
 # Bluetooth
 PRODUCT_PRODUCT_PROPERTIES += \
@@ -105,7 +107,7 @@
 	device/google/raviole/raven/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb
 
 #config of display brightness dimming
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.brightness.dimming.usage=1
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.brightness.dimming.usage=2
 
 # NFC
 PRODUCT_COPY_FILES += \
@@ -133,17 +135,20 @@
 
 # SecureElement
 PRODUCT_PACKAGES += \
-	android.hardware.secure_element@1.2-service-gto
+	android.hardware.secure_element@1.2-service-gto \
+	android.hardware.secure_element@1.2-service-gto-ese2
 
 PRODUCT_COPY_FILES += \
 	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
 	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
-        device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
+	device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
+	device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
 
 DEVICE_MANIFEST_FILE += \
 	device/google/raviole/nfc/manifest_nfc.xml \
 	device/google/raviole/nfc/manifest_se.xml
 
+
 # Vibrator HAL
 PRODUCT_PRODUCT_PROPERTIES +=\
     ro.vendor.vibrator.hal.long.frequency.shift=15
@@ -223,6 +228,10 @@
 PRODUCT_VENDOR_PROPERTIES += \
     persist.vendor.camera.exif_reveal_make_model=true
 
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+	bt_vendor.conf
+
 # Override default distortion output gain according to UX experiments
 PRODUCT_PRODUCT_PROPERTIES += \
     vendor.audio.hapticgenerator.distortion.output.gain=0.5
diff --git a/device-slider.mk b/device-slider.mk
index 08396e1..26f8798 100644
--- a/device-slider.mk
+++ b/device-slider.mk
@@ -27,6 +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
 
 $(call soong_config_set,lyric,tuning_product,slider)
 $(call soong_config_set,google3a_config,target_device,slider)
@@ -105,6 +106,10 @@
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
 
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+	bt_vendor.conf
+
 # Power HAL config
 PRODUCT_COPY_FILES += \
 	device/google/raviole/powerhint-slider.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
diff --git a/device-whitefin.mk b/device-whitefin.mk
index 5f80809..69f129d 100644
--- a/device-whitefin.mk
+++ b/device-whitefin.mk
@@ -27,6 +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
 
 $(call soong_config_set,lyric,tuning_product,slider)
 $(call soong_config_set,google3a_config,target_device,slider)
@@ -86,6 +87,10 @@
 # Trusty liboemcrypto.so
 PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
 
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+	bt_vendor.conf
+
 # Power HAL config
 PRODUCT_COPY_FILES += \
 	device/google/raviole/powerhint-whitefin.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
diff --git a/nfc/manifest_se.xml b/nfc/manifest_se.xml
index 9e5cee9..60dc4c2 100644
--- a/nfc/manifest_se.xml
+++ b/nfc/manifest_se.xml
@@ -3,5 +3,6 @@
     <name>android.hardware.secure_element</name>
     <transport>hwbinder</transport>
     <fqname>@1.2::ISecureElement/eSE1</fqname>
+    <fqname>@1.2::ISecureElement/eSE2</fqname>
   </hal>
 </manifest>
diff --git a/oriole/BoardConfig.mk b/oriole/BoardConfig.mk
index e1ef669..1292d4a 100644
--- a/oriole/BoardConfig.mk
+++ b/oriole/BoardConfig.mk
@@ -13,8 +13,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-ifdef PHONE_CAR_BOARD_CONFIG
-  include $(PHONE_CAR_BOARD_CONFIG)
+ifdef PHONE_CAR_BOARD_PRODUCT
+  include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
 else
   TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
   TARGET_BOOTLOADER_BOARD_NAME := oriole
@@ -22,6 +22,7 @@
   USES_DEVICE_GOOGLE_RAVIOLE := true
 
   include device/google/gs101/BoardConfig-common.mk
+  include device/google/gs101/wifi/BoardConfig-wifi.mk
   -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
   -include vendor/google_devices/oriole/proprietary/BoardConfigVendor.mk
 endif
diff --git a/oriole/overlay/frameworks/base/core/res/res/values/config.xml b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
index cf57ec0..cafb93d 100644
--- a/oriole/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
@@ -229,83 +229,83 @@
 
     <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
          This value is a float array with values grouped as
-         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
          This is only applied on devices with vibration frequency control. If the device doesn't
          support frequency control, then the vibration specified in
          config_defaultNotificationVibePattern is used instead.
      -->
     <array name="config_defaultNotificationVibeWaveform">
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>0.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
     </array>
 
     <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
          because the device is in vibrate mode. This value is a float array with values grouped as
-         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
          This is only applied on devices with vibration frequency control. If the device doesn't
          support frequency control, then the vibration specified in
          config_notificationFallbackVibePattern is used instead.
      -->
     <array name="config_notificationFallbackVibeWaveform">
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>0.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>50.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>50.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>50.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>50.0</item>
     </array>
 
diff --git a/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml b/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..447e59c
--- /dev/null
+++ b/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2022, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+-->
+<resources>
+   <!-- for 20dp of padding at 3.5px/dp at default density -->
+    <dimen name="rounded_corner_content_padding">50px</dimen>
+</resources>
+
diff --git a/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
index 0e8589e..c4e23c2 100644
--- a/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -26,113 +26,125 @@
       <value>2</value> <!-- Cluster 2 has 2 cores (cpu6, cpu7) -->
     </array>
 
-    <item name="cpu.suspend">4.35</item>
-    <item name="cpu.idle">5.78</item>
-    <item name="cpu.active">2.35</item>
-    <item name="cpu.cluster_power.cluster0">32.58</item>
-    <item name="cpu.cluster_power.cluster1">6.44</item>
-    <item name="cpu.cluster_power.cluster2">0</item>
+    <item name="cpu.suspend">10</item>
+    <item name="cpu.idle">28.6</item>
+    <item name="cpu.active">12.37</item>
+    <item name="cpu.cluster_power.cluster0">0.24</item>
+    <item name="cpu.cluster_power.cluster1">3.23</item>
+    <item name="cpu.cluster_power.cluster2">5.94</item>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy0/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster0">
-      <value>300000</value>
-      <value>574000</value>
-      <value>738000</value>
-      <value>930000</value>
-      <value>1098000</value>
-      <value>1197000</value>
-      <value>1328000</value>
-      <value>1401000</value>
-      <value>1598000</value>
-      <value>1704000</value>
-      <value>1803000</value>
-      <value>1950000</value>
-      <value>2024000</value>
+      <value>300000</value> <!-- 300 MHz CPU speed -->
+      <value>574000</value> <!-- 574 MHz CPU speed -->
+      <value>738000</value> <!-- 738 MHz CPU speed -->
+      <value>930000</value> <!-- 930 MHz CPU speed -->
+      <value>1098000</value> <!-- 1098 MHz CPU speed -->
+      <value>1197000</value> <!-- 1197 MHz CPU speed -->
+      <value>1328000</value> <!-- 1328 MHz CPU speed -->
+      <value>1401000</value> <!-- 1401 MHz CPU speed -->
+      <value>1598000</value> <!-- 1598 MHz CPU speed -->
+      <value>1704000</value> <!-- 1704 MHz CPU speed -->
+      <value>1803000</value> <!-- 1803 MHz CPU speed -->
     </array>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy4/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster1">
-      <value>400000</value>
-      <value>553000</value>
-      <value>696000</value>
-      <value>799000</value>
-      <value>910000</value>
-      <value>1024000</value>
-      <value>1197000</value>
-      <value>1328000</value>
-      <value>1491000</value>
-      <value>1663000</value>
-      <value>1836000</value>
-      <value>1999000</value>
-      <value>2130000</value>
-      <value>2253000</value>
+      <value>400000</value> <!-- 400 MHz CPU speed -->
+      <value>553000</value> <!-- 553 MHz CPU speed -->
+      <value>696000</value> <!-- 696 MHz CPU speed -->
+      <value>799000</value> <!-- 799 MHz CPU speed -->
+      <value>910000</value> <!-- 910 MHz CPU speed -->
+      <value>1024000</value> <!-- 1024 MHz CPU speed -->
+      <value>1197000</value> <!-- 1197 MHz CPU speed -->
+      <value>1328000</value> <!-- 1328 MHz CPU speed -->
+      <value>1491000</value> <!-- 1491 MHz CPU speed -->
+      <value>1663000</value> <!-- 1663 MHz CPU speed -->
+      <value>1836000</value> <!-- 1836 MHz CPU speed -->
+      <value>1999000</value> <!-- 1999 MHz CPU speed -->
+      <value>2130000</value> <!-- 2130 MHz CPU speed -->
+      <value>2253000</value> <!-- 2253 MHz CPU speed -->
     </array>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy6/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster2">
-      <value>500000</value>
-      <value>851000</value>
-      <value>984000</value>
-      <value>1106000</value>
-      <value>1277000</value>
-      <value>1426000</value>
-      <value>1582000</value>
-      <value>1745000</value>
-      <value>1826000</value>
-      <value>2048000</value>
-      <value>2188000</value>
-      <value>2252000</value>
-      <value>2401000</value>
-      <value>2507000</value>
-      <value>2630000</value>
+      <value>500000</value> <!-- 500 MHz CPU speed -->
+      <value>851000</value> <!-- 851 MHz CPU speed -->
+      <value>984000</value> <!-- 984 MHz CPU speed -->
+      <value>1106000</value> <!-- 1106 MHz CPU speed -->
+      <value>1277000</value> <!-- 1277 MHz CPU speed -->
+      <value>1426000</value> <!-- 1426 MHz CPU speed -->
+      <value>1582000</value> <!-- 1582 MHz CPU speed -->
+      <value>1745000</value> <!-- 1745 MHz CPU speed -->
+      <value>1826000</value> <!-- 1826 MHz CPU speed -->
+      <value>2048000</value> <!-- 2048 MHz CPU speed -->
+      <value>2188000</value> <!-- 2188 MHz CPU speed -->
+      <value>2252000</value> <!-- 2252 MHz CPU speed -->
+      <value>2401000</value> <!-- 2401 MHz CPU speed -->
+      <value>2507000</value> <!-- 2507 MHz CPU speed -->
+      <value>2630000</value> <!-- 2630 MHz CPU speed -->
+      <value>2704000</value> <!-- 2704 MHz CPU speed -->
+      <value>2802000</value> <!-- 2802 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 0 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster0">
-      <value>13.58</value>
-      <value>38.22</value>
-      <value>48.59</value>
-      <value>64.02</value>
-      <value>79.69</value>
-      <value>89.66</value>
-      <value>105.64</value>
-      <value>113.30</value>
-      <value>142.24</value>
-      <value>158.91</value>
-      <value>180.73</value>
-      <value>229.19</value>
-      <value>266.66</value>
+      <value>1.89</value> <!-- 300 MHz CPU speed -->
+      <value>6.15</value> <!-- 574 MHz CPU speed -->
+      <value>9.34</value> <!-- 738 MHz CPU speed -->
+      <value>14.22</value> <!-- 930 MHz CPU speed -->
+      <value>18.94</value> <!-- 1098 MHz CPU speed -->
+      <value>21.98</value> <!-- 1197 MHz CPU speed -->
+      <value>26.83</value> <!-- 1328 MHz CPU speed -->
+      <value>30.17</value> <!-- 1401 MHz CPU speed -->
+      <value>41.55</value> <!-- 1598 MHz CPU speed -->
+      <value>48.36</value> <!-- 1704 MHz CPU speed -->
+      <value>58.45</value> <!-- 1803 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 1 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster1">
-      <value>59.00</value>
-      <value>87.69</value>
-      <value>114.54</value>
-      <value>134.19</value>
-      <value>157.72</value>
-      <value>184.69</value>
-      <value>229.99</value>
-      <value>264.08</value>
-      <value>316.56</value>
-      <value>375.74</value>
-      <value>450.94</value>
-      <value>529.79</value>
-      <value>603.34</value>
-      <value>684.48</value>
+      <value>3.71</value> <!-- 400 MHz CPU speed -->
+      <value>6.16</value> <!-- 553 MHz CPU speed -->
+      <value>8</value> <!-- 696 MHz CPU speed -->
+      <value>10.94</value> <!-- 799 MHz CPU speed -->
+      <value>12.73</value> <!-- 910 MHz CPU speed -->
+      <value>14.4</value> <!-- 1024 MHz CPU speed -->
+      <value>21.39</value> <!-- 1197 MHz CPU speed -->
+      <value>24.1</value> <!-- 1328 MHz CPU speed -->
+      <value>30.42</value> <!-- 1491 MHz CPU speed -->
+      <value>42.49</value> <!-- 1663 MHz CPU speed -->
+      <value>49.37</value> <!-- 1836 MHz CPU speed -->
+      <value>58.09</value> <!-- 1999 MHz CPU speed -->
+      <value>67.54</value> <!-- 2130 MHz CPU speed -->
+      <value>79.04</value> <!-- 2253 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 2 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster2">
-      <value>199.11</value>
-      <value>332.32</value>
-      <value>389.40</value>
-      <value>452.85</value>
-      <value>547.22</value>
-      <value>629.93</value>
-      <value>735.84</value>
-      <value>861.23</value>
-      <value>946.15</value>
-      <value>1137.98</value>
-      <value>1318.48</value>
-      <value>1396.56</value>
-      <value>1583.05</value>
-      <value>1811.61</value>
-      <value>2050.00</value>
+      <value>8.36</value> <!-- 500 MHz CPU speed -->
+      <value>16.33</value> <!-- 851 MHz CPU speed -->
+      <value>19.44</value> <!-- 984 MHz CPU speed -->
+      <value>36.71</value> <!-- 1106 MHz CPU speed -->
+      <value>41.42</value> <!-- 1277 MHz CPU speed -->
+      <value>48.24</value> <!-- 1426 MHz CPU speed -->
+      <value>54.77</value> <!-- 1582 MHz CPU speed -->
+      <value>65.32</value> <!-- 1745 MHz CPU speed -->
+      <value>69.58</value> <!-- 1826 MHz CPU speed -->
+      <value>128.49</value> <!-- 2048 MHz CPU speed -->
+      <value>142.15</value> <!-- 2188 MHz CPU speed -->
+      <value>149.74</value> <!-- 2252 MHz CPU speed -->
+      <value>164.78</value> <!-- 2401 MHz CPU speed -->
+      <value>188.68</value> <!-- 2507 MHz CPU speed -->
+      <value>193.15</value> <!-- 2630 MHz CPU speed -->
+      <value>227.98</value> <!-- 2704 MHz CPU speed -->
+      <value>254.25</value> <!-- 2802 MHz CPU speed -->
     </array>
 
     <!-- Additional power used when screen is ambient mode -->
diff --git a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index b364c4a..61f284d 100644
--- a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -19,9 +19,6 @@
     <!-- Don't need the left side padding due to being inset from the cutout -->
     <dimen name="status_bar_padding_start">0dp</dimen>
 
-   <!-- for 20dp of padding at 3.5px/dp at default density -->
-    <dimen name="rounded_corner_content_padding">50px</dimen>
-
     <!-- the padding on the top of the statusbar (usually 0) -->
     <dimen name="status_bar_padding_top">1px</dimen>
 
diff --git a/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml b/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
new file mode 100644
index 0000000..46c95af
--- /dev/null
+++ b/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2021 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>
+  <bool name="enable_ons_auto_provisioning">true</bool>
+</resources>
diff --git a/powerhint-oriole.json b/powerhint-oriole.json
index f93bcd9..54e8090 100644
--- a/powerhint-oriole.json
+++ b/powerhint-oriole.json
@@ -26,7 +26,11 @@
         "9999999",
         "1098000",
         "1401000",
-        "1197000"
+        "930000",
+        "1197000",
+        "1328000",
+        "1598000",
+        "1803000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -48,8 +52,12 @@
         "9999999",
         "1024000",
         "1197000",
-        "1999000",
-        "1491000"
+        "1491000",
+        "910000",
+        "1328000",
+        "1663000",
+        "1836000",
+        "1999000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -71,7 +79,12 @@
         "9999999",
         "984000",
         "1426000",
-        "1826000"
+        "1826000",
+        "1277000",
+        "1582000",
+        "1745000",
+        "2048000",
+        "2401000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -240,15 +253,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "HighCapacityStartCpu",
-      "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
-      "Values": [
-        "4",
-        "6"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "LimitFlashCurrent",
       "Path": "vendor.camera.max_flash_current",
       "Values": [
@@ -702,12 +706,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "GPUMinFreq",
       "Duration": 0,
       "Value": "302000"
@@ -780,12 +778,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "CPULittleClusterMaxFreq",
       "Duration": 0,
       "Value": "1401000"
@@ -924,12 +916,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CPUBigClusterMaxFreq",
       "Duration": 0,
       "Value": "1826000"
@@ -1019,6 +1005,96 @@
       "Value": "9999999"
     },
     {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "930000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1197000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1598000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1803000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "910000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1663000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1836000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1999000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_50",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1277000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_60",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1582000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_70",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1745000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_80",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2048000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_90",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2401000"
+    },
+    {
       "PowerHint": "REFRESH_90FPS",
       "Node": "TAUClampBoost",
       "Duration": 0,
diff --git a/powerhint-raven.json b/powerhint-raven.json
index 8c1586c..1ed4bb5 100644
--- a/powerhint-raven.json
+++ b/powerhint-raven.json
@@ -26,7 +26,11 @@
         "9999999",
         "1098000",
         "1401000",
-        "1197000"
+        "930000",
+        "1197000",
+        "1328000",
+        "1598000",
+        "1803000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -48,8 +52,12 @@
         "9999999",
         "1024000",
         "1197000",
-        "1999000",
-        "1491000"
+        "1491000",
+        "910000",
+        "1328000",
+        "1663000",
+        "1836000",
+        "1999000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -71,7 +79,12 @@
         "9999999",
         "984000",
         "1426000",
-        "1826000"
+        "1826000",
+        "1277000",
+        "1582000",
+        "1745000",
+        "2048000",
+        "2401000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -241,15 +254,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "HighCapacityStartCpu",
-      "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
-      "Values": [
-        "4",
-        "6"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "LimitFlashCurrent",
       "Path": "vendor.camera.max_flash_current",
       "Values": [
@@ -714,12 +718,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "GPUMinFreq",
       "Duration": 0,
       "Value": "302000"
@@ -792,12 +790,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "CPULittleClusterMaxFreq",
       "Duration": 0,
       "Value": "1401000"
@@ -936,12 +928,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CPUBigClusterMaxFreq",
       "Duration": 0,
       "Value": "1826000"
@@ -1031,6 +1017,96 @@
       "Value": "9999999"
     },
     {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "930000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1197000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1598000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1803000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "910000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1663000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1836000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1999000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_50",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1277000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_60",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1582000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_70",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1745000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_80",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2048000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_90",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2401000"
+    },
+    {
       "PowerHint": "REFRESH_120FPS",
       "Node": "TAUClampBoost",
       "Duration": 0,
diff --git a/powerhint-slider.json b/powerhint-slider.json
index bcac508..56e8c2a 100644
--- a/powerhint-slider.json
+++ b/powerhint-slider.json
@@ -26,7 +26,11 @@
         "9999999",
         "1098000",
         "1401000",
-        "1197000"
+        "930000",
+        "1197000",
+        "1328000",
+        "1598000",
+        "1803000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -48,8 +52,12 @@
         "9999999",
         "1024000",
         "1197000",
-        "1999000",
-        "1491000"
+        "1491000",
+        "910000",
+        "1328000",
+        "1663000",
+        "1836000",
+        "1999000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -71,7 +79,12 @@
         "9999999",
         "984000",
         "1426000",
-        "1826000"
+        "1826000",
+        "1277000",
+        "1582000",
+        "1745000",
+        "2048000",
+        "2401000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -242,15 +255,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "HighCapacityStartCpu",
-      "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
-      "Values": [
-        "4",
-        "6"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "LimitFlashCurrent",
       "Path": "vendor.camera.max_flash_current",
       "Values": [
@@ -715,12 +719,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "GPUMinFreq",
       "Duration": 0,
       "Value": "302000"
@@ -793,12 +791,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "CPULittleClusterMaxFreq",
       "Duration": 0,
       "Value": "1401000"
@@ -937,12 +929,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CPUBigClusterMaxFreq",
       "Duration": 0,
       "Value": "1826000"
@@ -1032,6 +1018,96 @@
       "Value": "9999999"
     },
     {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "930000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1197000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1598000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1803000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "910000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1663000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1836000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1999000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_50",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1277000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_60",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1582000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_70",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1745000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_80",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2048000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_90",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2401000"
+    },
+    {
       "PowerHint": "REFRESH_120FPS",
       "Node": "TAUClampBoost",
       "Duration": 0,
diff --git a/powerhint-whitefin.json b/powerhint-whitefin.json
index bcac508..56e8c2a 100644
--- a/powerhint-whitefin.json
+++ b/powerhint-whitefin.json
@@ -26,7 +26,11 @@
         "9999999",
         "1098000",
         "1401000",
-        "1197000"
+        "930000",
+        "1197000",
+        "1328000",
+        "1598000",
+        "1803000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -48,8 +52,12 @@
         "9999999",
         "1024000",
         "1197000",
-        "1999000",
-        "1491000"
+        "1491000",
+        "910000",
+        "1328000",
+        "1663000",
+        "1836000",
+        "1999000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -71,7 +79,12 @@
         "9999999",
         "984000",
         "1426000",
-        "1826000"
+        "1826000",
+        "1277000",
+        "1582000",
+        "1745000",
+        "2048000",
+        "2401000"
       ],
       "DefaultIndex": 0,
       "ResetOnInit": true
@@ -242,15 +255,6 @@
       "ResetOnInit": true
     },
     {
-      "Name": "HighCapacityStartCpu",
-      "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
-      "Values": [
-        "4",
-        "6"
-      ],
-      "ResetOnInit": true
-    },
-    {
       "Name": "LimitFlashCurrent",
       "Path": "vendor.camera.max_flash_current",
       "Values": [
@@ -715,12 +719,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_EXTREME",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_EXTREME",
       "Node": "GPUMinFreq",
       "Duration": 0,
       "Value": "302000"
@@ -793,12 +791,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_HIGH",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_HIGH",
       "Node": "CPULittleClusterMaxFreq",
       "Duration": 0,
       "Value": "1401000"
@@ -937,12 +929,6 @@
     },
     {
       "PowerHint": "CAMERA_STREAMING_LOW",
-      "Node": "HighCapacityStartCpu",
-      "Duration": 0,
-      "Value": "4"
-    },
-    {
-      "PowerHint": "CAMERA_STREAMING_LOW",
       "Node": "CPUBigClusterMaxFreq",
       "Duration": 0,
       "Value": "1826000"
@@ -1032,6 +1018,96 @@
       "Value": "9999999"
     },
     {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "930000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1197000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1598000"
+    },
+    {
+      "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+      "Node": "CPULittleClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1803000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "910000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1328000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1663000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1836000"
+    },
+    {
+      "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+      "Node": "CPUMidClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1999000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_50",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1277000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_60",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1582000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_70",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "1745000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_80",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2048000"
+    },
+    {
+      "PowerHint": "LOW_POWER_CPU_90",
+      "Node": "CPUBigClusterMaxFreq",
+      "Duration": 3600000,
+      "Value": "2401000"
+    },
+    {
       "PowerHint": "REFRESH_120FPS",
       "Node": "TAUClampBoost",
       "Duration": 0,
diff --git a/powerstats/oriole/Android.bp b/powerstats/oriole/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/oriole/Android.bp
+++ b/powerstats/oriole/Android.bp
@@ -15,7 +15,7 @@
 soong_namespace {
     imports: [
         "hardware/google/pixel",
-        "device/google/gs101",
+        "device/google/gs101/powerstats",
     ]
 }
 
diff --git a/powerstats/raven/Android.bp b/powerstats/raven/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/raven/Android.bp
+++ b/powerstats/raven/Android.bp
@@ -15,7 +15,7 @@
 soong_namespace {
     imports: [
         "hardware/google/pixel",
-        "device/google/gs101",
+        "device/google/gs101/powerstats",
     ]
 }
 
diff --git a/powerstats/slider/Android.bp b/powerstats/slider/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/slider/Android.bp
+++ b/powerstats/slider/Android.bp
@@ -15,7 +15,7 @@
 soong_namespace {
     imports: [
         "hardware/google/pixel",
-        "device/google/gs101",
+        "device/google/gs101/powerstats",
     ]
 }
 
diff --git a/powerstats/whitefin/Android.bp b/powerstats/whitefin/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/whitefin/Android.bp
+++ b/powerstats/whitefin/Android.bp
@@ -15,7 +15,7 @@
 soong_namespace {
     imports: [
         "hardware/google/pixel",
-        "device/google/gs101",
+        "device/google/gs101/powerstats",
     ]
 }
 
diff --git a/raven/BoardConfig.mk b/raven/BoardConfig.mk
index c3f2cc7..2b67f76 100644
--- a/raven/BoardConfig.mk
+++ b/raven/BoardConfig.mk
@@ -14,8 +14,8 @@
 # limitations under the License.
 #
 
-ifdef PHONE_CAR_BOARD_CONFIG
-  include $(PHONE_CAR_BOARD_CONFIG)
+ifdef PHONE_CAR_BOARD_PRODUCT
+  include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
 else
   TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
   TARGET_BOOTLOADER_BOARD_NAME := raven
@@ -23,6 +23,7 @@
   USES_DEVICE_GOOGLE_RAVIOLE := true
 
   include device/google/gs101/BoardConfig-common.mk
+  include device/google/gs101/wifi/BoardConfig-wifi.mk
   -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
   -include vendor/google_devices/raven/proprietary/BoardConfigVendor.mk
 endif
diff --git a/raven/overlay/frameworks/base/core/res/res/values/config.xml b/raven/overlay/frameworks/base/core/res/res/values/config.xml
index 491a4cc..9c9e945 100644
--- a/raven/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/raven/overlay/frameworks/base/core/res/res/values/config.xml
@@ -197,83 +197,83 @@
 
     <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
          This value is a float array with values grouped as
-         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
          This is only applied on devices with vibration frequency control. If the device doesn't
          support frequency control, then the vibration specified in
          config_defaultNotificationVibePattern is used instead.
      -->
     <array name="config_defaultNotificationVibeWaveform">
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>0.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
     </array>
 
     <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
          because the device is in vibrate mode. This value is a float array with values grouped as
-         { targetAmplitude (within [0,1]), targetFrequency [-1,1], duration (in milliseconds) }
+         { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
          This is only applied on devices with vibration frequency control. If the device doesn't
          support frequency control, then the vibration specified in
          config_notificationFallbackVibePattern is used instead.
      -->
     <array name="config_notificationFallbackVibeWaveform">
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>0.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>50.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>50.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>100.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>50.0</item>
 
         <item>0.4</item>
-        <item>-0.25</item>
+        <item>120.0</item>
         <item>100.0</item>
 
         <item>0.0</item>
-        <item>-0.85</item>
+        <item>60.0</item>
         <item>50.0</item>
     </array>
 
@@ -282,6 +282,9 @@
          -->
     <dimen name="status_bar_height">28dp</dimen>
 
+    <!-- If face auth sends the user directly to home/last open app, or stays on keyguard by default-->
+    <bool name="config_faceAuthDismissesKeyguard">false</bool>
+
     <!-- the number of the max cached processes in the system. -->
     <integer name="config_customizedMaxCachedProcesses">64</integer>
 </resources>
diff --git a/raven/overlay/frameworks/base/core/res/res/values/dimens.xml b/raven/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..1188e6c
--- /dev/null
+++ b/raven/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2022, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+*/
+-->
+<resources>
+    <!-- for 20dp of padding at 3.5px/dp at default density -->
+    <dimen name="rounded_corner_content_padding">50px</dimen>
+</resources>
+
diff --git a/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
index 5273eb6..1937c0d 100644
--- a/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -26,113 +26,125 @@
       <value>2</value> <!-- Cluster 2 has 2 cores (cpu6, cpu7) -->
     </array>
 
-    <item name="cpu.suspend">4.35</item>
-    <item name="cpu.idle">5.78</item>
-    <item name="cpu.active">2.35</item>
-    <item name="cpu.cluster_power.cluster0">32.58</item>
-    <item name="cpu.cluster_power.cluster1">6.44</item>
-    <item name="cpu.cluster_power.cluster2">0</item>
+    <item name="cpu.suspend">10</item>
+    <item name="cpu.idle">28.6</item>
+    <item name="cpu.active">12.37</item>
+    <item name="cpu.cluster_power.cluster0">0.24</item>
+    <item name="cpu.cluster_power.cluster1">3.23</item>
+    <item name="cpu.cluster_power.cluster2">5.94</item>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy0/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster0">
-      <value>300000</value>
-      <value>574000</value>
-      <value>738000</value>
-      <value>930000</value>
-      <value>1098000</value>
-      <value>1197000</value>
-      <value>1328000</value>
-      <value>1401000</value>
-      <value>1598000</value>
-      <value>1704000</value>
-      <value>1803000</value>
-      <value>1950000</value>
-      <value>2024000</value>
+      <value>300000</value> <!-- 300 MHz CPU speed -->
+      <value>574000</value> <!-- 574 MHz CPU speed -->
+      <value>738000</value> <!-- 738 MHz CPU speed -->
+      <value>930000</value> <!-- 930 MHz CPU speed -->
+      <value>1098000</value> <!-- 1098 MHz CPU speed -->
+      <value>1197000</value> <!-- 1197 MHz CPU speed -->
+      <value>1328000</value> <!-- 1328 MHz CPU speed -->
+      <value>1401000</value> <!-- 1401 MHz CPU speed -->
+      <value>1598000</value> <!-- 1598 MHz CPU speed -->
+      <value>1704000</value> <!-- 1704 MHz CPU speed -->
+      <value>1803000</value> <!-- 1803 MHz CPU speed -->
     </array>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy4/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster1">
-      <value>400000</value>
-      <value>553000</value>
-      <value>696000</value>
-      <value>799000</value>
-      <value>910000</value>
-      <value>1024000</value>
-      <value>1197000</value>
-      <value>1328000</value>
-      <value>1491000</value>
-      <value>1663000</value>
-      <value>1836000</value>
-      <value>1999000</value>
-      <value>2130000</value>
-      <value>2253000</value>
+      <value>400000</value> <!-- 400 MHz CPU speed -->
+      <value>553000</value> <!-- 553 MHz CPU speed -->
+      <value>696000</value> <!-- 696 MHz CPU speed -->
+      <value>799000</value> <!-- 799 MHz CPU speed -->
+      <value>910000</value> <!-- 910 MHz CPU speed -->
+      <value>1024000</value> <!-- 1024 MHz CPU speed -->
+      <value>1197000</value> <!-- 1197 MHz CPU speed -->
+      <value>1328000</value> <!-- 1328 MHz CPU speed -->
+      <value>1491000</value> <!-- 1491 MHz CPU speed -->
+      <value>1663000</value> <!-- 1663 MHz CPU speed -->
+      <value>1836000</value> <!-- 1836 MHz CPU speed -->
+      <value>1999000</value> <!-- 1999 MHz CPU speed -->
+      <value>2130000</value> <!-- 2130 MHz CPU speed -->
+      <value>2253000</value> <!-- 2253 MHz CPU speed -->
     </array>
 
+    <!-- Different CPU speeds as reported in
+         /sys/devices/system/cpu/cpufreq/ploicy6/scaling_available_frequencies -->
     <array name="cpu.core_speeds.cluster2">
-      <value>500000</value>
-      <value>851000</value>
-      <value>984000</value>
-      <value>1106000</value>
-      <value>1277000</value>
-      <value>1426000</value>
-      <value>1582000</value>
-      <value>1745000</value>
-      <value>1826000</value>
-      <value>2048000</value>
-      <value>2188000</value>
-      <value>2252000</value>
-      <value>2401000</value>
-      <value>2507000</value>
-      <value>2630000</value>
+      <value>500000</value> <!-- 500 MHz CPU speed -->
+      <value>851000</value> <!-- 851 MHz CPU speed -->
+      <value>984000</value> <!-- 984 MHz CPU speed -->
+      <value>1106000</value> <!-- 1106 MHz CPU speed -->
+      <value>1277000</value> <!-- 1277 MHz CPU speed -->
+      <value>1426000</value> <!-- 1426 MHz CPU speed -->
+      <value>1582000</value> <!-- 1582 MHz CPU speed -->
+      <value>1745000</value> <!-- 1745 MHz CPU speed -->
+      <value>1826000</value> <!-- 1826 MHz CPU speed -->
+      <value>2048000</value> <!-- 2048 MHz CPU speed -->
+      <value>2188000</value> <!-- 2188 MHz CPU speed -->
+      <value>2252000</value> <!-- 2252 MHz CPU speed -->
+      <value>2401000</value> <!-- 2401 MHz CPU speed -->
+      <value>2507000</value> <!-- 2507 MHz CPU speed -->
+      <value>2630000</value> <!-- 2630 MHz CPU speed -->
+      <value>2704000</value> <!-- 2704 MHz CPU speed -->
+      <value>2802000</value> <!-- 2802 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 0 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster0">
-      <value>13.58</value>
-      <value>38.22</value>
-      <value>48.59</value>
-      <value>64.02</value>
-      <value>79.69</value>
-      <value>89.66</value>
-      <value>105.64</value>
-      <value>113.30</value>
-      <value>142.24</value>
-      <value>158.91</value>
-      <value>180.73</value>
-      <value>229.19</value>
-      <value>266.66</value>
+      <value>1.89</value> <!-- 300 MHz CPU speed -->
+      <value>6.15</value> <!-- 574 MHz CPU speed -->
+      <value>9.34</value> <!-- 738 MHz CPU speed -->
+      <value>14.22</value> <!-- 930 MHz CPU speed -->
+      <value>18.94</value> <!-- 1098 MHz CPU speed -->
+      <value>21.98</value> <!-- 1197 MHz CPU speed -->
+      <value>26.83</value> <!-- 1328 MHz CPU speed -->
+      <value>30.17</value> <!-- 1401 MHz CPU speed -->
+      <value>41.55</value> <!-- 1598 MHz CPU speed -->
+      <value>48.36</value> <!-- 1704 MHz CPU speed -->
+      <value>58.45</value> <!-- 1803 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 1 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster1">
-      <value>59.00</value>
-      <value>87.69</value>
-      <value>114.54</value>
-      <value>134.19</value>
-      <value>157.72</value>
-      <value>184.69</value>
-      <value>229.99</value>
-      <value>264.08</value>
-      <value>316.56</value>
-      <value>375.74</value>
-      <value>450.94</value>
-      <value>529.79</value>
-      <value>603.34</value>
-      <value>684.48</value>
+      <value>3.71</value> <!-- 400 MHz CPU speed -->
+      <value>6.16</value> <!-- 553 MHz CPU speed -->
+      <value>8</value> <!-- 696 MHz CPU speed -->
+      <value>10.94</value> <!-- 799 MHz CPU speed -->
+      <value>12.73</value> <!-- 910 MHz CPU speed -->
+      <value>14.4</value> <!-- 1024 MHz CPU speed -->
+      <value>21.39</value> <!-- 1197 MHz CPU speed -->
+      <value>24.1</value> <!-- 1328 MHz CPU speed -->
+      <value>30.42</value> <!-- 1491 MHz CPU speed -->
+      <value>42.49</value> <!-- 1663 MHz CPU speed -->
+      <value>49.37</value> <!-- 1836 MHz CPU speed -->
+      <value>58.09</value> <!-- 1999 MHz CPU speed -->
+      <value>67.54</value> <!-- 2130 MHz CPU speed -->
+      <value>79.04</value> <!-- 2253 MHz CPU speed -->
     </array>
 
+    <!-- Additional power used by a CPU core from cluster 2 when running at
+         different speeds, excluding cluster and active cost -->
     <array name="cpu.core_power.cluster2">
-      <value>199.11</value>
-      <value>332.32</value>
-      <value>389.40</value>
-      <value>452.85</value>
-      <value>547.22</value>
-      <value>629.93</value>
-      <value>735.84</value>
-      <value>861.23</value>
-      <value>946.15</value>
-      <value>1137.98</value>
-      <value>1318.48</value>
-      <value>1396.56</value>
-      <value>1583.05</value>
-      <value>1811.61</value>
-      <value>2050.00</value>
+      <value>8.36</value> <!-- 500 MHz CPU speed -->
+      <value>16.33</value> <!-- 851 MHz CPU speed -->
+      <value>19.44</value> <!-- 984 MHz CPU speed -->
+      <value>36.71</value> <!-- 1106 MHz CPU speed -->
+      <value>41.42</value> <!-- 1277 MHz CPU speed -->
+      <value>48.24</value> <!-- 1426 MHz CPU speed -->
+      <value>54.77</value> <!-- 1582 MHz CPU speed -->
+      <value>65.32</value> <!-- 1745 MHz CPU speed -->
+      <value>69.58</value> <!-- 1826 MHz CPU speed -->
+      <value>128.49</value> <!-- 2048 MHz CPU speed -->
+      <value>142.15</value> <!-- 2188 MHz CPU speed -->
+      <value>149.74</value> <!-- 2252 MHz CPU speed -->
+      <value>164.78</value> <!-- 2401 MHz CPU speed -->
+      <value>188.68</value> <!-- 2507 MHz CPU speed -->
+      <value>193.15</value> <!-- 2630 MHz CPU speed -->
+      <value>227.98</value> <!-- 2704 MHz CPU speed -->
+      <value>254.25</value> <!-- 2802 MHz CPU speed -->
     </array>
 
     <!-- Additional power used when screen is ambient mode -->
diff --git a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index fb6ecc9..6d0894d 100644
--- a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -16,9 +16,6 @@
 */
 -->
 <resources>
-    <!-- for 20dp of padding at 3.5px/dp at default density -->
-    <dimen name="rounded_corner_content_padding">50px</dimen>
-
     <!-- the padding on the top of the statusbar (usually 0) -->
     <dimen name="status_bar_padding_top">1px</dimen>
 
diff --git a/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml b/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
new file mode 100644
index 0000000..46c95af
--- /dev/null
+++ b/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2021 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>
+  <bool name="enable_ons_auto_provisioning">true</bool>
+</resources>
diff --git a/slider/BoardConfig.mk b/slider/BoardConfig.mk
index 887ecbe..82425d2 100644
--- a/slider/BoardConfig.mk
+++ b/slider/BoardConfig.mk
@@ -21,4 +21,5 @@
 BOARD_BOOTCONFIG += androidboot.selinux=permissive
 
 include device/google/gs101/BoardConfig-common.mk
+include device/google/gs101/wifi/BoardConfig-wifi.mk
 -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
diff --git a/whitefin/BoardConfig.mk b/whitefin/BoardConfig.mk
index e042336..5b5a07a 100644
--- a/whitefin/BoardConfig.mk
+++ b/whitefin/BoardConfig.mk
@@ -21,4 +21,5 @@
 BOARD_BOOTCONFIG += androidboot.selinux=permissive
 
 include device/google/gs101/BoardConfig-common.mk
+include device/google/gs101/wifi/BoardConfig-wifi.mk
 -include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk