universal7885: Add other 7885 devices

* A10, A30, A40

Change-Id: I92829c4d3b11e2759f08ef04fe4d4d60ff352a0b
Signed-off-by: roynatech2544 <whiteshell2544@naver.com>
This commit is contained in:
roynatech2544 2021-12-01 22:34:21 +09:00
commit eaab77ceff
No known key found for this signature in database
GPG key ID: 9675C32163D88D30
30 changed files with 680 additions and 34 deletions

17
a30/BoardConfig.mk Normal file
View file

@ -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

8
a30/device.mk Normal file
View file

@ -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)

18
a30/full_a30.mk Normal file
View file

@ -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

View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/**
* Copyright (c) 2009, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. Do not translate. -->
<resources>
<!-- The bounding path of the cutout region of the main built-in display.
Must either be empty if there is no cutout region, or a string that is parsable by
{@link android.util.PathParser}.
The path is assumed to be specified in display coordinates with pixel units and in
the display's native orientation, with the origin of the coordinate system at the
center top of the display.
To facilitate writing device-independent emulation overlays, the marker `@dp` can be
appended after the path string to interpret coordinates in dp instead of px units.
Note that a physical cutout should be configured in pixels for the best results.
Example for a 10px x 10px square top-center cutout:
<string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z</string>
Example for a 10dp x 10dp square top-center cutout:
<string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z @dp</string>
@see https://www.w3.org/TR/SVG/paths.html#PathData
-->
<string translatable="false" name="config_mainBuiltInDisplayCutout">M 0,0 H -67.42857142857143 V 30.85714285714286 H 67.42857142857143 V 0 H 0 Z @dp</string>
<string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation">@*android:string/config_mainBuiltInDisplayCutout</string>
<!-- If supported, are dreams enabled? (by default) -->
<bool name="config_dreamsEnabledByDefault">false</bool>
<bool name="config_dozeAlwaysOnDisplayAvailable">true</bool>
<bool name="config_displayBlanksAfterDoze">false</bool>
<bool name="config_dozePulsePickup">false</bool>
<bool name="config_supportDoubleTapWake">true</bool>
<bool name="config_enableBurnInProtection">true</bool>
<bool name="config_dozeAfterScreenOffByDefault">true</bool>
<bool name="config_allowAutoBrightnessWhileDozing">true</bool>
<!-- List of biometric sensors on the device, in decreasing strength. Consumed by AuthService
when registering authenticators with BiometricService. Format must be ID:Modality:Strength,
where: IDs are unique per device, Modality as defined in BiometricAuthenticator.java,
and Strength as defined in Authenticators.java -->
<string-array name="config_biometric_sensors" translatable="false" >
<item>0:2:15</item> <!-- ID0:Fingerprint:Strong -->
</string-array>
<!-- For performance and storage reasons, limit the number of fingerprints per user -->
<integer name="config_fingerprintMaxTemplatesPerUser">4</integer>
<!-- Specify if the fingerprint hardware support gestures-->
<bool name="config_fingerprintSupportsGestures">true</bool>
<!-- True if the device supports system navigation keys. -->
<bool name="config_supportSystemNavigationKeys">true</bool>
<!-- Limit for the number of face templates per user -->
<integer name="config_faceMaxTemplatesPerUser">2</integer>
</resources>

View file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Height of the status bar in landscape. The height should be
Max((status bar content height + waterfall top size), top cutout size) -->
<dimen name="status_bar_height_landscape">24.0dip</dimen>
<!-- Height of the status bar in portrait. The height should be
Max((status bar content height + waterfall top size), top cutout size) -->
<dimen name="status_bar_height_portrait">31.0dip</dimen>
<!-- Default radius of the software rounded corners. -->
<dimen name="rounded_corner_radius">40px</dimen>
</resources>

View file

@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
<item name="none">0</item>
<item name="screen.on">93</item>
<item name="screen.full">313</item>
<item name="bluetooth.active">118</item>
<item name="bluetooth.on">0.98</item>
<item name="wifi.on">0.43</item>
<item name="wifi.active">488</item>
<item name="wifi.scan">502</item>
<item name="dsp.audio">45</item>
<item name="dsp.video">286</item>
<item name="camera.flashlight">124</item>
<item name="camera.avg">662</item>
<item name="gps.on">32</item>
<item name="radio.active">164</item>
<item name="radio.scanning">115</item>
<array name="radio.on">
<value>7.3</value>
<value>7.3</value>
</array>
<array name="cpu.clusters.cores">
<value>6</value>
<value>2</value>
</array>
<array name="cpu.speeds.cluster0">
<value>1586000</value>
<value>1482000</value>
<value>1352000</value>
<value>1248000</value>
<value>1144000</value>
<value>1014000</value>
<value>902000</value>
<value>839000</value>
<value>757000</value>
<value>676000</value>
<value>546000</value>
<value>449000</value>
</array>
<array name="cpu.active.cluster0">
<value>50</value>
<value>43</value>
<value>34</value>
<value>28</value>
<value>24</value>
<value>18</value>
<value>15</value>
<value>13</value>
<value>11</value>
<value>10</value>
<value>7</value>
<value>6</value>
</array>
<array name="cpu.speeds.cluster1">
<value>1768000</value>
<value>1664000</value>
<value>1560000</value>
<value>1352000</value>
<value>1144000</value>
<value>936000</value>
</array>
<array name="cpu.active.cluster1">
<value>162</value>
<value>142</value>
<value>120</value>
<value>87</value>
<value>61</value>
<value>41</value>
</array>
<item name="cpu.idle">3.79</item>
<item name="cpu.awake">23</item>
<item name="battery.capacity">4000</item>
<item name="battery.typical.capacity">4000</item>
<item name="wifi.controller.idle">1</item>
<item name="wifi.controller.rx">65</item>
<item name="wifi.controller.tx">265</item>
<array name="wifi.controller.tx_levels">
<value>0</value>
</array>
<item name="wifi.controller.voltage">3600</item>
<array name="wifi.batchedscan">
<value>.0002</value>
<value>.002</value>
<value>.02</value>
<value>.2</value>
<value>2</value>
</array>
</device>

22
a30/setup.sh Executable file
View file

@ -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 <vendor>_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