diff --git a/Android.bp b/Android.bp
index f61e31bc42a8706ec13dc884231b0ca7143fc18a..3e40d60521b97c90901656d106403e161ece47d0 100644
--- a/Android.bp
+++ b/Android.bp
@@ -1,3 +1,6 @@
+soong_namespace {
+}
+
subdirs = [
"light",
]
diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk
index 5aba7ff2044989b9d145d98141435f1148474dc9..7e3f2495caff58181fdef65bde0a1749b1dc1612 100644
--- a/BoardConfigCommon.mk
+++ b/BoardConfigCommon.mk
@@ -34,13 +34,13 @@ TARGET_ARCH := arm64
TARGET_ARCH_VARIANT := armv8-a
TARGET_CPU_ABI := arm64-v8a
TARGET_CPU_ABI2 :=
-TARGET_CPU_VARIANT := generic
+TARGET_CPU_VARIANT := cortex-a53
TARGET_2ND_ARCH := arm
TARGET_2ND_ARCH_VARIANT := armv8-a
TARGET_2ND_CPU_ABI := armeabi-v7a
TARGET_2ND_CPU_ABI2 := armeabi
-TARGET_2ND_CPU_VARIANT := generic
+TARGET_2ND_CPU_VARIANT := cortex-a53
TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a53
TARGET_USES_64_BIT_BINDER := true
@@ -209,7 +209,7 @@ BOARD_WPA_SUPPLICANT_DRIVER := NL80211
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
BOARD_HOSTAPD_DRIVER := NL80211
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
-WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/bcmdhd/parameters/firmware_path"
+WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/wlan/parameters/firmware_path"
WIFI_DRIVER_FW_PATH_AP := "/system/etc/firmware/wlan/bcmdhd/fw_bcmdhd_apsta.bin"
WIFI_DRIVER_FW_PATH_STA := "/system/etc/firmware/wlan/bcmdhd/fw_bcmdhd.bin"
WPA_SUPPLICANT_VERSION := VER_0_8_X
diff --git a/audio/audio_effects.xml b/audio/audio_effects.xml
index 3b8705839288a6a0ef89050c956bb2469bb765b5..ced294bac0a253531184cc067464ddbd55254d3b 100644
--- a/audio/audio_effects.xml
+++ b/audio/audio_effects.xml
@@ -3,31 +3,51 @@
-
+
+
-
-
-
-
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
diff --git a/audio/audio_policy_configuration.xml b/audio/audio_policy_configuration.xml
index 32908bbe3de0fd5575bfc7fb57e6ad08694a0f4f..c89bc36e1c2afac90d8638ccd87c42c115a58036 100644
--- a/audio/audio_policy_configuration.xml
+++ b/audio/audio_policy_configuration.xml
@@ -63,10 +63,6 @@
-
-
-
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx,BT SCO Headset Mic,Telephony Rx"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
+ sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
524288,2097152,4194304,262144,524288,1048576
+
+ false
+
- com.google.android.gms/com.google.android.gms.nearby.messages.service.NearbyMessagesService
diff --git a/radio.mk b/radio.mk
index 23d3aa0d2921333d8bf1afa04546751ccefa1888..b8d7905247ebde48d1955d7de4c660de885453ed 100644
--- a/radio.mk
+++ b/radio.mk
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2017 The LineageOS Project
+# Copyright (C) 2017-2021 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -16,7 +16,7 @@
# Permissions
PRODUCT_COPY_FILES += \
- frameworks/native/data/etc/android.hardware.telephony.gsm.xml:system/etc/permissions/android.hardware.telephony.gsm.xml
+ frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/android.hardware.telephony.gsm.xml
# Properties
PRODUCT_PROPERTY_OVERRIDES += \
diff --git a/rootdir/fstab.qcom b/rootdir/fstab.qcom
index 1567ff38ddf96a12923e5ba3adb86b010419fc24..55bed1bbb2cc3cf1ef0499ef52089e532ae25e3a 100644
--- a/rootdir/fstab.qcom
+++ b/rootdir/fstab.qcom
@@ -8,6 +8,7 @@
/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1 wait,recoveryonly
/dev/block/bootdevice/by-name/userdata /data ext4 nosuid,nodev,barrier=1 wait,encryptable=footer,length=-16384
/dev/block/bootdevice/by-name/cache /cache ext4 nosuid,nodev,barrier=1 wait
+/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
/dev/block/bootdevice/by-name/modem /firmware vfat ro,shortname=lower,uid=1000,gid=1000,dmask=222,fmask=222 wait
/dev/block/bootdevice/by-name/persist /persist ext4 nosuid,nodev,barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic wait,notrim
/dev/block/bootdevice/by-name/config /persistent emmc defaults defaults
diff --git a/rootdir/init.qcom.rc b/rootdir/init.qcom.rc
index 6a036771c62156a024e23da8c57912d52817e367..d47b6ae14212ff199c47e38416e9af12b2d452fa 100644
--- a/rootdir/init.qcom.rc
+++ b/rootdir/init.qcom.rc
@@ -463,13 +463,10 @@ on post-fs-data
chown system system /sys/module/qpnp_smbcharger_extension/parameters/id_polling_state
# Wifi firmware reload path
- chown wifi wifi /sys/module/bcmdhd/parameters/firmware_path
+ chown wifi wifi /sys/module/wlan/parameters/firmware_path
setprop vold.post_fs_data_done 1
-on property:init.svc.wpa_supplicant=stopped
- stop dhcpcd
-
service irsc_util /system/bin/irsc_util "/etc/sec_config"
class main
user root
diff --git a/sepolicy/vendor/charger.te b/sepolicy/vendor/charger.te
index f15938be0ebe350d4fb7912a5978010fd0ef89dc..fbeca80ab8d88ea47100f90c4c999f874d647c0d 100644
--- a/sepolicy/vendor/charger.te
+++ b/sepolicy/vendor/charger.te
@@ -1,5 +1,5 @@
allow charger device:dir r_dir_perms;
allow charger self:capability { dac_override dac_read_search };
allow charger sysfs_battery_supply:file r_file_perms;
-allow charger sysfs:file { open read getattr };
+allow charger sysfs:file r_file_perms;
allow charger sysfs_usb_supply:file r_file_perms;
diff --git a/sepolicy/vendor/file.te b/sepolicy/vendor/file.te
index 1111362932b73ec6e4f08e6f758350285c2e671e..2c8f772ed2e991e42668c40148968537c187687b 100644
--- a/sepolicy/vendor/file.te
+++ b/sepolicy/vendor/file.te
@@ -1,5 +1,6 @@
type brcm_ldisc_sysfs, sysfs_type, fs_type;
type fpc_data_file, file_type;
+type mediadrm_vendor_data_file, file_type, data_file_type;
type proc_kernel_sched, fs_type;
type secd_data_file, file_type;
type secd_socket, file_type;
diff --git a/sepolicy/vendor/file_contexts b/sepolicy/vendor/file_contexts
index b1b988eb5c01ed54277139d59a870b2286b4ffe3..80aa7cd6067c85326c4712d8d3d216ef6c3b7b04 100644
--- a/sepolicy/vendor/file_contexts
+++ b/sepolicy/vendor/file_contexts
@@ -20,8 +20,9 @@
/sys/devices(/soc\.0)?/bcmdhd_wlan.83/macaddr u:object_r:sysfs_addrsetup:s0
# DRM
-/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@1\.2-service.clearkey u:object_r:hal_drm_clearkey_exec:s0
-/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@1\.1-service.widevine u:object_r:hal_drm_widevine_exec:s0
+/data/vendor/mediadrm(/.*)? u:object_r:mediadrm_vendor_data_file:s0
+/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@1\.[0-9]-service.clearkey u:object_r:hal_drm_clearkey_exec:s0
+/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@1\.[0-9]-service.widevine u:object_r:hal_drm_widevine_exec:s0
# BRCM BT FM
/sys/bus/platform/drivers/bcm_ldisc/bcmbt_ldisc(/.*)? u:object_r:brcm_ldisc_sysfs:s0
diff --git a/sepolicy/vendor/hal_drm_clearkey.te b/sepolicy/vendor/hal_drm_clearkey.te
index 286e248b74dd695fd219e2ec3610c9d4c08d2ef4..bae05ce1b2f581c7a1668af5a1f023e3bdd06768 100644
--- a/sepolicy/vendor/hal_drm_clearkey.te
+++ b/sepolicy/vendor/hal_drm_clearkey.te
@@ -8,3 +8,4 @@ allow hal_drm_clearkey hal_drm_hwservice:hwservice_manager { add find };
allow hal_drm_clearkey hidl_base_hwservice:hwservice_manager add;
allow hal_drm_clearkey hwservicemanager:binder { call transfer };
allow hal_drm_clearkey hwservicemanager_prop:file r_file_perms;
+allow hal_drm_clearkey mediadrmserver:binder { call transfer };
diff --git a/sepolicy/vendor/hal_drm_widevine.te b/sepolicy/vendor/hal_drm_widevine.te
new file mode 100644
index 0000000000000000000000000000000000000000..120a9ec91f4f18dcd0b10c462058581470f7770a
--- /dev/null
+++ b/sepolicy/vendor/hal_drm_widevine.te
@@ -0,0 +1,2 @@
+allow hal_drm_widevine mediadrm_vendor_data_file:dir create_dir_perms;
+allow hal_drm_widevine mediadrm_vendor_data_file:file create_file_perms;
diff --git a/sepolicy/vendor/hal_fingerprint_default.te b/sepolicy/vendor/hal_fingerprint_default.te
index 355eec63af6bc898d45e94f532744b4f30efdc5a..26f89e2068cd031ab90d4427718a62a7300d3ee1 100644
--- a/sepolicy/vendor/hal_fingerprint_default.te
+++ b/sepolicy/vendor/hal_fingerprint_default.te
@@ -16,5 +16,4 @@ allow hal_fingerprint_default sysfs_battery_supply:dir search;
allow hal_fingerprint_default sysfs_battery_supply:file r_file_perms;
allow hal_fingerprint_default system_data_file:dir create_dir_perms;
allow hal_fingerprint_default system_data_file:sock_file create_file_perms;
-allow hal_fingerprint_default tee_device:chr_file ioctl;
allow hal_fingerprint_default tee_device:chr_file rw_file_perms;
diff --git a/sepolicy/vendor/init-power-sh.te b/sepolicy/vendor/init-power-sh.te
index c3df56f847510d45f696c39fe52cd52004066b21..088fdb778310cb1caa5564616a0aa6217c481c7f 100644
--- a/sepolicy/vendor/init-power-sh.te
+++ b/sepolicy/vendor/init-power-sh.te
@@ -1,3 +1,4 @@
+# init-power-sh service
type init-power-sh, domain;
type init-power-sh_exec, exec_type, file_type;
diff --git a/sepolicy/vendor/init.te b/sepolicy/vendor/init.te
index 043036a2175b4cccf0620a335c6a092cc41e1514..39a7c31dd15698ef664e43985b516ed7fae923be 100644
--- a/sepolicy/vendor/init.te
+++ b/sepolicy/vendor/init.te
@@ -2,7 +2,7 @@ allow init block_device:blk_file setattr;
allow init cameraserver:fd use;
allow init debugfs:file w_file_perms;
allow init diag_data_file:dir mounton;
-allow init diag_data_file:file { lock rename };
+allow init diag_data_file:file create_file_perms;
allow init diag_data_file:sock_file write;
allow init fingerprintd_data_file:file rename;
allow init hal_drm_hwservice:hwservice_manager add;
diff --git a/sepolicy/vendor/loc_launcher.te b/sepolicy/vendor/loc_launcher.te
index 9f6fe93d6d5ad69705bb2b13fe9bea0aa4c27b19..4078ff8fb8c4e28c3b2923e67b5b10fb4a385127 100644
--- a/sepolicy/vendor/loc_launcher.te
+++ b/sepolicy/vendor/loc_launcher.te
@@ -2,6 +2,7 @@
type loc_launcher, domain;
type loc_launcher_exec, exec_type, file_type;
+# Started by init
init_daemon_domain(loc_launcher)
allow loc_launcher location_data_file:dir rw_dir_perms;
diff --git a/sepolicy/vendor/mediadrmserver.te b/sepolicy/vendor/mediadrmserver.te
new file mode 100644
index 0000000000000000000000000000000000000000..5da38e7a51ab260e4fc00e4799393aba07c7d78d
--- /dev/null
+++ b/sepolicy/vendor/mediadrmserver.te
@@ -0,0 +1 @@
+allow mediadrmserver hal_drm_clearkey:binder { call transfer };
diff --git a/sepolicy/vendor/mlog_qmi_service.te b/sepolicy/vendor/mlog_qmi_service.te
index d097f59dc0149a896a9f9909ba768d87b40c4a1b..d03d382ab7aa667b66c530ea520632075f9e6d8c 100644
--- a/sepolicy/vendor/mlog_qmi_service.te
+++ b/sepolicy/vendor/mlog_qmi_service.te
@@ -7,7 +7,6 @@ init_daemon_domain(mlog_qmi_service)
# Allow mlog_qmi_service to create self:socket
allow mlog_qmi_service self:socket create_socket_perms;
-allow mlog_qmi_service self:socket { create read write };
allowxperm mlog_qmi_service self:socket ioctl msm_sock_ipc_ioctls;
# Allow mlog_qmi_service to use net_raw capability
diff --git a/sepolicy/vendor/rild.te b/sepolicy/vendor/rild.te
index f845b64e16dd90bdf7e0c7cf4d5f7a32ee9b8eb6..5c87aef307e9a9c1fe981e61a80577f929f5a6f5 100644
--- a/sepolicy/vendor/rild.te
+++ b/sepolicy/vendor/rild.te
@@ -15,6 +15,5 @@ allow rild servicemanager:binder call;
allow rild socket_device:sock_file write;
allow rild tad_socket:sock_file write;
allow rild tad:unix_stream_socket connectto;
-allow rild tee_device:chr_file ioctl;
allow rild tee_device:chr_file rw_file_perms;
allow rild vendor_file:file ioctl;
diff --git a/sepolicy/vendor/sensors.te b/sepolicy/vendor/sensors.te
index 379d1776878695c35621d851087399723cf61c2b..648f8532c81f58aeca77a2b78d489bb7aa891824 100644
--- a/sepolicy/vendor/sensors.te
+++ b/sepolicy/vendor/sensors.te
@@ -2,5 +2,5 @@ allow sensors device:dir w_dir_perms;
allow sensors input_device:chr_file { relabelfrom getattr link };
allow sensors input_device:dir search;
allow sensors sysfs:file r_file_perms;
-allow sensors tad_socket:sock_file { write };
+allow sensors tad_socket:sock_file write;
allow sensors tmpfs:file rw_file_perms;
diff --git a/sepolicy/vendor/timekeep.te b/sepolicy/vendor/timekeep.te
index ab13d0f9b294af0f9a20efa337b181b7b2a043ac..52a97d8a1852e0502ce03756bf32ecb7c6c3a0b3 100644
--- a/sepolicy/vendor/timekeep.te
+++ b/sepolicy/vendor/timekeep.te
@@ -16,9 +16,9 @@ allow timekeep self:capability {
dac_override
dac_read_search
};
-allow timekeep timekeep_data_file:file create_file_perms;
-allow timekeep timekeep_data_file:dir create_dir_perms;
-allow timekeep time_data_file:dir create_dir_perms;
-allow timekeep time_data_file:file create_file_perms;
allow timekeep sysfs:file r_file_perms;
allow timekeep sysfs_rtc:dir search;
+allow timekeep time_data_file:dir create_dir_perms;
+allow timekeep time_data_file:file create_file_perms;
+allow timekeep timekeep_data_file:dir create_dir_perms;
+allow timekeep timekeep_data_file:file create_file_perms;