crackling: Shift to new device fragment model

* Use make fragments for various subsystems
* Move dexopt flags to device
* Move SSR script to common

Change-Id: I2a002f24c308481664b516a761b7978292c3efca
cm-14.0
Ethan Chen 10 years ago
parent 084e3d6930
commit 5ff38a77c5

@ -1,5 +1,5 @@
#
# Copyright (C) 2015 The CyanogenMod Project
# Copyright (C) 2016 The CyanogenMod Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -13,63 +13,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-include device/cyanogen/msm8916-common/BoardConfigCommon.mk
include device/cyanogen/msm8916-common/BoardConfigCommon.mk
DEVICE_PATH := device/wileyfox/crackling
include device/wileyfox/crackling/board/*.mk
TARGET_BOARD_INFO_FILE := $(DEVICE_PATH)/board-info.txt
TARGET_BOARD_INFO_FILE := device/wileyfox/crackling/board-info.txt
TARGET_SPECIFIC_HEADER_PATH := $(DEVICE_PATH)/include
TARGET_CPU_CORTEX_A53 := true
# Kernel
BOARD_KERNEL_TAGS_OFFSET := 0x00000100
BOARD_RAMDISK_OFFSET := 0x01000000
TARGET_KERNEL_CONFIG := cyanogenmod_crackling-64_defconfig
WITH_DEXPREOPT_BOOT_IMG_ONLY ?= true
# Bluetooth
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth
# Camera
BOARD_CAMERA_SENSORS := s5k5e2_olq5f19 s5k3m2_olqba20
TARGET_USE_VENDOR_CAMERA_EXT := true
USE_DEVICE_SPECIFIC_CAMERA := true
# Crypto
TARGET_HW_DISK_ENCRYPTION := true
# GPS
USE_DEVICE_SPECIFIC_GPS := true
TARGET_NO_RPC := true
# Lights
TARGET_PROVIDES_LIBLIGHT := true
# Partitions
BOARD_FLASH_BLOCK_SIZE := 131072
BOARD_BOOTIMAGE_PARTITION_SIZE := 33553920
BOARD_CACHEIMAGE_PARTITION_SIZE := 157285888
BOARD_PERSISTIMAGE_PARTITION_SIZE := 33553920
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 33553920
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612224
BOARD_USERDATAIMAGE_PARTITION_SIZE := 13295385600
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
# Recovery
TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.qcom
# Wifi - EAP-SIM
CONFIG_EAP_PROXY := qmi
CONFIG_EAP_PROXY_DUAL_SIM := true
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
# SELinux
BOARD_SEPOLICY_DIRS += \
$(DEVICE_PATH)/sepolicy
# inherit from the proprietary version
# inherit from proprietary files
-include vendor/wileyfox/crackling/BoardConfigVendor.mk

@ -0,0 +1,2 @@
# Bluetooth
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/wileyfox/crackling/bluetooth

@ -0,0 +1,8 @@
ifeq ($(HOST_OS),linux)
ifeq ($(TARGET_BUILD_VARIANT),user)
ifeq ($(WITH_DEXPREOPT),)
WITH_DEXPREOPT := true
WITH_DEXPREOPT_BOOT_IMG_ONLY ?= true
endif
endif
endif

@ -0,0 +1,9 @@
# Partitions
BOARD_FLASH_BLOCK_SIZE := 131072
BOARD_BOOTIMAGE_PARTITION_SIZE := 33553920
BOARD_CACHEIMAGE_PARTITION_SIZE := 157285888
BOARD_PERSISTIMAGE_PARTITION_SIZE := 33553920
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 33553920
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612224
BOARD_USERDATAIMAGE_PARTITION_SIZE := 13295385600
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4

@ -0,0 +1,4 @@
# Kernel
BOARD_KERNEL_TAGS_OFFSET := 0x00000100
BOARD_RAMDISK_OFFSET := 0x01000000
TARGET_KERNEL_CONFIG := cyanogenmod_crackling-64_defconfig

@ -0,0 +1,2 @@
# Lights
TARGET_PROVIDES_LIBLIGHT := true

@ -0,0 +1,4 @@
# Camera
BOARD_CAMERA_SENSORS := s5k5e2_olq5f19 s5k3m2_olqba20
TARGET_USE_VENDOR_CAMERA_EXT := true
USE_DEVICE_SPECIFIC_CAMERA := true

@ -0,0 +1,3 @@
# GPS
TARGET_NO_RPC := true
USE_DEVICE_SPECIFIC_GPS := true

@ -0,0 +1,3 @@
# Wifi
CONFIG_EAP_PROXY := qmi
CONFIG_EAP_PROXY_DUAL_SIM := true

@ -0,0 +1,2 @@
# Recovery
TARGET_RECOVERY_FSTAB := device/wileyfox/crackling/rootdir/etc/fstab.qcom

@ -0,0 +1,3 @@
# SELinux
BOARD_SEPOLICY_DIRS += \
device/wileyfox/crackling/sepolicy

@ -1,5 +1,5 @@
#
# Copyright (C) 2015 The CyanogenMod Project
# Copyright (C) 2016 The CyanogenMod Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -14,138 +14,13 @@
# limitations under the License.
#
$(call inherit-product-if-exists, vendor/wileyfox/crackling/crackling-vendor.mk)
# Inherit from msm8916-common
$(call inherit-product, device/cyanogen/msm8916-common/msm8916.mk)
# Overlay
DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.sensor.compass.xml:system/etc/permissions/android.hardware.sensor.compass.xml \
frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \
frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:system/etc/permissions/android.hardware.sensor.accelerometer.xml \
frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \
frameworks/native/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml
# Screen density
PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xhdpi
# Boot animation
TARGET_SCREEN_HEIGHT := 1280
TARGET_SCREEN_WIDTH := 720
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
$(call inherit-product, frameworks/native/build/phone-xxhdpi-2048-hwui-memory.mk)
# Audio configuration
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio/acdb/QRD_Bluetooth_cal.acdb:system/etc/acdbdata/QRD/QRD_Bluetooth_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_General_cal.acdb:system/etc/acdbdata/QRD/QRD_General_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Global_cal.acdb:system/etc/acdbdata/QRD/QRD_Global_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Handset_cal.acdb:system/etc/acdbdata/QRD/QRD_Handset_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Hdmi_cal.acdb:system/etc/acdbdata/QRD/QRD_Hdmi_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Headset_cal.acdb:system/etc/acdbdata/QRD/QRD_Headset_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Speaker_cal.acdb:system/etc/acdbdata/QRD/QRD_Speaker_cal.acdb \
$(LOCAL_PATH)/audio/audio_platform_info.xml:system/etc/audio_platform_info.xml \
$(LOCAL_PATH)/audio/audio_policy.conf:system/etc/audio_policy.conf \
$(LOCAL_PATH)/audio/mixer_paths.xml:system/etc/mixer_paths_qrd_skui.xml
# Camera
PRODUCT_PACKAGES += \
camera.msm8916 \
libmm-qcamera \
Snap
# Charger
ADDITIONAL_DEFAULT_PROPERTIES += \
ro.usb.id.midi=90BA \
ro.usb.id.midi_adb=90BB \
ro.usb.id.mtp=2281 \
ro.usb.id.mtp_adb=2282 \
ro.usb.id.ptp=2284 \
ro.usb.id.ptp_adb=2283 \
ro.usb.id.ums=2286 \
ro.usb.id.ums_adb=2285 \
ro.usb.vid=2970
# Display
PRODUCT_PACKAGES += \
pp_calib_data_booyi_OTM1287_720p_video_mode_dsi_panel.xml
# Gello
PRODUCT_PACKAGES += \
Gello
# TP
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/display/synaptics_dsx_fw_update_boyi.bin:system/etc/firmware/synaptics_dsx_fw_update_boyi.bin
# GPS
PRODUCT_PACKAGES += \
gps.msm8916
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/gps/flp.conf:system/etc/flp.conf \
$(LOCAL_PATH)/gps/gps.conf:system/etc/gps.conf \
$(LOCAL_PATH)/gps/izat.conf:system/etc/izat.conf \
$(LOCAL_PATH)/gps/quipc.conf:system/etc/quipc.conf \
$(LOCAL_PATH)/gps/sap.conf:system/etc/sap.conf
# Include package config fragments
include $(LOCAL_PATH)/product/*.mk
# Keylayout
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/keylayout/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \
$(LOCAL_PATH)/keylayout/qpnp_pon.kl:system/usr/keylayout/qpnp_pon.kl
# Lights
PRODUCT_PACKAGES += \
lights.msm8916
# Media
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/media_profiles.xml:system/etc/media_profiles.xml \
$(LOCAL_PATH)/configs/media_codecs_performance.xml:system/etc/media_codecs_performance.xml
# Sensors
PRODUCT_PACKAGES += \
accelcal \
AccCalibration \
sensord \
sensors.msm8916
# Ramdisk
PRODUCT_PACKAGES += \
fstab.qcom \
init.target.rc
ifeq ($(TARGET_BUILD_VARIANT),user)
PRODUCT_PACKAGES += \
init.qcom.ssr.rc
endif
# Recovery
PRODUCT_EXTRA_RECOVERY_KEYS += \
$(LOCAL_PATH)/crackling-releasekey
# RIL
PRODUCT_PACKAGES += \
libxml2
ifeq ($(QCPATH),)
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/data/netmgr_config.xml:system/etc/data/netmgr_config.xml \
$(LOCAL_PATH)/configs/data/qmi_config.xml:system/etc/data/qmi_config.xml \
$(LOCAL_PATH)/configs/data/dsi_config.xml:system/etc/data/dsi_config.xml \
$(LOCAL_PATH)/configs/data/NsrmConfiguration.xml:system/etc/dpm/nsrm/NsrmConfiguration.xml \
$(LOCAL_PATH)/configs/data/dpm.conf:system/etc/dpm/dpm.conf
endif
# Wifi
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/wifi/WCNSS_qcom_cfg.ini:system/etc/wifi/WCNSS_qcom_cfg.ini \
$(LOCAL_PATH)/wifi/WCNSS_cfg.dat:system/etc/firmware/wlan/prima/WCNSS_cfg.dat \
$(LOCAL_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:system/etc/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin
# Inherit the rest from msm8916-common
$(call inherit-product, device/cyanogen/msm8916-common/msm8916.mk)
$(call inherit-product-if-exists, vendor/wileyfox/crackling/crackling-vendor.mk)

@ -0,0 +1,17 @@
# Boot animation
TARGET_SCREEN_HEIGHT := 1280
TARGET_SCREEN_WIDTH := 720
# Panel
PRODUCT_PACKAGES += \
pp_calib_data_booyi_OTM1287_720p_video_mode_dsi_panel.xml
# Screen density
PRODUCT_PROPERTY_OVERRIDES += \
ro.sf.lcd_density=320
PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xhdpi
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
$(call inherit-product, frameworks/native/build/phone-xxhdpi-2048-hwui-memory.mk)

@ -0,0 +1,3 @@
# Gello
PRODUCT_PACKAGES += \
Gello

@ -0,0 +1,4 @@
# Init scripts
PRODUCT_PACKAGES += \
fstab.qcom \
init.target.rc

@ -0,0 +1,4 @@
# Keylayout
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/keylayout/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \
$(LOCAL_PATH)/keylayout/qpnp_pon.kl:system/usr/keylayout/qpnp_pon.kl

@ -0,0 +1,3 @@
# Lights
PRODUCT_PACKAGES += \
lights.msm8916

@ -0,0 +1,4 @@
# Media
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/media_profiles.xml:system/etc/media_profiles.xml \
$(LOCAL_PATH)/configs/media_codecs_performance.xml:system/etc/media_codecs_performance.xml

@ -0,0 +1,3 @@
# Factory reset protection
PRODUCT_PROPERTY_OVERRIDES += \
ro.frp.pst=/dev/block/bootdevice/by-name/frp

@ -0,0 +1,23 @@
# Audio
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio/acdb/QRD_Bluetooth_cal.acdb:system/etc/acdbdata/QRD/QRD_Bluetooth_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_General_cal.acdb:system/etc/acdbdata/QRD/QRD_General_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Global_cal.acdb:system/etc/acdbdata/QRD/QRD_Global_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Handset_cal.acdb:system/etc/acdbdata/QRD/QRD_Handset_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Hdmi_cal.acdb:system/etc/acdbdata/QRD/QRD_Hdmi_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Headset_cal.acdb:system/etc/acdbdata/QRD/QRD_Headset_cal.acdb \
$(LOCAL_PATH)/audio/acdb/QRD_Speaker_cal.acdb:system/etc/acdbdata/QRD/QRD_Speaker_cal.acdb \
$(LOCAL_PATH)/audio/audio_platform_info.xml:system/etc/audio_platform_info.xml \
$(LOCAL_PATH)/audio/audio_policy.conf:system/etc/audio_policy.conf \
$(LOCAL_PATH)/audio/mixer_paths.xml:system/etc/mixer_paths_qrd_skui.xml
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.audio.low_latency.xml:system/etc/permissions/android.hardware.audio.low_latency.xml \
# Properties
PRODUCT_PROPERTY_OVERRIDES += \
ro.qc.sdk.audio.fluencetype=fluence \
persist.audio.fluence.voicecall=true \
persist.audio.fluence.voicerec=false \
persist.audio.fluence.speaker=false

@ -0,0 +1,15 @@
# Camera
PRODUCT_PACKAGES += \
camera.msm8916 \
libmm-qcamera \
Snap
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \
frameworks/native/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml
# Properties
PRODUCT_PROPERTY_OVERRIDES += \
persist.camera.cpp.duplication=false \
persist.camera.hal.debug.mask=0

@ -0,0 +1,14 @@
# GPS
PRODUCT_PACKAGES += \
gps.msm8916
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/gps/flp.conf:system/etc/flp.conf \
$(LOCAL_PATH)/gps/gps.conf:system/etc/gps.conf \
$(LOCAL_PATH)/gps/izat.conf:system/etc/izat.conf \
$(LOCAL_PATH)/gps/quipc.conf:system/etc/quipc.conf \
$(LOCAL_PATH)/gps/sap.conf:system/etc/sap.conf
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml

@ -0,0 +1,18 @@
# Properties
PRODUCT_PROPERTY_OVERRIDES += \
persist.radio.multisim.config=dsds \
persist.radio.custom_ecc=1 \
persist.radio.ecc_hard_1=998 \
persist.radio.ecc_hard_count=1 \
rild.libpath=/system/vendor/lib64/libril-qc-qmi-1.so \
ro.telephony.default_network=9,9
# RIL
ifeq ($(QCPATH),)
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/data/netmgr_config.xml:system/etc/data/netmgr_config.xml \
$(LOCAL_PATH)/configs/data/qmi_config.xml:system/etc/data/qmi_config.xml \
$(LOCAL_PATH)/configs/data/dsi_config.xml:system/etc/data/dsi_config.xml \
$(LOCAL_PATH)/configs/data/NsrmConfiguration.xml:system/etc/dpm/nsrm/NsrmConfiguration.xml \
$(LOCAL_PATH)/configs/data/dpm.conf:system/etc/dpm/dpm.conf
endif

@ -0,0 +1,5 @@
# Wifi
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/wifi/WCNSS_qcom_cfg.ini:system/etc/wifi/WCNSS_qcom_cfg.ini \
$(LOCAL_PATH)/wifi/WCNSS_cfg.dat:system/etc/firmware/wlan/prima/WCNSS_cfg.dat \
$(LOCAL_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:system/etc/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin

@ -0,0 +1,3 @@
# Recovery
PRODUCT_EXTRA_RECOVERY_KEYS += \
$(LOCAL_PATH)/crackling-releasekey

@ -0,0 +1,15 @@
# Sensors
PRODUCT_PACKAGES += \
accelcal \
AccCalibration \
sensord \
sensors.msm8916
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.sensor.compass.xml:system/etc/permissions/android.hardware.sensor.compass.xml \
frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \
frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:system/etc/permissions/android.hardware.sensor.accelerometer.xml \
frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \
frameworks/native/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml

@ -0,0 +1,3 @@
# Touchscreen
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/display/synaptics_dsx_fw_update_boyi.bin:system/etc/firmware/synaptics_dsx_fw_update_boyi.bin

@ -0,0 +1,11 @@
# USB ID
ADDITIONAL_DEFAULT_PROPERTIES += \
ro.usb.id.midi=90BA \
ro.usb.id.midi_adb=90BB \
ro.usb.id.mtp=2281 \
ro.usb.id.mtp_adb=2282 \
ro.usb.id.ptp=2284 \
ro.usb.id.ptp_adb=2283 \
ro.usb.id.ums=2286 \
ro.usb.id.ums_adb=2285 \
ro.usb.vid=2970

@ -10,14 +10,6 @@ LOCAL_SRC_FILES := etc/fstab.qcom
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.qcom.ssr.rc
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.qcom.ssr.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := init.target.rc
LOCAL_MODULE_TAGS := optional eng

@ -1,22 +0,0 @@
# Copyright (C) 2016 The CyanogenMod Project <http://www.cyanogenmod.org>
#
# 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.
on boot
# Subsystem Restart
#venus
write /sys/bus/msm_subsys/devices/subsys0/restart_level "related"
#wcnss
write /sys/bus/msm_subsys/devices/subsys1/restart_level "related"
#modem
write /sys/bus/msm_subsys/devices/subsys2/restart_level "related"

@ -25,8 +25,6 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
import init.qcom.ssr.rc
on early-init
#set non-stand-charger can used
write /sys/module/phy_msm_usb/parameters/floated_charger_enable Y

@ -1,26 +1,2 @@
# Audio
ro.qc.sdk.audio.fluencetype=fluence
persist.audio.fluence.voicecall=true
persist.audio.fluence.voicerec=false
persist.audio.fluence.speaker=false
# Camera
persist.camera.cpp.duplication=false
persist.camera.hal.debug.mask=0
# Display
ro.sf.lcd_density=320
# Radio
rild.libpath=/system/vendor/lib64/libril-qc-qmi-1.so
ro.telephony.default_network=9,9
persist.radio.multisim.config=dsds
persist.radio.custom_ecc=1
persist.radio.ecc_hard_1=998
persist.radio.ecc_hard_count=1
# Factory reset protection
ro.frp.pst=/dev/block/bootdevice/by-name/frp
# Latest hardware revision supported
ro.product.model.platform=1

Loading…
Cancel
Save