Compare commits

...

20 Commits

Author SHA1 Message Date
Simon1511 3f8aa68cad a52q: A525FXXS5DWD1 1 year ago
Simon1511 3794962b72 a52q: Fully redo extract-files and setup-makesfiles scripts 2 years ago
Simon1511 3f091a51d6 a52q: A525FXXU4CVJB 2 years ago
Ruchit Marathe b8f9d38980 a52q: overlay: set power button location for lock animation 2 years ago
LuK1337 d2c7ae8b61 a52q: Set a default Settings.Global.DEVICE_NAME 2 years ago
Jens Lody 804b8b67c1 Shishufy the build. 2 years ago
Ruchit Marathe b1a3119f6d a52q: Set bluetooth device name 2 years ago
Ruchit Marathe 2c3c9b719a a52q: dependencies: Update for thirteen 2 years ago
Ruchit af559e411d a52q: Build PE recovery 2 years ago
Henrique Silva 80dd40335f
a52q: Format aosp.dependencies 2 years ago
Ruchit 3b640d267e a52q: Fix aosp.dependencies 2 years ago
Ruchit Marathe 43aaf868b5 a52q: drop android_ from trees 2 years ago
Ruchit d78dd580d0 a52q: Use twelve common branch 2 years ago
Simon1511 69edc4a363 a52q: Move camera.qcom out of common tree 2 years ago
Simon1511 1a389a7509 a52q: Move fingerprint into tree 2 years ago
Ruchit Marathe 2486a41856 a52q: A525FXXU4BVG1 2 years ago
Ruchit 62c0fea638 a52q: Define TARGET_BOOT_ANIMATION_RES to 1080p 2 years ago
Ruchit Marathe 0e1bec3273 a52q: Fix adaptive brightness not being stable 2 years ago
Ruchit Marathe 71a161fa41
Add Device information 2 years ago
Ryzen5950XT 648ddc399a PE bringup 3 years ago
  1. 8
      AndroidProducts.mk
  2. 23
      README.md
  3. 14
      aosp.dependencies
  4. 55
      aosp_a52q.mk
  5. 14
      bootleg_a52q.mk
  6. 3
      device.mk
  7. 64
      extract-files.sh
  8. 6
      lineage.dependencies
  9. 2
      overlay/frameworks/base/core/res/res/values/config.xml
  10. 22
      overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
  11. 19
      overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
  12. 4
      proprietary-files.txt
  13. 45
      setup-makefiles.sh
  14. 2
      vendor.prop

@ -14,9 +14,9 @@
# limitations under the License. # limitations under the License.
PRODUCT_MAKEFILES := \ PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/lineage_a52q.mk $(LOCAL_DIR)/bootleg_a52q.mk
COMMON_LUNCH_CHOICES := \ COMMON_LUNCH_CHOICES := \
lineage_a52q-userdebug \ bootleg_a52q-userdebug \
lineage_a52q-user \ bootleg_a52q-user \
lineage_a52q-eng bootleg_a52q-eng

@ -0,0 +1,23 @@
The Samsung Galaxy A52 4G is a mid range phone from Samsung released in March 2021
Device specifications
Device | Samsung Galaxy A52 4G
:-------------: |:-------------:
SoC | Qualcomm SM7125 Snapdragon 720G
CPU | Octa-core (2x2.3 GHz Kryo 465 Gold & 6x1.8 GHz Kryo 465 Silver)
GPU | Adreno 618
Memory | 4GB, 6GB, 8GB
Shipped Android version | Android 11
Storage | 128GB, 256GB
MicroSD | microSDXC (uses shared SIM slot)
Battery | Li-Po 4500 mAh, non-removable
Dimensions | 159.9 x 75.1 x 8.4 mm
Display | 1080 x 2400 pixels, 20:9 ratio (~407 ppi density)
Rear camera 1 | 64 MP, f/1.8, 26mm (wide), 1/1.7", 0.8µm, PDAF, OIS
Rear camera 2 | 12 MP, f/2.2, 123˚ (ultrawide), 1.12µm
Rear camera 3 | 5 MP, f/2.4, (macro)
Front camera | 32 MP, f/2.2, 26mm (wide), 1/2.8", 0.8µm
Image
![alt text](https://fdn2.gsmarena.com/vv/bigpic/samsung-galaxy-a52-4g.jpg "Samsung Galaxy A52 4G")

@ -0,0 +1,14 @@
[
{
"repository":"vendor_samsung_a52q",
"target_path":"vendor/samsung/a52q",
"branch":"thirteen",
"remote":"pixel-devices-blobs"
},
{
"repository":"device_samsung_sm7125-common",
"target_path":"device/samsung/sm7125-common",
"branch":"thirteen",
"remote":"pixel-devices"
}
]

@ -0,0 +1,55 @@
#
# Copyright (C) 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.
# 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.
#
# Inherit device configuration
$(call inherit-product, device/samsung/a52q/device.mk)
# Inherit from the 64 bit configuration
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
# Inherit from the common Open Source product configuration
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
# Inherit some common Lineage stuff
$(call inherit-product, vendor/aosp/config/common_full_phone.mk)
# Enable updating of APEXes
$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
# Boot animation
TARGET_SCREEN_HEIGHT := 2400
TARGET_SCREEN_WIDTH := 1080
TARGET_BOOT_ANIMATION_RES := 1080
## Device identifier. This must come after all inclusions
PRODUCT_NAME := aosp_a52q
PRODUCT_DEVICE := a52q
PRODUCT_BRAND := samsung
PRODUCT_MODEL := SM-A525F
PRODUCT_MANUFACTURER := samsung
PRODUCT_GMS_CLIENTID_BASE := android-samsung
# Recovery
TARGET_USES_AOSP_RECOVERY := true
PRODUCT_SHIPPING_API_LEVEL := 30
# Vendor fingerprint
BUILD_FINGERPRINT := "samsung/a52qnsxx/a52q:11/RP1A.200720.012/A525FXXS5DWD1:user/release-keys"
PRIVATE_BUILD_DESC := "a52qnsxx-user 11 RP1A.200720.012 A525FXXS5DWD1 release-keys"
# Security patch
VENDOR_SECURITY_PATCH := 2023-04-01

@ -24,23 +24,29 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
# Inherit some common Lineage stuff # Inherit some common Lineage stuff
$(call inherit-product, vendor/lineage/config/common_full_phone.mk) $(call inherit-product, vendor/bootleggers/config/common_full_phone.mk)
# Enable updating of APEXes # Enable updating of APEXes
$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
# Boot animation # Boot animation
TARGET_BOOTANIMATION_PRELOAD := true
TARGET_BOOTANIMATION_TEXTURE_CACHE := true
TARGET_SCREEN_HEIGHT := 2400 TARGET_SCREEN_HEIGHT := 2400
TARGET_SCREEN_WIDTH := 1080 TARGET_SCREEN_WIDTH := 1080
TARGET_BOOT_ANIMATION_RES := 1080
## Device identifier. This must come after all inclusions ## Device identifier. This must come after all inclusions
PRODUCT_NAME := lineage_a52q PRODUCT_NAME := bootleg_a52q
PRODUCT_DEVICE := a52q PRODUCT_DEVICE := a52q
PRODUCT_BRAND := samsung PRODUCT_BRAND := samsung
PRODUCT_MODEL := SM-A525F PRODUCT_MODEL := SM-A525F
PRODUCT_MANUFACTURER := samsung PRODUCT_MANUFACTURER := samsung
PRODUCT_GMS_CLIENTID_BASE := android-samsung PRODUCT_GMS_CLIENTID_BASE := android-samsung
# Recovery
TARGET_USES_AOSP_RECOVERY := true
PRODUCT_SHIPPING_API_LEVEL := 30 PRODUCT_SHIPPING_API_LEVEL := 30
# Fingerprint
BUILD_FINGERPRINT := "samsung/a52qnsxx/qssi:12/SP1A.210812.016/A525FXXU4BVG1:user/release-keys"
PRIVATE_BUILD_DESC := "a52qnsxx-user 12 SP1A.210812.016 A525FXXU4BVG1 release-keys"

@ -31,3 +31,6 @@ PRODUCT_PACKAGES += \
# Audio # Audio
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml $(LOCAL_PATH)/configs/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
# Prop files
TARGET_ODM_PROP += $(COMMON_PATH)/vendor.prop

@ -1,63 +1,21 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2018-2020 The LineageOS Project # Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2023 The LineageOS Project
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
set -e # If we're being sourced by the common script that we called,
# stop right here. No need to go down the rabbit hole.
DEVICE_COMMON=a52q if [ "${BASH_SOURCE[0]}" != "${0}" ]; then
VENDOR=samsung return
# Load extractutils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
ANDROID_ROOT="${MY_DIR}/../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi
source "${HELPER}"
# Default to sanitizing the vendor folder before extraction
CLEAN_VENDOR=true
KANG=
SECTION=
while [ "${#}" -gt 0 ]; do
case "${1}" in
-n | --no-cleanup )
CLEAN_VENDOR=false
;;
-k | --kang )
KANG="--kang"
;;
-s | --section )
SECTION="${2}"; shift
CLEAN_VENDOR=false
;;
* )
SRC="${1}"
;;
esac
shift
done
if [ -z "${SRC}" ]; then
SRC="adb"
fi fi
# Initialize the helper set -e
setup_vendor "${DEVICE_COMMON}" "${VENDOR}" "${ANDROID_ROOT}" true "${CLEAN_VENDOR}"
extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
# Fix proprietary blobs export DEVICE=a52q
BLOB_ROOT="$ANDROID_ROOT"/vendor/"$VENDOR"/"$DEVICE_COMMON"/proprietary export DEVICE_COMMON=sm7125-common
export VENDOR=samsung
"${MY_DIR}/setup-makefiles.sh" "./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@"

@ -1,6 +0,0 @@
[
{
"repository": "android_device_samsung_sm7125-common",
"target_path": "device/samsung/sm7125-common"
}
]

@ -39,7 +39,7 @@
@see https://www.w3.org/TR/SVG/paths.html#PathData @see https://www.w3.org/TR/SVG/paths.html#PathData
--> -->
<string translatable="false" name="config_mainBuiltInDisplayCutout">M 0,0 M 0,12.25101276465640 a 10.60613009248640,10.60613009248640 0 1,0 0,21.21226018497290 a 10.60613009248640,10.60613009248640 0 1,0 0,-21.21226018497290 Z @dp</string> <string name="config_mainBuiltInDisplayCutout">M 0,0 M 0,12.25101276465640 a 10.60613009248640,10.60613009248640 0 1,0 0,21.21226018497290 a 10.60613009248640,10.60613009248640 0 1,0 0,-21.21226018497290 Z @dp</string>
<!-- The properties of a UDFPS sensor in pixels, in the order listed below: --> <!-- The properties of a UDFPS sensor in pixels, in the order listed below: -->
<integer-array name="config_udfps_sensor_props"> <integer-array name="config_udfps_sensor_props">

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/**
* Copyright (c) 2016, 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>
<!-- Default for Settings.Global.DEVICE_NAME $1=MODEL-->
<string name="def_device_name_simple">Galaxy A52 4G</string>
</resources>

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2020 Paranoid Android
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>
<!-- Location on the screen of the center of the physical power button. This is a reasonable
default that should be overridden by device-specific overlays. -->
<dimen name="physical_power_button_center_screen_location_y">980px</dimen>
</resources>

@ -1,4 +1,4 @@
# All blobs are from A525FXXS4BVA2, unless pinned # All blobs are from A525FXXS5DWD1 (T), unless pinned
# ACDB # ACDB
vendor/etc/audconf/ODM/Global_cal.acdb vendor/etc/audconf/ODM/Global_cal.acdb
@ -55,6 +55,8 @@ vendor/lib/camera/ois_mcu_stm32g_fw.bin
vendor/lib/camera/uw_dual_calibration.bin vendor/lib/camera/uw_dual_calibration.bin
vendor/lib/hw/com.samsung.chi.override.so vendor/lib/hw/com.samsung.chi.override.so
vendor/lib64/hw/com.samsung.chi.override.so vendor/lib64/hw/com.samsung.chi.override.so
vendor/lib/hw/camera.qcom.so
vendor/lib64/hw/camera.qcom.so
vendor/lib/libsec2qc_conversion.so vendor/lib/libsec2qc_conversion.so
vendor/lib64/libsec2qc_conversion.so vendor/lib64/libsec2qc_conversion.so
vendor/lib/libvdis_interface.so vendor/lib/libvdis_interface.so

@ -1,44 +1,21 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2017-2021 The LineageOS Project # Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2023 The LineageOS Project
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
set -e # If we're being sourced by the common script that we called,
# stop right here. No need to go down the rabbit hole.
DEVICE_COMMON=a52q if [ "${BASH_SOURCE[0]}" != "${0}" ]; then
VENDOR=samsung return
# Load extractutils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
ANDROID_ROOT="${MY_DIR}/../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi fi
source "${HELPER}"
# Initialize the helper set -e
setup_vendor "${DEVICE_COMMON}" "${VENDOR}" "${ANDROID_ROOT}" true
# Warning headers and guards
write_headers "a52q"
write_makefiles "${MY_DIR}/proprietary-files.txt" true
###################################################################################################
# CUSTOM PART START #
###################################################################################################
OUTDIR=vendor/$VENDOR/$DEVICE_COMMON export DEVICE=a52q
export DEVICE_COMMON=sm7125-common
export VENDOR=samsung
################################################################################################### "./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@"
# CUSTOM PART END #
###################################################################################################
# Done
write_footers

@ -0,0 +1,2 @@
# Bluetooth
bluetooth.device.default_name=Galaxy A52 4G
Loading…
Cancel
Save