diff --git a/a10/BoardConfig.mk b/a10/BoardConfig.mk
new file mode 100644
index 0000000..c065b86
--- /dev/null
+++ b/a10/BoardConfig.mk
@@ -0,0 +1,17 @@
+DEVICE_PATH := device/samsung/a10
+
+# Asserts
+TARGET_OTA_ASSERT_DEVICE := a10,a10dd
+
+# Kernel
+TARGET_KERNEL_CONFIG := exynos7885-a10_enforcing_defconfig
+
+# Display
+TARGET_SCREEN_DENSITY := 320
+
+# Partitions
+BOARD_RECOVERYIMAGE_PARTITION_SIZE := 55574528 # 55MB
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 4320133120 #4.02GB
+
+# Inherit common board flags
+include device/samsung/universal7885-common/BoardConfigCommon.mk
diff --git a/a10/device.mk b/a10/device.mk
new file mode 100644
index 0000000..b02d48a
--- /dev/null
+++ b/a10/device.mk
@@ -0,0 +1,9 @@
+DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
+
+# Inherit common device configuration
+$(call inherit-product, device/samsung/universal7885-common/universal7885-common.mk)
+
+$(call inherit-product, vendor/samsung/a10/a10-vendor.mk)
+
+PRODUCT_PACKAGES += \
+ CameraLightSensor
diff --git a/a10/full_a10.mk b/a10/full_a10.mk
new file mode 100644
index 0000000..30e6d82
--- /dev/null
+++ b/a10/full_a10.mk
@@ -0,0 +1,19 @@
+# Copyright (C) 2018 The LineageOS Project
+# SPDX-License-Identifier: Apache-2.0
+
+# Inherit from those products. Most specific first.
+$(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
+
+# Inherit device configuration
+$(call inherit-product, device/samsung/a10/device.mk)
+
+# Device identifier. This must come after all inclusions
+PRODUCT_DEVICE := a10
+PRODUCT_NAME := full_a10
+PRODUCT_MODEL := SM-A105F
+PRODUCT_BRAND := samsung
+PRODUCT_MANUFACTURER := samsung
+
diff --git a/a10/overlay/frameworks/base/core/res/res/values/config.xml b/a10/overlay/frameworks/base/core/res/res/values/config.xml
new file mode 100644
index 0000000..8daa2f5
--- /dev/null
+++ b/a10/overlay/frameworks/base/core/res/res/values/config.xml
@@ -0,0 +1,10 @@
+
+
+ false
+ true
+ false
+ M62,0l-3.8,0l-3.9,0.2l-3.9,0.4l-4,0.8l-3.9,1.2l-3.8,1.6l-3.7,2l-3.4,2.4l-3.1,2.8l-2.9,3l-2.7,3.1l-2.6,3.1 l-2.7,2.8C12.5,28,6.2,30.3,0,30.3c-6.3,0-12.5-2.3-17.5-6.8l-2.7-2.8l-2.6-3.1l-2.7-3.1l-2.9-3l-3.2-2.8 L-35,6.2l-3.7-2l-3.8-1.6l-3.9-1.2l-4-0.8L-54.3,0.2L-58.2,0L-62,0Z @dp
+ false
+ false
+ true
+
diff --git a/a10/overlay/frameworks/base/core/res/res/values/dimens.xml b/a10/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..faac598
--- /dev/null
+++ b/a10/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,6 @@
+
+
+ 24.0dip
+ 31.0dip
+ 40px
+
diff --git a/a10/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/a10/overlay/frameworks/base/core/res/res/xml/power_profile.xml
new file mode 100644
index 0000000..a127e0b
--- /dev/null
+++ b/a10/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -0,0 +1,87 @@
+
+
+ - 0
+ - 93
+ - 313
+ - 118
+ - 0.98
+ - 0.43
+ - 488
+ - 502
+ - 45
+ - 286
+ - 124
+ - 662
+ - 32
+ - 164
+ - 115
+
+ 7.3
+ 7.3
+
+
+ 6
+ 2
+
+
+ 1586000
+ 1482000
+ 1352000
+ 1248000
+ 1144000
+ 1014000
+ 902000
+ 839000
+ 757000
+ 676000
+ 546000
+ 449000
+
+
+ 50
+ 43
+ 34
+ 28
+ 24
+ 18
+ 15
+ 13
+ 11
+ 10
+ 7
+ 6
+
+
+ 1768000
+ 1664000
+ 1560000
+ 1352000
+ 1144000
+ 936000
+
+
+ 162
+ 142
+ 120
+ 87
+ 61
+ 41
+
+ - 3.79
+ - 23
+ - 2900
+ - 1
+ - 65
+ - 265
+
+ 0
+
+ - 3600
+
+ .0002
+ .002
+ .02
+ .2
+ 2
+
+
diff --git a/a10/setup.sh b/a10/setup.sh
new file mode 100755
index 0000000..294dd40
--- /dev/null
+++ b/a10/setup.sh
@@ -0,0 +1,22 @@
+VENDOR=$(cat device/samsung/universal7885-common/vendor_name)
+if [ ! $VENDOR ]; then
+VENDOR=aosp;
+fi
+
+# Generate AndroidProducts.mk
+echo "# Auto-Generated by device/samsung/a10/setup.sh" > device/samsung/a10/AndroidProducts.mk
+echo "PRODUCT_MAKEFILES += \$(LOCAL_DIR)/"$VENDOR"_a10.mk" >> device/samsung/a10/AndroidProducts.mk
+
+# Generate _a10.mk
+echo "# Auto-Generated by device/samsung/a10/setup.sh" > device/samsung/a10/"$VENDOR"_a10.mk
+echo "\$(call inherit-product, device/samsung/a10/full_a10.mk)" >> device/samsung/a10/"$VENDOR"_a10.mk
+if test -f vendor/"$VENDOR"/config/common_full_phone.mk && echo "common_full_phone"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common_full_phone.mk)" >> device/samsung/a10/"$VENDOR"_a10.mk
+elif test -f vendor/"$VENDOR"/config/common.mk && echo "common"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common.mk)" >> device/samsung/a10/"$VENDOR"_a10.mk
+fi
+echo "PRODUCT_NAME := "$VENDOR"_a10" >> device/samsung/a10/"$VENDOR"_a10.mk
+echo "" >> device/samsung/a10/"$VENDOR"_a10.mk
+echo "# Additional Props" >> device/samsung/a10/"$VENDOR"_a10.mk
+echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a10/"$VENDOR"_a10.mk
+echo "TARGET_BOOT_ANIMATION_RES := 720" >> device/samsung/a10/"$VENDOR"_a10.mk
diff --git a/a20/derp_a20.mk b/a20/derp_a20.mk
deleted file mode 100644
index 35b2b6d..0000000
--- a/a20/derp_a20.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-# Auto-Generated by device/samsung/a20/setup.sh
-$(call inherit-product, device/samsung/a20/full_a20.mk)
-$(call inherit-product, vendor/derp/config/common_full_phone.mk)
-PRODUCT_NAME := derp_a20
-# Additional Props
-TARGET_FACE_UNLOCK_SUPPORTED := true
-TARGET_BOOT_ANIMATION_RES := 720
diff --git a/a20/device.mk b/a20/device.mk
index 196227a..b1db20f 100644
--- a/a20/device.mk
+++ b/a20/device.mk
@@ -5,9 +5,8 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
$(call inherit-product, vendor/samsung/a20/a20-vendor.mk)
-# Image
-#TARGET_PREBUILT_KERNEL := device/samsung/a20e/Image
-#PRODUCT_COPY_FILES += \
- $(TARGET_PREBUILT_KERNEL):kernel
-
+# Derp
+DERP_BUILDTYPE := Official
+PRODUCT_PACKAGES += \
+ CameraLightSensor
diff --git a/a20e/derp_a20e.mk b/a20e/derp_a20e.mk
deleted file mode 100644
index 1059d4d..0000000
--- a/a20e/derp_a20e.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Auto-Generated by device/samsung/a20e/setup.sh
-$(call inherit-product, device/samsung/a20e/full_a20e.mk)
-$(call inherit-product, vendor/derp/config/common_full_phone.mk)
-PRODUCT_NAME := derp_a20e
-
-# Additional Props
-TARGET_FACE_UNLOCK_SUPPORTED := true
-TARGET_BOOT_ANIMATION_RES := 720
diff --git a/a20e/device.mk b/a20e/device.mk
index 9a06233..875e2ef 100644
--- a/a20e/device.mk
+++ b/a20e/device.mk
@@ -5,8 +5,8 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
$(call inherit-product, vendor/samsung/a20e/a20e-vendor.mk)
-# Image
-#TARGET_PREBUILT_KERNEL := device/samsung/a20e/Image
-#PRODUCT_COPY_FILES += \
- $(TARGET_PREBUILT_KERNEL):kernel
+# Derp
+DERP_BUILDTYPE := Official
+PRODUCT_PACKAGES += \
+ CameraLightSensor
diff --git a/a30/BoardConfig.mk b/a30/BoardConfig.mk
new file mode 100644
index 0000000..f1d07c7
--- /dev/null
+++ b/a30/BoardConfig.mk
@@ -0,0 +1,17 @@
+DEVICE_PATH := device/samsung/a30
+
+# Asserts
+TARGET_OTA_ASSERT_DEVICE := a30,a30dd
+
+# Kernel
+TARGET_KERNEL_CONFIG := exynos7885-a30_enforcing_defconfig
+
+# Display
+TARGET_SCREEN_DENSITY := 411
+
+# Partitions
+BOARD_RECOVERYIMAGE_PARTITION_SIZE := 55574528 # 55MB
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 4320133120 #4.02GB
+
+# Inherit common board flags
+include device/samsung/universal7885-common/BoardConfigCommon.mk
diff --git a/a30/device.mk b/a30/device.mk
new file mode 100644
index 0000000..7ae9806
--- /dev/null
+++ b/a30/device.mk
@@ -0,0 +1,8 @@
+DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
+
+# Inherit common device configuration
+$(call inherit-product, device/samsung/universal7885-common/universal7885-common.mk)
+
+$(call inherit-product, vendor/samsung/a30/a30-vendor.mk)
+
+
diff --git a/a30/full_a30.mk b/a30/full_a30.mk
new file mode 100644
index 0000000..024a084
--- /dev/null
+++ b/a30/full_a30.mk
@@ -0,0 +1,18 @@
+# Copyright (C) 2018 The LineageOS Project
+# SPDX-License-Identifier: Apache-2.0
+
+# Inherit from those products. Most specific first.
+$(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
+
+# Inherit device configuration
+$(call inherit-product, device/samsung/a30/device.mk)
+
+# Device identifier. This must come after all inclusions
+PRODUCT_DEVICE := a30
+PRODUCT_NAME := full_a30
+PRODUCT_MODEL := SM-A305F
+PRODUCT_BRAND := samsung
+PRODUCT_MANUFACTURER := samsung
diff --git a/a30/overlay/frameworks/base/core/res/res/values/config.xml b/a30/overlay/frameworks/base/core/res/res/values/config.xml
new file mode 100644
index 0000000..6e3b5cc
--- /dev/null
+++ b/a30/overlay/frameworks/base/core/res/res/values/config.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+ M 0,0 H -67.42857142857143 V 30.85714285714286 H 67.42857142857143 V 0 H 0 Z @dp
+ @*android:string/config_mainBuiltInDisplayCutout
+
+ false
+ true
+ false
+ false
+ true
+ true
+ true
+
+ true
+
+
+
+ - 0:2:15
+
+
+
+ 4
+
+
+ true
+
+
+ true
+
+
+ 2
+
diff --git a/a30/overlay/frameworks/base/core/res/res/values/dimens.xml b/a30/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..a7eb53e
--- /dev/null
+++ b/a30/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,13 @@
+
+
+
+ 24.0dip
+
+
+ 31.0dip
+
+
+ 40px
+
diff --git a/a30/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/a30/overlay/frameworks/base/core/res/res/xml/power_profile.xml
new file mode 100644
index 0000000..af4faa2
--- /dev/null
+++ b/a30/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -0,0 +1,88 @@
+
+
+ - 0
+ - 93
+ - 313
+ - 118
+ - 0.98
+ - 0.43
+ - 488
+ - 502
+ - 45
+ - 286
+ - 124
+ - 662
+ - 32
+ - 164
+ - 115
+
+ 7.3
+ 7.3
+
+
+ 6
+ 2
+
+
+ 1586000
+ 1482000
+ 1352000
+ 1248000
+ 1144000
+ 1014000
+ 902000
+ 839000
+ 757000
+ 676000
+ 546000
+ 449000
+
+
+ 50
+ 43
+ 34
+ 28
+ 24
+ 18
+ 15
+ 13
+ 11
+ 10
+ 7
+ 6
+
+
+ 1768000
+ 1664000
+ 1560000
+ 1352000
+ 1144000
+ 936000
+
+
+ 162
+ 142
+ 120
+ 87
+ 61
+ 41
+
+ - 3.79
+ - 23
+ - 4000
+ - 4000
+ - 1
+ - 65
+ - 265
+
+ 0
+
+ - 3600
+
+ .0002
+ .002
+ .02
+ .2
+ 2
+
+
diff --git a/a30/setup.sh b/a30/setup.sh
new file mode 100755
index 0000000..d113d49
--- /dev/null
+++ b/a30/setup.sh
@@ -0,0 +1,22 @@
+VENDOR=$(cat device/samsung/universal7885-common/vendor_name)
+if [ ! $VENDOR ]; then
+VENDOR=aosp;
+fi
+# Generate AndroidProducts.mk
+echo "# Auto-Generated by device/samsung/a30/setup.sh" > device/samsung/a30/AndroidProducts.mk
+echo "PRODUCT_MAKEFILES += \$(LOCAL_DIR)/"$VENDOR"_a30.mk" >> device/samsung/a30/AndroidProducts.mk
+
+# Generate _a30.mk
+echo "# Auto-Generated by device/samsung/a30/setup.sh" > device/samsung/a30/"$VENDOR"_a30.mk
+echo "\$(call inherit-product, device/samsung/a30/full_a30.mk)" >> device/samsung/a30/"$VENDOR"_a30.mk
+if test -f vendor/"$VENDOR"/config/common_full_phone.mk && echo "common_full_phone"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common_full_phone.mk)" >> device/samsung/a30/"$VENDOR"_a30.mk
+elif test -f vendor/"$VENDOR"/config/common.mk && echo "common"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common.mk)" >> device/samsung/a30/"$VENDOR"_a30.mk
+fi
+echo "PRODUCT_NAME := "$VENDOR"_a30" >> device/samsung/a30/"$VENDOR"_a30.mk
+echo "" >> device/samsung/a30/"$VENDOR"_a30.mk
+echo "# Additional Props" >> device/samsung/a30/"$VENDOR"_a30.mk
+echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a30/"$VENDOR"_a30.mk
+echo "TARGET_BOOT_ANIMATION_RES := 720" >> device/samsung/a30/"$VENDOR"_a30.mk
+
diff --git a/a40/BoardConfig.mk b/a40/BoardConfig.mk
new file mode 100644
index 0000000..af39c1f
--- /dev/null
+++ b/a40/BoardConfig.mk
@@ -0,0 +1,17 @@
+DEVICE_PATH := device/samsung/a40
+
+# Asserts
+TARGET_OTA_ASSERT_DEVICE := a40,a40dd
+
+# Kernel
+TARGET_KERNEL_CONFIG := exynos7885-a40_enforcing_defconfig
+
+# Display
+TARGET_SCREEN_DENSITY := 411
+
+# Partitions
+BOARD_RECOVERYIMAGE_PARTITION_SIZE := 55574528 # 55MB
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 4320133120 #4.02GB
+
+# Inherit common board flags
+include device/samsung/universal7885-common/BoardConfigCommon.mk
diff --git a/a40/device.mk b/a40/device.mk
new file mode 100644
index 0000000..a7d86fb
--- /dev/null
+++ b/a40/device.mk
@@ -0,0 +1,9 @@
+DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
+
+# Inherit common device configuration
+$(call inherit-product, device/samsung/universal7885-common/universal7885-common.mk)
+
+$(call inherit-product, vendor/samsung/a40/a40-vendor.mk)
+
+
+
diff --git a/a40/full_a40.mk b/a40/full_a40.mk
new file mode 100644
index 0000000..48f9b92
--- /dev/null
+++ b/a40/full_a40.mk
@@ -0,0 +1,18 @@
+# Copyright (C) 2018 The LineageOS Project
+# SPDX-License-Identifier: Apache-2.0
+
+# Inherit from those products. Most specific first.
+$(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
+
+# Inherit device configuration
+$(call inherit-product, device/samsung/a40/device.mk)
+
+# Device identifier. This must come after all inclusions
+PRODUCT_DEVICE := a40
+PRODUCT_NAME := full_a40
+PRODUCT_MODEL := SM-A405F
+PRODUCT_BRAND := samsung
+PRODUCT_MANUFACTURER := samsung
diff --git a/a40/overlay/frameworks/base/core/res/res/values/config.xml b/a40/overlay/frameworks/base/core/res/res/values/config.xml
new file mode 100644
index 0000000..6e3b5cc
--- /dev/null
+++ b/a40/overlay/frameworks/base/core/res/res/values/config.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+ M 0,0 H -67.42857142857143 V 30.85714285714286 H 67.42857142857143 V 0 H 0 Z @dp
+ @*android:string/config_mainBuiltInDisplayCutout
+
+ false
+ true
+ false
+ false
+ true
+ true
+ true
+
+ true
+
+
+
+ - 0:2:15
+
+
+
+ 4
+
+
+ true
+
+
+ true
+
+
+ 2
+
diff --git a/a40/overlay/frameworks/base/core/res/res/values/dimens.xml b/a40/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..a7eb53e
--- /dev/null
+++ b/a40/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,13 @@
+
+
+
+ 24.0dip
+
+
+ 31.0dip
+
+
+ 40px
+
diff --git a/a40/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/a40/overlay/frameworks/base/core/res/res/xml/power_profile.xml
new file mode 100644
index 0000000..af4faa2
--- /dev/null
+++ b/a40/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -0,0 +1,88 @@
+
+
+ - 0
+ - 93
+ - 313
+ - 118
+ - 0.98
+ - 0.43
+ - 488
+ - 502
+ - 45
+ - 286
+ - 124
+ - 662
+ - 32
+ - 164
+ - 115
+
+ 7.3
+ 7.3
+
+
+ 6
+ 2
+
+
+ 1586000
+ 1482000
+ 1352000
+ 1248000
+ 1144000
+ 1014000
+ 902000
+ 839000
+ 757000
+ 676000
+ 546000
+ 449000
+
+
+ 50
+ 43
+ 34
+ 28
+ 24
+ 18
+ 15
+ 13
+ 11
+ 10
+ 7
+ 6
+
+
+ 1768000
+ 1664000
+ 1560000
+ 1352000
+ 1144000
+ 936000
+
+
+ 162
+ 142
+ 120
+ 87
+ 61
+ 41
+
+ - 3.79
+ - 23
+ - 4000
+ - 4000
+ - 1
+ - 65
+ - 265
+
+ 0
+
+ - 3600
+
+ .0002
+ .002
+ .02
+ .2
+ 2
+
+
diff --git a/a40/setup.sh b/a40/setup.sh
new file mode 100755
index 0000000..9d1206c
--- /dev/null
+++ b/a40/setup.sh
@@ -0,0 +1,22 @@
+VENDOR=$(cat device/samsung/universal7885-common/vendor_name)
+if [ ! $VENDOR ]; then
+VENDOR=aosp;
+fi
+# Generate AndroidProducts.mk
+echo "# Auto-Generated by device/samsung/a40/setup.sh" > device/samsung/a40/AndroidProducts.mk
+echo "PRODUCT_MAKEFILES += \$(LOCAL_DIR)/"$VENDOR"_a40.mk" >> device/samsung/a40/AndroidProducts.mk
+
+# Generate _a40.mk
+echo "# Auto-Generated by device/samsung/a40/setup.sh" > device/samsung/a40/"$VENDOR"_a40.mk
+echo "\$(call inherit-product, device/samsung/a40/full_a40.mk)" >> device/samsung/a40/"$VENDOR"_a40.mk
+if test -f vendor/"$VENDOR"/config/common_full_phone.mk && echo "common_full_phone"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common_full_phone.mk)" >> device/samsung/a40/"$VENDOR"_a40.mk
+elif test -f vendor/"$VENDOR"/config/common.mk && echo "common"; then
+ echo "\$(call inherit-product, vendor/"$VENDOR"/config/common.mk)" >> device/samsung/a40/"$VENDOR"_a40.mk
+fi
+echo "PRODUCT_NAME := "$VENDOR"_a40" >> device/samsung/a40/"$VENDOR"_a40.mk
+echo "" >> device/samsung/a40/"$VENDOR"_a40.mk
+echo "# Additional Props" >> device/samsung/a40/"$VENDOR"_a40.mk
+echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a40/"$VENDOR"_a40.mk
+echo "TARGET_BOOT_ANIMATION_RES := 720" >> device/samsung/a40/"$VENDOR"_a40.mk
+
diff --git a/universal7885-common/bluetooth/bdroid_buildcfg.h b/universal7885-common/bluetooth/bdroid_buildcfg.h
index 8577c44..64e2c2d 100644
--- a/universal7885-common/bluetooth/bdroid_buildcfg.h
+++ b/universal7885-common/bluetooth/bdroid_buildcfg.h
@@ -10,14 +10,18 @@ static inline const char* BtmGetDefaultName()
{
char product_device[PROPERTY_VALUE_MAX];
property_get("ro.product.device", product_device, "");
-
-
+
+ if (strstr(product_device, "a10"))
+ return "Galaxy A10";
if (strstr(product_device, "a20e"))
return "Galaxy A20e";
if (strstr(product_device, "a20"))
return "Galaxy A20";
-
- // Fallback to Moto SDM Generic
+ if (strstr(product_device, "a30"))
+ return "Galaxy A30";
+ if (strstr(product_device, "a40"))
+ return "Galaxy A40";
+ // Fallback to Generic
return "Samsung Galaxy";
}
diff --git a/universal7885-common/derp.dependecies b/universal7885-common/derp.dependecies
deleted file mode 100644
index e69de29..0000000
diff --git a/universal7885-common/sepolicy/vendor/file_contexts b/universal7885-common/sepolicy/vendor/file_contexts
index 72d1118..2874c5b 100644
--- a/universal7885-common/sepolicy/vendor/file_contexts
+++ b/universal7885-common/sepolicy/vendor/file_contexts
@@ -147,7 +147,8 @@
/dev/umts_ipc0 u:object_r:radio_device:s0
/dev/fimg2d u:object_r:video_device:s0
/dev/sec-nfc u:object_r:nfc_device:s0
-/dev/esfp0 u:object_r:goodix_device:s0
+/dev/esfp0 u:object_r:goodix_device:s0
+/dev/goodix_fp u:object_r:goodix_device:s0
/dev/gnss_ipc u:object_r:gps_device:s0
/dev/scsc_h4_0 u:object_r:bt_device:s0
/dev/cpuset(/.*)? u:object_r:cgroup:s0
diff --git a/universal7885-common/sepolicy/vendor/genfs_contexts b/universal7885-common/sepolicy/vendor/genfs_contexts
index 732ab15..bff24d0 100644
--- a/universal7885-common/sepolicy/vendor/genfs_contexts
+++ b/universal7885-common/sepolicy/vendor/genfs_contexts
@@ -103,6 +103,9 @@ genfscon sysfs /devices/virtual/input/input10/enable
genfscon sysfs /devices/virtual/input/input2/poll_delay u:object_r:sysfs_input_writable:s0
genfscon sysfs /devices/virtual/input/input3/poll_delay u:object_r:sysfs_input_writable:s0
genfscon sysfs /devices/virtual/input/input4/poll_delay u:object_r:sysfs_input_writable:s0
+genfscon sysfs /devices/virtual/input/input5/poll_delay u:object_r:sysfs_input_writable:s0
+genfscon sysfs /devices/virtual/input/input6/poll_delay u:object_r:sysfs_input_writable:s0
+genfscon sysfs /devices/virtual/input/input7/poll_delay u:object_r:sysfs_input_writable:s0
genfscon sysfs /devices/virtual/input/input8/poll_delay u:object_r:sysfs_input_writable:s0
genfscon sysfs /devices/virtual/input/input9/poll_delay u:object_r:sysfs_input_writable:s0
# A20e GPIO
@@ -115,12 +118,20 @@ genfscon sysfs /devices/platform/10000.mif_pdata/sim/ds_detect
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-5/5-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
# A20 RTC
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-6/6-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
+# A40 RTC
+genfscon sysfs /devices/platform/11ce0000.speedy/i2c-7/7-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
+genfscon sysfs /devices/platform/11ce0000.speedy/i2c-6/6-0000/s2mpu08-rtc/rtc u:object_r:sysfs_rtc:s0
+
# A20e Display
genfscon sysfs /devices/platform/13870000.i2c/i2c-11/11-0048/input/ u:object_r:sysfs_touchscreen_writable:s0
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-5/5-0003/input/input11 u:object_r:sysfs_touchscreen_writable:s0
# A20 Display
genfscon sysfs /devices/platform/13870000.i2c/i2c-11/11-0020/input/ u:object_r:sysfs_touchscreen_writable:s0
genfscon sysfs /devices/platform/11ce0000.speedy/i2c-6/6-0003/input/input12 u:object_r:sysfs_touchscreen_writable:s0
+# A40 Display
+genfscon sysfs /devices/platform/11ce0000.speedy/i2c-7/7-0003/input/input11 u:object_r:sysfs_touchscreen_writable:s0
+genfscon sysfs /devices/platform/13930000.hsi2c/i2c-5/5-0048/input/ u:object_r:sysfs_touchscreen_writable:s0
+
genfscon sysfs /devices/platform/14870000.dsim/backlight/panel u:object_r:sysfs_graphics:s0
genfscon sysfs /devices/platform/14a50000.abox/service u:object_r:sysfs_abox_writable:s0
genfscon sysfs /devices/platform/14860000.decon_f u:object_r:sysfs_decon:s0
@@ -144,6 +155,11 @@ genfscon sysfs /devices/platform/battery/power_supply/wireless/type
genfscon sysfs /devices/platform/battery/power_supply/ps/type u:object_r:sysfs_battery_writable:s0
genfscon sysfs /devices/platform/battery/power_supply/ps/status u:object_r:sysfs_battery_writable:s0
+# S2MU005 CHARGER (A10)
+genfscon sysfs /devices/platform/13840000.i2c/i2c-9/9-003d/s2mu004-charger/power_supply/s2mu004-charger u:object_r:sysfs_charger:s0
+genfscon sysfs /devices/platform/13840000.i2c/i2c-9/9-003d/s2mu004-muic/power_supply/muic-manager u:object_r:sysfs_charger:s0
+genfscon sysfs /devices/platform/13840000.i2c/i2c-9/9-003d/s2mu004-charger/power_supply/otg u:object_r:sysfs_charger:s0
+
# S2MU106 CHARGER (A20e)
genfscon sysfs /devices/platform/13840000.i2c/i2c-8/8-003d/s2mu106-powermeter/power_supply/s2mu106_pmeter u:object_r:sysfs_charger:s0
genfscon sysfs /devices/platform/13840000.i2c/i2c-8/8-003d/s2mu106-muic/power_supply/muic-manager u:object_r:sysfs_charger:s0
diff --git a/universal7885-common/universal7885-common.mk b/universal7885-common/universal7885-common.mk
index 5ae2b0e..d6477a7 100644
--- a/universal7885-common/universal7885-common.mk
+++ b/universal7885-common/universal7885-common.mk
@@ -7,9 +7,6 @@ $(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
# Build Fingerprints
$(call inherit-product, $(LOCAL_PATH)/fingerprint.mk)
-# Derp
-DERP_BUILDTYPE := Official
-
# Allow Copying of apks.
PRODUCT_BROKEN_VERIFY_USES_LIBRARIES := true
@@ -63,8 +60,7 @@ TARGET_SCREEN_WIDTH := 720
# Camera
PRODUCT_PACKAGES += \
- android.hardware.camera.provider@2.5-service \
- CameraLightSensor
+ android.hardware.camera.provider@2.5-service
# Component overrides
PRODUCT_COPY_FILES += \