diff --git a/apex-setup.rc b/apex-setup.rc new file mode 100644 index 0000000..4142499 --- /dev/null +++ b/apex-setup.rc @@ -0,0 +1,17 @@ +import /system/etc/init/zygote/init.${ro.zygote}.rc + +on early-fs + mkdir /mnt/runtime/full 0755 root root + mkdir /mnt/runtime/full/self 0755 root root + mkdir /apex 0777 root root + mount tmpfs tmpfs /apex mode=0755,uid=0,gid=0 + restorecon /apex + exec -- /system/bin/apexd --bootstrap + export ANDROID_RUNTIME_ROOT /apex/com.android.runtime + export ANDROID_TZDATA_ROOT /apex/com.android.tzdata + symlink /system/product /product + +on fs + exec u:r:su:s0 -- /system/bin/umount -l /product + exec u:r:su:s0 -- /system/bin/rmdir /product + symlink /system/product /product diff --git a/base-sas.mk b/base-sas.mk new file mode 100644 index 0000000..3b4c071 --- /dev/null +++ b/base-sas.mk @@ -0,0 +1,13 @@ +PRODUCT_COPY_FILES += \ + device/phh/treble/apex-setup.rc:system/etc/init/apex-setup.rc \ + +PRODUCT_COPY_FILES += \ + system/core/rootdir/init.zygote32.rc:system/etc/init/zygote/init.zygote32.rc \ + system/core/rootdir/init.zygote32_64.rc:system/etc/init/zygote/init.zygote32_64.rc \ + system/core/rootdir/init.zygote64_32.rc:system/etc/init/zygote/init.zygote64_32.rc \ + system/core/rootdir/init.zygote64.rc:system/etc/init/zygote/init.zygote64.rc \ + +PRODUCT_COPY_FILES += \ + frameworks/av/apex/mediaswcodec.rc:system/etc/init/mediaswcodec-treble.rc \ + device/phh/treble/environ/init.treble-environ.rc:system/etc/init/init.treble-environ.rc \ + diff --git a/base.mk b/base.mk index b28c109..e1cb049 100644 --- a/base.mk +++ b/base.mk @@ -2,7 +2,9 @@ #TODO: Proper detection PRODUCT_COPY_FILES := \ frameworks/native/data/etc/android.hardware.fingerprint.xml:system/etc/permissions/android.hardware.fingerprint.xml \ - 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:system/etc/permissions/android.hardware.telephony.gsm.xml \ + frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \ + frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml \ #Use a more decent APN config PRODUCT_COPY_FILES += \ @@ -36,7 +38,6 @@ PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ PRODUCT_COPY_FILES += \ device/phh/treble/vndk-detect:system/bin/vndk-detect \ device/phh/treble/vndk.rc:system/etc/init/vndk.rc \ - device/phh/treble/ld.config.26.txt:system/etc/ld.config.26.txt \ #USB Audio PRODUCT_COPY_FILES += \ @@ -51,7 +52,7 @@ PRODUCT_COPY_FILES += \ # LineageOS build may need this to make NFC work PRODUCT_PACKAGES += \ - NfcNci + NfcNci \ PRODUCT_COPY_FILES += \ device/phh/treble/rw-system.sh:system/bin/rw-system.sh \ @@ -62,11 +63,17 @@ PRODUCT_COPY_FILES += \ device/phh/treble/phh-on-boot.sh:system/bin/phh-on-boot.sh PRODUCT_PACKAGES += \ - treble-environ-rc + treble-environ-rc \ PRODUCT_PACKAGES += \ bootctl \ - vintf + vintf \ + +# Fix Offline Charging on Huawmeme +PRODUCT_PACKAGES += \ + huawei-charger +PRODUCT_COPY_FILES += \ + $(call find-copy-subdir-files,*,device/phh/treble/huawei_charger/files,system/etc/charger) PRODUCT_COPY_FILES += \ device/phh/treble/twrp/twrp.rc:system/etc/init/twrp.rc \ @@ -83,6 +90,7 @@ PRODUCT_PACKAGES += \ endif PRODUCT_PACKAGES += \ + android.hidl.manager-V1.0-java \ android.hardware.wifi.hostapd-V1.0-java \ vendor.huawei.hardware.biometrics.fingerprint-V2.1-java \ vendor.huawei.hardware.tp-V1.0-java \ @@ -99,7 +107,10 @@ PRODUCT_COPY_FILES += \ device/phh/treble/files/huawei-fingerprint.kl:system/phh/huawei/fingerprint.kl \ device/phh/treble/files/samsung-sec_e-pen.idc:system/usr/idc/sec_e-pen.idc \ device/phh/treble/files/samsung-9810-floating_feature.xml:system/ph/sam-9810-flo_feat.xml \ - device/phh/treble/files/mimix3-gpio-keys.kl:system/phh/mimix3-gpio-keys.kl + device/phh/treble/files/mimix3-gpio-keys.kl:system/phh/mimix3-gpio-keys.kl \ + device/phh/treble/files/nokia-soc_gpio_keys.kl:system/phh/nokia-soc_gpio_keys.kl \ + device/phh/treble/files/lenovo-synaptics_dsx.kl:system/phh/lenovo-synaptics_dsx.kl \ + device/phh/treble/files/oppo-touchpanel.kl:system/phh/oppo-touchpanel.kl \ SELINUX_IGNORE_NEVERALLOWS := true @@ -113,3 +124,32 @@ PRODUCT_PACKAGES += \ PRODUCT_COPY_FILES += \ device/phh/treble/files/adbd.rc:system/etc/init/adbd.rc + +#MTK incoming SMS fix +PRODUCT_PACKAGES += \ + mtk-sms-fwk-ready + +# Helper to debug Xiaomi motorized camera +PRODUCT_PACKAGES += \ + xiaomi-motor + +PRODUCT_PACKAGES += \ + Stk + +PRODUCT_PACKAGES += \ + resetprop +PRODUCT_COPY_FILES += \ + device/phh/treble/phh-securize.sh:system/bin/phh-securize.sh \ + +PRODUCT_COPY_FILES += \ + frameworks/native/data/etc/android.software.secure_lock_screen.xml:system/etc/permissions/android.software.secure_lock_screen.xml \ + +PRODUCT_COPY_FILES += \ + device/phh/treble/ld.config.26.txt:system/etc/ld.config.26.txt \ + +PRODUCT_PACKAGES += \ + asus-motor + +# Privapp-permissions whitelist for PhhTrebleApp +PRODUCT_COPY_FILES += \ + device/phh/treble/privapp-permissions-me.phh.treble.app.xml:system/etc/permissions/privapp-permissions-me.phh.treble.app.xml diff --git a/board-base.mk b/board-base.mk index efe5e68..bbb817a 100644 --- a/board-base.mk +++ b/board-base.mk @@ -2,3 +2,5 @@ TARGET_SYSTEM_PROP := device/phh/treble/system.prop $(TARGET_SYSTEM_PROP) BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/phh/treble/bluetooth TARGET_EXFAT_DRIVER := exfat DEVICE_FRAMEWORK_MANIFEST_FILE := device/phh/treble/framework_manifest.xml + +BOARD_ROOT_EXTRA_FOLDERS += bt_firmware sec_storage diff --git a/cmds/Android.bp b/cmds/Android.bp index 4c04469..6586e64 100644 --- a/cmds/Android.bp +++ b/cmds/Android.bp @@ -36,3 +36,149 @@ cc_binary { ], host_supported: true, } + +cc_binary { + name: "vibrator-lge", + srcs: [ + "vibrator-lge.cpp", + ], + shared_libs: [ + "vendor.lge.hardware.vibrator@1.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "mtk-sms-fwk-ready", + srcs: [ + "mtk-sms-fwk-ready.cpp", + ], + shared_libs: [ + "vendor.mediatek.hardware.radio@2.6", + "libutils", + "libhidlbase", + ], + init_rc: [ + "mtk-sms-fwk-ready.rc" + ], +} + +cc_binary { + name: "xiaomi-display-feature", + srcs: [ + "xiaomi-display-feature.cpp", + ], + shared_libs: [ + "vendor.xiaomi.hardware.displayfeature@1.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "xiaomi-fp", + srcs: [ + "xiaomi-fp.cpp", + ], + shared_libs: [ + "vendor.xiaomi.hardware.fingerprintextension@1.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "lightsctl-sec", + srcs: [ + "lightsctl-sec.cpp", + ], + shared_libs: [ + "vendor.samsung.hardware.light@2.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "lightsctl-seh", + srcs: [ + "lightsctl-seh.cpp", + ], + shared_libs: [ + "vendor.samsung.hardware.light@3.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "xiaomi-motor", + srcs: [ + "xiaomi-motor.cpp", + ], + shared_libs: [ + "vendor.xiaomi.hardware.motor@1.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "oneplus-motor", + srcs: [ + "oneplus-motor.cpp", + ], + shared_libs: [ + "vendor.oneplus.hardware.motorcontrol@1.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "persistprops", + srcs: [ + "persistent_properties.proto", + "persistprops.cpp", + ], + static_executable: true, + proto: { + type: "lite", + static: true, + }, + static_libs: [ + "libprotobuf-cpp-lite" + ], +} + +cc_binary { + name: "lightsctl-huawei", + srcs: [ + "lightsctl-huawei.cpp", + ], + shared_libs: [ + "vendor.huawei.hardware.light@2.0", + "libutils", + "libhidlbase", + ], +} + +cc_binary { + name: "asus-motor", + srcs: [ + "asus-motor.cpp", + ], +} + +cc_binary { + name: "goodix-fp", + srcs: [ + "goodix-fp.cpp", + ], + shared_libs: [ + "vendor.goodix.extend.service@2.0", + "libutils", + "libhidlbase", + ], +} diff --git a/cmds/asus-motor.cpp b/cmds/asus-motor.cpp new file mode 100644 index 0000000..7f18858 --- /dev/null +++ b/cmds/asus-motor.cpp @@ -0,0 +1,30 @@ +#include +#include +#include +#include +#include + +typedef struct { + int dir; + int angle; + int speed; +} motorDrvManualConfig_t; + +#define ASUS_MOTOR_NAME_SIZE 32 +#define ASUS_MOTOR_DATA_SIZE 4 + +#define ASUS_MOTOR_DRV_DEV_PATH ("/dev/asusMotoDrv") +#define ASUS_MOTOR_DRV_IOC_MAGIC ('M') +#define ASUS_MOTOR_DRV_AUTO_MODE _IOW(ASUS_MOTOR_DRV_IOC_MAGIC, 1, int) +#define ASUS_MOTOR_DRV_MANUAL_MODE _IOW(ASUS_MOTOR_DRV_IOC_MAGIC, 2, motorDrvManualConfig_t) + +int main(int argc, char **argv) { + if(argc != 2) return 1; + int fd = open("/dev/asusMotoDrv", O_RDWR); + motorDrvManualConfig_t cfg; + cfg.dir = atoi(argv[1]); + cfg.angle = 180; + cfg.speed = 4; + + ioctl(fd, ASUS_MOTOR_DRV_MANUAL_MODE, &cfg); +} diff --git a/cmds/goodix-fp.cpp b/cmds/goodix-fp.cpp new file mode 100644 index 0000000..f9e54f6 --- /dev/null +++ b/cmds/goodix-fp.cpp @@ -0,0 +1,17 @@ +#include +#include + +using ::vendor::goodix::extend::service::V2_0::IGoodixFPExtendService; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IGoodixFPExtendService::getService(); + if(argc!=3) return 1; + int a = atoi(argv[1]); + int b = atoi(argv[2]); + auto ret = svc->goodixExtendCommand(a, b); + if(!ret.isOk()) { + std::cerr << "HWBinder call failed" << std::endl; + } + std::cout << "updateStatus returned " << toString(ret) << std::endl; +} diff --git a/cmds/lightsctl-huawei.cpp b/cmds/lightsctl-huawei.cpp new file mode 100644 index 0000000..6e1c8c5 --- /dev/null +++ b/cmds/lightsctl-huawei.cpp @@ -0,0 +1,21 @@ +#include +#include +#include + +using ::vendor::huawei::hardware::light::V2_0::IHwLight; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IHwLight::getService(); + svc->HWgetSupportedTypes([](auto types) { + for(const auto& type: types) { + std::cout << "Got type " << type << std::endl; + } + }); + + + uint32_t a = (uint32_t)strtoll(argv[1], NULL, 10); + uint32_t b = (uint32_t)strtoll(argv[2], NULL, 10); + auto ret = svc->HWsetLightBrightness(a, b); + std::cout << "Set light brightness returned " << toString(ret) << std::endl; +} diff --git a/cmds/lightsctl-sec.cpp b/cmds/lightsctl-sec.cpp new file mode 100644 index 0000000..b2c41ff --- /dev/null +++ b/cmds/lightsctl-sec.cpp @@ -0,0 +1,59 @@ +#include +#include +#include + +using ::vendor::samsung::hardware::light::V2_0::ISecLight; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = ISecLight::getService(); + svc->getSupportedTypes([](auto types) { + for(const auto& type: types) { + std::cout << "Got type " << toString(type) << std::endl; + } + }); + if(argc <= 1) return 0; + if(argc != 3 && argc != 6) return 1; + + std::string typeArg(argv[1]); + vendor::samsung::hardware::light::V2_0::SecType type; + if(typeArg == "BACKLIGHT") + type = vendor::samsung::hardware::light::V2_0::SecType::BACKLIGHT; + if(typeArg == "KEYBOARD") + type = vendor::samsung::hardware::light::V2_0::SecType::KEYBOARD; + if(typeArg == "BUTTONS") + type = vendor::samsung::hardware::light::V2_0::SecType::BUTTONS; + if(typeArg == "BATTERY") + type = vendor::samsung::hardware::light::V2_0::SecType::BATTERY; + if(typeArg == "NOTIFICATIONS") + type = vendor::samsung::hardware::light::V2_0::SecType::NOTIFICATIONS; + if(typeArg == "ATTENTION") + type = vendor::samsung::hardware::light::V2_0::SecType::ATTENTION; + if(typeArg == "BLUETOOTH") + type = vendor::samsung::hardware::light::V2_0::SecType::BLUETOOTH; + if(typeArg == "WIFI") + type = vendor::samsung::hardware::light::V2_0::SecType::WIFI; + std::cout << "Set request type " << toString(type) << std::endl; + + android::hardware::light::V2_0::LightState state; + state.color = (uint32_t)strtoll(argv[2], NULL, 16); + state.flashMode = android::hardware::light::V2_0::Flash::NONE; + state.brightnessMode = android::hardware::light::V2_0::Brightness::USER; + + if(argc == 6) { + std::string flashArg(argv[3]); + if(flashArg == "NONE") + state.flashMode = android::hardware::light::V2_0::Flash::NONE; + if(flashArg == "TIMED") + state.flashMode = android::hardware::light::V2_0::Flash::TIMED; + if(flashArg == "HARDWARE") + state.flashMode = android::hardware::light::V2_0::Flash::HARDWARE; + + state.flashOnMs = atoi(argv[4]); + state.flashOffMs = atoi(argv[5]); + } + std::cout << "Set flash type to " << toString(state.flashMode) << std::endl; + + auto ret = svc->setLightSec(type, state); + std::cout << "Set light returned " << toString(ret) << std::endl; +} diff --git a/cmds/lightsctl-seh.cpp b/cmds/lightsctl-seh.cpp new file mode 100644 index 0000000..7d2faa2 --- /dev/null +++ b/cmds/lightsctl-seh.cpp @@ -0,0 +1,62 @@ +#include +#include +#include + +using ::vendor::samsung::hardware::light::V3_0::ISehLight; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = ISehLight::getService(); + svc->getSupportedTypes([](auto types) { + for(const auto& type: types) { + std::cout << "Got type " << toString(type) << std::endl; + } + }); + if(argc <= 1) return 0; + if(argc != 4 && argc != 7) return 1; + + std::string typeArg(argv[1]); + vendor::samsung::hardware::light::V3_0::SehType type; + if(typeArg == "BACKLIGHT") + type = vendor::samsung::hardware::light::V3_0::SehType::BACKLIGHT; + if(typeArg == "KEYBOARD") + type = vendor::samsung::hardware::light::V3_0::SehType::KEYBOARD; + if(typeArg == "BUTTONS") + type = vendor::samsung::hardware::light::V3_0::SehType::BUTTONS; + if(typeArg == "BATTERY") + type = vendor::samsung::hardware::light::V3_0::SehType::BATTERY; + if(typeArg == "NOTIFICATIONS") + type = vendor::samsung::hardware::light::V3_0::SehType::NOTIFICATIONS; + if(typeArg == "ATTENTION") + type = vendor::samsung::hardware::light::V3_0::SehType::ATTENTION; + if(typeArg == "BLUETOOTH") + type = vendor::samsung::hardware::light::V3_0::SehType::BLUETOOTH; + if(typeArg == "WIFI") + type = vendor::samsung::hardware::light::V3_0::SehType::WIFI; + if(typeArg == "SUB_BACKLIGHT") + type = vendor::samsung::hardware::light::V3_0::SehType::SUB_BACKLIGHT; + std::cout << "Set request type " << toString(type) << std::endl; + + vendor::samsung::hardware::light::V3_0::SehLightState state; + state.color = (uint32_t)strtoll(argv[2], NULL, 16); + state.flashMode = android::hardware::light::V2_0::Flash::NONE; + state.brightnessMode = android::hardware::light::V2_0::Brightness::USER; + state.extendedBrightness = (uint32_t)strtoll(argv[3], NULL, 0); + + if(argc == 7) { + std::string flashArg(argv[4]); + if(flashArg == "NONE") + state.flashMode = android::hardware::light::V2_0::Flash::NONE; + if(flashArg == "TIMED") + state.flashMode = android::hardware::light::V2_0::Flash::TIMED; + if(flashArg == "HARDWARE") + state.flashMode = android::hardware::light::V2_0::Flash::HARDWARE; + + state.flashOnMs = atoi(argv[5]); + state.flashOffMs = atoi(argv[6]); + } + std::cout << "Set flash type to " << toString(state.flashMode) << std::endl; + + auto ret = svc->sehSetLight(type, state); + std::cout << "Set light returned " << toString(ret) << std::endl; +} diff --git a/cmds/mtk-sms-fwk-ready.cpp b/cmds/mtk-sms-fwk-ready.cpp new file mode 100644 index 0000000..3575a7e --- /dev/null +++ b/cmds/mtk-sms-fwk-ready.cpp @@ -0,0 +1,12 @@ +#include +#include +#include + +using ::vendor::mediatek::hardware::radio::V2_6::IRadio; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IRadio::getService(argv[1]); + if(svc != nullptr) + svc->setSmsFwkReady(1); +} diff --git a/cmds/mtk-sms-fwk-ready.rc b/cmds/mtk-sms-fwk-ready.rc new file mode 100644 index 0000000..e82e0a9 --- /dev/null +++ b/cmds/mtk-sms-fwk-ready.rc @@ -0,0 +1,3 @@ +on property:sys.boot_completed=1 + exec u:r:phhsu_daemon:s0 root -- /system/bin/mtk-sms-fwk-ready slot1 + exec u:r:phhsu_daemon:s0 root -- /system/bin/mtk-sms-fwk-ready slot2 diff --git a/cmds/oneplus-motor.cpp b/cmds/oneplus-motor.cpp new file mode 100644 index 0000000..f1906c1 --- /dev/null +++ b/cmds/oneplus-motor.cpp @@ -0,0 +1,32 @@ +#include +#include +#include + +using ::vendor::oneplus::hardware::motorcontrol::V1_0::IOPMotorControl; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IOPMotorControl::getService(); + if(svc == nullptr) { + std::cerr << "Failed getting IMotor" << std::endl; + return -1; + } + if(argc<2) { + std::cerr << "Usage: " << argv[0] << " " << std::endl; + return -1; + } + std::string cmd(argv[1]); + if(cmd == "read") { + int ret = svc->readMotorData(1, 16); + std::cout << "Read motor data 1/16 returned " << ret << std::endl; + return 0; + } else if(cmd == "down") { + int ret = svc->writeMotorData(1, 0, 1); + std::cout << "Down motor control data 1/0/1 returned " << ret << std::endl; + return 0; + } else if(cmd == "up") { + int ret = svc->writeMotorData(1, 1, 1); + std::cout << "Down motor control data 1/1/1 returned " << ret << std::endl; + return 0; + } +} diff --git a/cmds/persistent_properties.proto b/cmds/persistent_properties.proto new file mode 100644 index 0000000..c8d2e3a --- /dev/null +++ b/cmds/persistent_properties.proto @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2017 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. + */ + +syntax = "proto2"; +option optimize_for = LITE_RUNTIME; + +message PersistentProperties { + message PersistentPropertyRecord { + optional string name = 1; + optional string value = 2; + } + + repeated PersistentPropertyRecord properties = 1; +} diff --git a/cmds/persistprops.cpp b/cmds/persistprops.cpp new file mode 100644 index 0000000..bc376a6 --- /dev/null +++ b/cmds/persistprops.cpp @@ -0,0 +1,55 @@ +#include +#include +#include +#include + +#include "device/phh/treble/cmds/persistent_properties.pb.h" +#include +#include + +int main(int argc, char **argv) { + int fd = open("persistent_properties", O_RDWR); + off_t size = lseek(fd, 0, SEEK_END); + lseek(fd, 0, SEEK_SET); + char *data = (char*) malloc(size); + int ret = read(fd, data, size); + + PersistentProperties props; + bool parsed = props.ParseFromArray(data, size); + std::cout << "Currently has " << props.properties_size() << " props." << std::endl; + for(auto prop: props.properties()) { + std::cout << prop.name() << ":" << prop.value() << std::endl; + } + + if(argc == 1) { + close(fd); + return 0; + } + if(argc != 3) { + std::cout << "Usage: " << argv[0] << " [prop value]" << std::endl; + return -1; + } + + std::string property(argv[1]); + std::string value(argv[2]); + + auto p = props.mutable_properties(); + auto it = std::find_if(p->begin(), p->end(), [=](const auto& v) { return v.name() == property; }); + if(it == p->end()) { + std::cout << "Property not found, adding it" << std::endl; + auto *record = p->Add();; + record->set_name(property); + record->set_value(value); + } else { + std::cout << "Property found, replacing it" << std::endl; + it->set_value(value); + } + + size_t write_size = props.ByteSize(); + char *write_buffer = (char*) malloc(write_size); + props.SerializeToArray(write_buffer, write_size); + ftruncate(fd, 0); + lseek(fd, 0, SEEK_SET); + write(fd, write_buffer, write_size); + close(fd); +} diff --git a/cmds/vibrator-lge.cpp b/cmds/vibrator-lge.cpp new file mode 100644 index 0000000..5797854 --- /dev/null +++ b/cmds/vibrator-lge.cpp @@ -0,0 +1,48 @@ +#include +#include + +using ::vendor::lge::hardware::vibrator::V1_0::IVibratorEx; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IVibratorEx::getService(); + + auto supportsAmplitude = svc->supportsAmplitudeControl(); + if(supportsAmplitude.isOk()) + std::cerr << "supportsAmplitudeControl? " << supportsAmplitude << std::endl; + + /* +public int on(int timeoutMs) throws RemoteException { +public int off() throws RemoteException { +public int setAmplitude(byte amplitude) throws RemoteException { +public void perform(int effect, byte strength, performCallback _hidl_cb) throws RemoteException { +public int playEffectWithStrength(ArrayList effectData, int effectIndex, int strength) throws RemoteException { +*/ + + + if(strcmp(argv[1], "on") == 0) { + int v = 100; + if(argc>=3) + v = atoi(argv[2]); + auto ret = svc->on(v); + if(ret.isOk()) { + android::hardware::vibrator::V1_0::Status r = ret; + std::cout << "vibrator on returned " << (int)r << std::endl; + } else { + std::cerr << "Binder failed request" << std::endl; + } + } else if(strcmp(argv[1], "amplitude") == 0) { + int v = 127; + if(argc>=3) + v = atoi(argv[2]); + auto ret = svc->setAmplitude(v); + if(ret.isOk()) { + android::hardware::vibrator::V1_0::Status r = ret; + std::cout << "vibrator amplitude returned " << (int)r << std::endl; + } else { + std::cerr << "Binder failed request" << std::endl; + } + } else { + std::cerr << "Not supported (yet)" << std::endl; + } +} diff --git a/cmds/xiaomi-display-feature.cpp b/cmds/xiaomi-display-feature.cpp new file mode 100644 index 0000000..0f2d276 --- /dev/null +++ b/cmds/xiaomi-display-feature.cpp @@ -0,0 +1,38 @@ +#include +#include +#include + +using ::vendor::xiaomi::hardware::displayfeature::V1_0::IDisplayFeature; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IDisplayFeature::getService(); + if(svc == nullptr) { + std::cerr << "Failed getting IDisplayFeature" << std::endl; + return -1; + } + if(argc != 3) { + fprintf(stderr, "Usage: %s \n", argv[0]); + return -2; + } + int mode = -1; + std::string modeArg(argv[1]); + if(modeArg == "ADAPT") + mode = 0; + if(modeArg == "ENHANCE") + mode = 1; + if(modeArg == "STANDARD") + mode = 2; + if(modeArg == "EYECARE") + mode = 3; + if(modeArg == "MONOCHROME") + mode = 4; + if(modeArg == "SUNLIGHT") + mode = 8; + if(modeArg == "NIGHTLIGHT") + mode = 9; + if(modeArg == "HIGHLIGHT") + mode = 11; + + svc->setFeature(0, mode, atoi(argv[2]), 255); +} diff --git a/cmds/xiaomi-fp.cpp b/cmds/xiaomi-fp.cpp new file mode 100644 index 0000000..49701b2 --- /dev/null +++ b/cmds/xiaomi-fp.cpp @@ -0,0 +1,21 @@ +#include +#include +#include + +using ::vendor::xiaomi::hardware::fingerprintextension::V1_0::IXiaomiFingerprint; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IXiaomiFingerprint::getService(); + if(svc == nullptr) { + std::cerr << "Failed getting IDisplayFeature" << std::endl; + return -1; + } + if(argc != 3) { + fprintf(stderr, "Usage: %s \n", argv[0]); + return -2; + } + uint32_t cmd = (uint32_t)strtoll(argv[1], NULL, 16); + uint32_t value = (uint32_t)strtoll(argv[2], NULL, 16); + svc->extCmd(cmd, value); +} diff --git a/cmds/xiaomi-motor.cpp b/cmds/xiaomi-motor.cpp new file mode 100644 index 0000000..f78dde3 --- /dev/null +++ b/cmds/xiaomi-motor.cpp @@ -0,0 +1,38 @@ +#include +#include +#include + +using ::vendor::xiaomi::hardware::motor::V1_0::IMotor; +using ::android::sp; + +int main(int argc, char **argv) { + auto svc = IMotor::getService(); + if(svc == nullptr) { + std::cerr << "Failed getting IMotor" << std::endl; + return -1; + } + if(argc<2) { + std::cerr << "Usage: " << argv[0] << " " << std::endl; + return -1; + } + std::string cmd(argv[1]); + if(cmd == "init") { + svc->init(); + } else if(cmd == "release") { + svc->release(); + } else if(cmd == "popup") { + if(argc!=3) { + std::cerr << "Usage: " << argv[0] << " " << argv[1] << " " << std::endl; + return -1; + } + svc->popupMotor(atoi(argv[2])); + } else if(cmd == "takeback") { + if(argc!=3) { + std::cerr << "Usage: " << argv[0] << " " << argv[1] << " " << std::endl; + return -1; + } + svc->takebackMotor(atoi(argv[2])); + } else if(cmd == "takebackShortly") { + svc->takebackMotorShortly(); + } +} diff --git a/environ/init.treble-environ.rc b/environ/init.treble-environ.rc index db095c8..4fc8c32 100644 --- a/environ/init.treble-environ.rc +++ b/environ/init.treble-environ.rc @@ -1,4 +1,4 @@ # set up the global environment on init - export BOOTCLASSPATH %BOOTCLASSPATH% - export SYSTEMSERVERCLASSPATH %SYSTEMSERVERCLASSPATH% + export BOOTCLASSPATH /apex/com.android.runtime/javalib/core-oj.jar:/apex/com.android.runtime/javalib/core-libart.jar:/apex/com.android.runtime/javalib/okhttp.jar:/apex/com.android.runtime/javalib/bouncycastle.jar:/apex/com.android.runtime/javalib/apache-xml.jar:/system/framework/framework.jar:/system/framework/ext.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/android.test.base.jar:/apex/com.android.conscrypt/javalib/conscrypt.jar:/apex/com.android.media/javalib/updatable-media.jar + export SYSTEMSERVERCLASSPATH /system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar:/system/framework/com.android.location.provider.jar diff --git a/files/lenovo-synaptics_dsx.kl b/files/lenovo-synaptics_dsx.kl new file mode 100644 index 0000000..faeb28b --- /dev/null +++ b/files/lenovo-synaptics_dsx.kl @@ -0,0 +1 @@ +key 542 WAKEUP diff --git a/files/mimix3-gpio-keys.kl b/files/mimix3-gpio-keys.kl index 5b2e648..1d384c8 100644 --- a/files/mimix3-gpio-keys.kl +++ b/files/mimix3-gpio-keys.kl @@ -29,4 +29,4 @@ key 114 VOLUME_DOWN key 102 HOME key 528 FOCUS key 766 CAMERA -key 689 ASSIST +key 689 VOICE_ASSIST diff --git a/files/nokia-soc_gpio_keys.kl b/files/nokia-soc_gpio_keys.kl new file mode 100644 index 0000000..5dc4d3e --- /dev/null +++ b/files/nokia-soc_gpio_keys.kl @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: Apache-2.0 + +key 114 VOLUME_DOWN +key 115 VOLUME_UP +key 116 POWER +key 236 ASSIST diff --git a/files/oppo-touchpanel.kl b/files/oppo-touchpanel.kl new file mode 100644 index 0000000..bfdb225 --- /dev/null +++ b/files/oppo-touchpanel.kl @@ -0,0 +1,2 @@ +key 62 WAKEUP + diff --git a/gapps.mk b/gapps.mk index 8ec6c74..95a3834 100644 --- a/gapps.mk +++ b/gapps.mk @@ -1,3 +1,4 @@ +ifneq ($(wildcard vendor/opengapps),) PRODUCT_COPY_FILES += \ device/phh/treble/empty-permission.xml:system/etc/permissions/com.google.android.camera2.xml \ device/phh/treble/empty-permission.xml:system/etc/permissions/com.google.android.camera.experimental2015.xml \ @@ -20,3 +21,12 @@ PRODUCT_PACKAGES += \ phh-overrides $(call inherit-product, vendor/opengapps/build/opengapps-packages.mk) +endif + +#Pixel Experience gapps +ifneq ($(wildcard vendor/gapps),) +IS_PHONE := true +$(call inherit-product,vendor/gapps/config.mk) +PRODUCT_PACKAGES += \ + phh-overrides +endif diff --git a/generate.sh b/generate.sh index 5246e3d..5742815 100644 --- a/generate.sh +++ b/generate.sh @@ -23,6 +23,7 @@ for part in a ab;do apps_name="" extra_packages="" vndk="vndk.mk" + optional_base="" if [ "$apps" == "gapps" ];then apps_suffix="g" apps_script='$(call inherit-product, device/phh/treble/gapps.mk)' @@ -59,15 +60,29 @@ for part in a ab;do part_suffix='a' if [ "$part" == 'ab' ];then part_suffix='b' + else + optional_base='$(call inherit-product, device/phh/treble/base-sas.mk)' fi target="treble_${arch}_${part_suffix}${apps_suffix}${su_suffix}" + baseArch="$arch" + if [ "$arch" = "a64" ];then + baseArch="arm" + fi + + zygote=32 + if [ "$arch" = "arm64" ];then + zygote=64_32 + fi + cat > ${target}.mk << EOF +TARGET_GAPPS_ARCH := ${baseArch} \$(call inherit-product, device/phh/treble/base-pre.mk) -include build/make/target/product/treble_common.mk +include build/make/target/product/aosp_${baseArch}_ab.mk \$(call inherit-product, vendor/vndk/${vndk}) \$(call inherit-product, device/phh/treble/base.mk) +$optional_base $apps_script $rom_script @@ -77,6 +92,7 @@ PRODUCT_BRAND := Android PRODUCT_MODEL := Phh-Treble $apps_name PRODUCT_PACKAGES += $extra_packages + EOF echo -e '\t$(LOCAL_DIR)/'$target.mk '\' >> AndroidProducts.mk done diff --git a/huawei_charger/Android.mk b/huawei_charger/Android.mk new file mode 100644 index 0000000..35a3c6c --- /dev/null +++ b/huawei_charger/Android.mk @@ -0,0 +1,1775 @@ +include $(CLEAR_VARS) + +LOCAL_MODULE := huawei-charger +LOCAL_MODULE_TAGS := optional + +LOCAL_POST_INSTALL_CMD := \ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_48.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_77.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_79.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_22.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_13.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_16.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_17.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_95.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_65.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_31.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_20.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_44.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_89.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_98.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_63.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_67.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_99.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_96.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_87.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_84.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_69.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_88.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_72.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_70.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_86.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_80.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_71.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_15.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_58.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_57.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_04.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_10.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_30.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_91.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_97.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_92.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_54.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_23.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_05.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_62.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_27.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_14.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_75.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_83.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_34.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_60.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_43.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_09.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_50.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_68.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_94.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_45.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_37.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_11.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_82.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_36.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_64.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_59.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_74.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_73.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_52.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_78.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_06.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_85.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_51.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_76.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_66.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_39.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_41.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_38.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_21.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_29.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_32.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_90.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_49.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_03.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_42.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_33.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_19.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_02.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_47.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_08.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_93.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_26.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_28.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_81.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_07.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_12.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_01.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_35.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_53.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_24.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_18.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_56.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_25.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_61.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_40.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_55.png ;\ + ln -sf ../800x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_46.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_48.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_77.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_79.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_22.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_13.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_16.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_17.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_95.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_65.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_31.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_20.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_44.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_89.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_98.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_63.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_67.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_99.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_96.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_87.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_84.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_69.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_88.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_72.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_70.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_86.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_80.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_71.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_15.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_58.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_57.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_04.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_10.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_30.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_91.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_97.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_92.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_54.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_23.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_05.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_62.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_27.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_14.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_75.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_83.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_34.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_60.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_43.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_09.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_50.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_68.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_94.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_45.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_37.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_11.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_82.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_36.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_64.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_59.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_74.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_73.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_52.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_78.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_06.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_85.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_51.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_76.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_66.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_39.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_41.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_38.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_21.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_29.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_32.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_90.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_49.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_03.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_42.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_33.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_19.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_02.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_47.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_08.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_93.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_26.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_28.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_81.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_07.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_12.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_01.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_35.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_53.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_24.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_18.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_56.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_25.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_61.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_40.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_55.png ;\ + ln -sf ../720x1440/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_46.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_48.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_77.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_79.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_22.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_13.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_16.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_17.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_95.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_65.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_31.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_20.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_44.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_89.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_98.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_63.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_67.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_99.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_96.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_87.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_84.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_69.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_88.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_72.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_70.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_86.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_80.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_71.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_15.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_58.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_57.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_04.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_10.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_30.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_91.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_97.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_92.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_54.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_23.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_05.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_62.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_27.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_14.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_75.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_83.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_34.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_60.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_43.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_09.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_50.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_68.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_94.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_45.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_37.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_11.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_82.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_36.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_64.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_59.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_74.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_73.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_52.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_78.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_06.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_85.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_51.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_76.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_66.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_39.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_41.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_38.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_21.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_29.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_32.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_90.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_49.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_03.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_42.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_33.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_19.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_02.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_47.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_08.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_93.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_26.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_28.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_81.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_07.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_12.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_01.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_35.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_53.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_24.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_18.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_56.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_25.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_61.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_40.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_55.png ;\ + ln -sf ../1600x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_46.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_48.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_77.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_79.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_22.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_13.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_16.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_17.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_95.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_65.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_31.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_20.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_44.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_89.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_98.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_63.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_67.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_99.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_96.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_87.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_84.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_69.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_88.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_72.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_70.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_86.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_80.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_71.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_15.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_58.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_57.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_04.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_10.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_30.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_91.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_97.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_92.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_54.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_23.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_05.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_62.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_27.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_14.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_75.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_83.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_34.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_60.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_43.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_09.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_50.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_68.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_94.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_45.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_37.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_11.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_82.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_36.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_64.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_59.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_74.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_73.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_52.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_78.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_06.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_85.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_51.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_76.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_66.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_39.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_41.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_38.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_21.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_29.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_32.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_90.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_49.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_03.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_42.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_33.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_19.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_02.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_47.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_08.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_93.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_26.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_28.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_81.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_07.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_12.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_01.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_35.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_53.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_24.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_18.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_56.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_25.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_61.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_40.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_55.png ;\ + ln -sf ../1200x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_46.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_48.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_77.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_79.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_22.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_13.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_16.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_17.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_95.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_65.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_31.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_20.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_44.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_89.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_98.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_63.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_67.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_99.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_96.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_87.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_84.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_69.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_88.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_72.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_70.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_86.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_80.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_71.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_15.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_58.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_57.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_04.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_10.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_30.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_91.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_97.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_92.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_54.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_23.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_05.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_62.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_27.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_14.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_75.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_83.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_34.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_60.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_43.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_09.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_50.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_68.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_94.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_45.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_37.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_11.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_82.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_36.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_64.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_59.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_74.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_73.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_52.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_78.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_06.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_85.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_51.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_76.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_66.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_39.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_41.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_38.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_21.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_29.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_32.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_90.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_49.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_03.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_42.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_33.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_19.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_02.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_47.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_08.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_93.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_26.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_28.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_81.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_07.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_12.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_01.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_35.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_53.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_24.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_18.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_56.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_25.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_61.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_40.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_55.png ;\ + ln -sf ../1080x2160/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_46.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_48.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_77.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_79.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_22.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_13.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_16.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_17.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_95.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_65.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_31.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_20.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_44.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_89.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_98.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_63.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_67.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_99.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_96.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_87.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_84.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_69.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_88.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_72.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_70.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_86.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_80.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_71.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_15.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_58.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_57.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_04.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_10.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_30.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_91.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_97.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_92.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_54.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_23.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_05.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_62.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_27.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_14.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_75.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_83.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_34.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_60.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_43.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_09.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_50.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_68.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_94.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_45.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_37.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_11.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_82.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_36.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_64.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_59.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_74.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_73.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_52.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_78.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_06.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_85.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_51.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_76.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_66.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_39.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_41.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_38.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_21.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_29.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_32.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_90.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_49.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_03.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_42.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_33.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_19.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_02.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_47.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_08.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_93.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_26.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_28.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_81.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_07.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_12.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_01.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_35.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_53.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_24.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_18.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_56.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_25.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_61.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_40.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_55.png ;\ + ln -sf ../1080x2280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_46.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_48.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_77.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_79.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_22.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_13.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_16.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_17.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_95.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_65.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_31.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_20.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_44.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_89.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_98.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_63.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_67.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_99.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_96.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_87.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_84.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_69.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_88.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_72.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_70.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_86.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_80.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_71.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_15.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_58.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_57.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_04.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_10.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_30.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_91.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_97.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_92.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_54.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_23.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_05.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_62.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_27.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_14.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_75.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_83.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_34.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_60.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_43.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_09.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_50.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_68.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_94.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_45.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_37.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_11.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_82.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_36.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_64.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_59.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_74.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_73.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_52.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_78.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_06.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_85.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_51.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_76.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_66.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_39.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_41.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_38.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_21.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_29.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_32.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_90.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_49.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_03.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_42.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_33.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_19.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_02.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_47.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_08.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_93.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_26.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_28.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_81.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_07.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_12.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_01.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_35.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_53.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_24.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_18.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_56.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_25.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_61.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_40.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_55.png ;\ + ln -sf ../1440x2560/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_46.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_48.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_77.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_79.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_22.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_13.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_16.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_17.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_95.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_65.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_31.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_20.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_44.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_89.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_98.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_63.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_67.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_99.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_96.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_87.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_84.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_69.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_88.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_72.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_70.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_86.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_80.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_71.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_15.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_58.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_57.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_04.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_10.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_30.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_91.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_97.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_92.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_54.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_23.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_05.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_62.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_27.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_14.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_75.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_83.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_34.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_60.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_43.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_09.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_50.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_68.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_94.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_45.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_37.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_11.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_82.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_36.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_64.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_59.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_74.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_73.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_52.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_78.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_06.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_85.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_51.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_76.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_66.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_39.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_41.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_38.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_21.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_29.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_32.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_90.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_49.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_03.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_42.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_33.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_19.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_02.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_47.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_08.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_93.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_26.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_28.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_81.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_07.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_12.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_01.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_35.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_53.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_24.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_18.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_56.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_25.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_61.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_40.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_55.png ;\ + ln -sf ../720x1280/clric_00.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_46.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_48.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_77.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_79.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_22.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_13.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_16.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_17.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_95.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_65.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_31.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_20.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_44.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_89.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_98.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_63.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_67.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_99.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_96.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_87.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_84.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_69.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_88.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_72.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_70.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_86.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_80.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_71.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_15.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_58.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_57.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_04.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_10.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_30.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_91.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_97.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_92.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_54.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_23.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_05.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_62.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_27.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_14.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_75.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_83.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_34.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_60.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_43.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_09.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_50.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_68.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_94.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_45.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_37.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_11.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_82.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_36.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_64.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_59.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_74.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_73.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_52.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_78.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_06.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_85.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_51.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_76.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_66.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_39.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_41.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_38.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_21.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_29.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_32.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_90.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_49.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_03.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_42.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_33.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_19.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_02.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_47.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_08.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_93.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_26.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_28.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_81.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_07.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_12.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_01.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_35.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_53.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_24.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_18.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_56.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_25.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_61.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_40.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_55.png ;\ + ln -sf ../1080x1920/clric_00.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_46.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_16.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_00.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_15.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_14.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_00.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_01.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_21.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_18.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_23.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_06.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_19.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_19.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_22.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_03.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_14.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_09.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_01.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_11.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_23.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_04.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_18.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_15.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_10.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_00.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_02.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_13.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_17.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_15.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_05.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_10.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_01.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_14.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_08.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_08.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_17.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_08.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_15.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_13.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_19.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_03.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_07.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_03.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_09.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_22.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_17.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_06.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_02.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_02.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_22.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_13.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_16.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_09.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_10.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_14.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_20.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_23.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_16.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_18.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_05.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_08.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_20.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_10.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_00.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_04.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_03.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_04.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_09.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_02.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_06.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_16.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_07.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_01.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_04.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_22.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_06.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_07.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_05.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_20.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_11.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_18.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_05.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_23.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_11.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_17.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_19.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_07.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_21.png ;\ + ln -sf ../800x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_charging_20.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_13.png ;\ + ln -sf ../800x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/charging_21.png ;\ + ln -sf ../800x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_charging_11.png ;\ + ln -sf ../800x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_charging_21.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_16.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_00.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_15.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_14.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_00.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_01.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_21.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_18.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_23.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_06.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_19.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_19.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_22.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_03.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_14.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_09.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_01.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_11.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_23.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_04.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_18.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_15.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_10.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_00.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_02.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_13.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_17.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_15.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_05.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_10.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_01.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_14.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_08.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_08.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_17.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_08.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_15.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_13.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_19.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_03.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_07.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_03.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_09.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_22.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_17.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_06.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_02.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_02.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_22.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_13.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_16.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_09.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_10.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_14.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_20.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_23.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_16.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_18.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_05.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_08.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_20.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_10.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_00.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_04.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_03.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_04.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_09.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_02.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_06.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_16.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_07.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_01.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_04.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_22.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_06.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_07.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_05.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_20.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_11.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_18.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_05.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_23.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_11.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_17.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_19.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_07.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_21.png ;\ + ln -sf ../720x1440/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_charging_20.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_13.png ;\ + ln -sf ../720x1440/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/charging_21.png ;\ + ln -sf ../720x1440/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_charging_11.png ;\ + ln -sf ../720x1440/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_charging_21.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_16.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_00.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_15.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_14.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_00.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_01.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_21.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_18.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_23.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_06.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_19.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_19.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_22.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_03.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_14.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_09.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_01.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_11.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_23.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_04.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_18.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_15.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_10.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_00.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_02.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_13.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_17.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_15.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_05.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_10.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_01.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_14.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_08.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_08.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_17.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_08.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_15.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_13.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_19.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_03.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_07.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_03.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_09.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_22.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_17.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_06.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_02.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_02.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_22.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_13.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_16.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_09.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_10.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_14.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_20.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_23.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_16.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_18.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_05.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_08.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_20.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_10.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_00.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_04.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_03.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_04.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_09.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_02.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_06.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_16.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_07.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_01.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_04.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_22.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_06.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_07.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_05.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_20.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_11.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_18.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_05.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_23.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_11.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_17.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_19.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_07.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_21.png ;\ + ln -sf ../1600x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_charging_20.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_13.png ;\ + ln -sf ../1600x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/charging_21.png ;\ + ln -sf ../1600x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_charging_11.png ;\ + ln -sf ../1600x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_charging_21.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_16.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_00.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_15.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_14.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_00.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_01.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_21.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_18.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_23.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_06.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_19.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_19.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_22.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_03.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_14.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_09.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_01.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_11.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_23.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_04.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_18.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_15.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_10.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_00.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_02.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_13.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_17.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_15.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_05.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_10.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_01.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_14.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_08.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_08.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_17.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_08.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_15.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_13.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_19.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_03.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_07.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_03.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_09.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_22.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_17.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_06.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_02.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_02.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_22.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_13.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_16.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_09.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_10.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_14.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_20.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_23.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_16.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_18.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_05.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_08.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_20.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_10.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_00.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_04.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_03.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_04.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_09.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_02.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_06.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_16.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_07.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_01.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_04.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_22.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_06.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_07.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_05.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_20.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_11.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_18.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_05.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_23.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_11.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_17.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_19.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_07.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_21.png ;\ + ln -sf ../1200x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_charging_20.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_13.png ;\ + ln -sf ../1200x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/charging_21.png ;\ + ln -sf ../1200x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_charging_11.png ;\ + ln -sf ../1200x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_charging_21.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_16.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_00.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_15.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_14.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_00.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_01.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_21.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_18.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_23.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_06.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_19.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_19.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_22.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_03.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_14.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_09.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_01.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_11.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_23.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_04.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_18.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_15.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_10.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_00.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_02.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_13.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_17.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_15.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_05.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_10.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_01.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_14.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_08.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_08.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_17.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_08.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_15.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_13.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_19.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_03.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_07.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_03.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_09.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_22.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_17.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_06.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_02.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_02.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_22.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_13.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_16.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_09.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_10.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_14.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_20.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_23.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_16.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_18.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_05.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_08.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_20.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_10.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_00.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_04.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_03.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_04.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_09.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_02.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_06.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_16.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_07.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_01.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_04.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_22.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_06.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_07.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_05.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_20.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_11.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_18.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_05.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_23.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_11.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_17.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_19.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_07.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_21.png ;\ + ln -sf ../1080x2160/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_charging_20.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_13.png ;\ + ln -sf ../1080x2160/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/charging_21.png ;\ + ln -sf ../1080x2160/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_charging_11.png ;\ + ln -sf ../1080x2160/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_charging_21.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_16.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_00.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_15.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_14.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_00.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_01.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_21.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_18.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_23.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_06.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_19.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_19.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_22.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_03.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_14.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_09.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_01.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_11.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_23.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_04.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_18.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_15.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_10.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_00.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_02.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_13.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_17.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_15.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_05.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_10.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_01.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_14.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_08.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_08.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_17.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_08.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_15.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_13.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_19.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_03.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_07.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_03.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_09.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_22.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_17.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_06.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_02.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_02.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_22.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_13.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_16.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_09.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_10.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_14.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_20.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_23.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_16.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_18.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_05.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_08.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_20.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_10.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_00.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_04.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_03.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_04.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_09.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_02.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_06.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_16.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_07.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_01.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_04.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_22.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_06.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_07.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_05.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_20.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_11.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_18.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_05.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_23.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_11.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_17.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_19.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_07.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_21.png ;\ + ln -sf ../1080x2280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_charging_20.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_13.png ;\ + ln -sf ../1080x2280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/charging_21.png ;\ + ln -sf ../1080x2280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_charging_11.png ;\ + ln -sf ../1080x2280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_charging_21.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_16.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_00.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_15.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_14.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_00.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_01.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_21.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_18.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_23.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_06.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_19.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_19.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_22.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_03.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_14.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_09.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_01.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_11.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_23.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_04.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_18.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_15.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_10.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_00.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_02.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_13.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_17.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_15.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_05.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_10.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_01.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_14.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_08.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_08.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_17.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_08.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_15.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_13.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_19.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_03.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_07.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_03.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_09.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_22.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_17.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_06.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_02.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_02.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_22.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_13.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_16.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_09.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_10.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_14.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_20.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_23.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_16.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_18.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_05.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_08.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_20.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_10.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_00.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_04.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_03.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_04.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_09.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_02.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_06.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_16.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_07.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_01.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_04.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_22.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_06.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_07.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_05.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_20.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_11.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_18.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_05.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_23.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_11.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_17.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_19.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_07.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_21.png ;\ + ln -sf ../1440x2560/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_charging_20.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_13.png ;\ + ln -sf ../1440x2560/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/charging_21.png ;\ + ln -sf ../1440x2560/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_charging_11.png ;\ + ln -sf ../1440x2560/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_charging_21.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_16.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_00.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_15.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_14.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_00.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_01.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_21.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_18.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_23.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_06.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_19.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_19.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_22.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_03.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_14.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_09.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_01.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_11.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_23.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_04.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_18.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_15.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_10.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_00.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_02.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_13.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_17.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_15.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_05.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_10.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_01.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_14.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_08.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_08.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_17.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_08.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_15.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_13.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_19.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_03.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_07.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_03.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_09.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_22.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_17.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_06.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_02.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_02.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_22.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_13.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_16.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_09.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_10.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_14.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_20.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_23.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_16.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_18.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_05.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_08.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_20.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_10.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_00.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_04.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_03.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_04.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_09.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_02.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_06.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_16.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_07.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_01.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_04.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_22.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_06.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_07.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_05.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_20.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_11.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_18.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_05.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_23.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_11.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_17.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_19.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_07.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_21.png ;\ + ln -sf ../720x1280/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_charging_20.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_13.png ;\ + ln -sf ../720x1280/charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/charging_21.png ;\ + ln -sf ../720x1280/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_charging_11.png ;\ + ln -sf ../720x1280/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_charging_21.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_16.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_00.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_15.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_14.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_00.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_01.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_21.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_18.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_23.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_06.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_19.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_19.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_22.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_03.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_14.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_09.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_01.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_11.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_23.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_04.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_18.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_15.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_10.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_00.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_02.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_13.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_17.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_15.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_05.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_10.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_01.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_14.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_08.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_08.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_17.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_08.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_15.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_13.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_19.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_03.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_07.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_03.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_09.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_22.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_17.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_06.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_02.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_02.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_22.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_13.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_16.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_09.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_10.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_14.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_20.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_23.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_16.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_18.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_05.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_08.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_20.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_10.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_00.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_04.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_03.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_04.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_09.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_02.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_06.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_16.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_07.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_01.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_04.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_22.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_06.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_07.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_05.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_20.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_11.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_18.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_05.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_23.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_11.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_17.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_19.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_07.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_21.png ;\ + ln -sf ../1080x1920/fcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_charging_20.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_13.png ;\ + ln -sf ../1080x1920/charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/charging_21.png ;\ + ln -sf ../1080x1920/scp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_charging_11.png ;\ + ln -sf ../1080x1920/dcp_charging_12.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_charging_21.png ;\ + ln -sf ../800x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/800x1280/err_charge.png ;\ + ln -sf ../720x1440/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1440/err_charge.png ;\ + ln -sf ../1600x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/err_charge.png ;\ + ln -sf ../1200x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/err_charge.png ;\ + ln -sf ../1080x2160/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/err_charge.png ;\ + ln -sf ../1080x2280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/err_charge.png ;\ + ln -sf ../1440x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/err_charge.png ;\ + ln -sf ../720x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1280/err_charge.png ;\ + ln -sf ../1080x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/err_charge.png ;\ + ln -sf ../800x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/800x1280/clric_00.png ;\ + ln -sf ../720x1440/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1440/clric_00.png ;\ + ln -sf ../1600x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/clric_00.png ;\ + ln -sf ../1200x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/clric_00.png ;\ + ln -sf ../1080x2160/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/clric_00.png ;\ + ln -sf ../1080x2280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/clric_00.png ;\ + ln -sf ../1440x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/clric_00.png ;\ + ln -sf ../720x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1280/clric_00.png ;\ + ln -sf ../1080x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/clric_00.png ;\ + ln -sf ../800x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/800x1280/scp_empty_charge.png ;\ + ln -sf ../800x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/800x1280/dcp_empty_charge.png ;\ + ln -sf ../800x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/800x1280/fcp_empty_charge.png ;\ + ln -sf ../720x1440/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1440/scp_empty_charge.png ;\ + ln -sf ../720x1440/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1440/dcp_empty_charge.png ;\ + ln -sf ../720x1440/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1440/fcp_empty_charge.png ;\ + ln -sf ../1600x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/scp_empty_charge.png ;\ + ln -sf ../1600x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/dcp_empty_charge.png ;\ + ln -sf ../1600x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1600x2560/fcp_empty_charge.png ;\ + ln -sf ../1200x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/scp_empty_charge.png ;\ + ln -sf ../1200x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/dcp_empty_charge.png ;\ + ln -sf ../1200x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1200x1920/fcp_empty_charge.png ;\ + ln -sf ../1080x2160/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/scp_empty_charge.png ;\ + ln -sf ../1080x2160/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/dcp_empty_charge.png ;\ + ln -sf ../1080x2160/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2160/fcp_empty_charge.png ;\ + ln -sf ../1080x2280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/scp_empty_charge.png ;\ + ln -sf ../1080x2280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/dcp_empty_charge.png ;\ + ln -sf ../1080x2280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x2280/fcp_empty_charge.png ;\ + ln -sf ../1440x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/scp_empty_charge.png ;\ + ln -sf ../1440x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/dcp_empty_charge.png ;\ + ln -sf ../1440x2560/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1440x2560/fcp_empty_charge.png ;\ + ln -sf ../720x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1280/scp_empty_charge.png ;\ + ln -sf ../720x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1280/dcp_empty_charge.png ;\ + ln -sf ../720x1280/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/720x1280/fcp_empty_charge.png ;\ + ln -sf ../1080x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/scp_empty_charge.png ;\ + ln -sf ../1080x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/dcp_empty_charge.png ;\ + ln -sf ../1080x1920/empty_charge.png $(PRODUCT_OUT)/system/etc/charger/1080x1920/fcp_empty_charge.png ;\ + ln -sf 1200x1920 1200x1920_hz ;\ + ln -sf 800x1280 800x1280_hz ;\ + ln -sf 1600x2560 1600x2560_hx + +include $(BUILD_PHONY_PACKAGE) diff --git a/huawei_charger/files/1080x1920/bg.png b/huawei_charger/files/1080x1920/bg.png new file mode 100644 index 0000000..996f4c3 Binary files /dev/null and b/huawei_charger/files/1080x1920/bg.png differ diff --git a/huawei_charger/files/1080x1920/empty_charge.png b/huawei_charger/files/1080x1920/empty_charge.png new file mode 100644 index 0000000..27279eb Binary files /dev/null and b/huawei_charger/files/1080x1920/empty_charge.png differ diff --git a/huawei_charger/files/1080x1920/full_charge.png b/huawei_charger/files/1080x1920/full_charge.png new file mode 100644 index 0000000..7e64bbb Binary files /dev/null and b/huawei_charger/files/1080x1920/full_charge.png differ diff --git a/huawei_charger/files/1080x2160/bg.png b/huawei_charger/files/1080x2160/bg.png new file mode 100644 index 0000000..6fe8c12 Binary files /dev/null and b/huawei_charger/files/1080x2160/bg.png differ diff --git a/huawei_charger/files/1080x2160/empty_charge.png b/huawei_charger/files/1080x2160/empty_charge.png new file mode 100644 index 0000000..119c0fa Binary files /dev/null and b/huawei_charger/files/1080x2160/empty_charge.png differ diff --git a/huawei_charger/files/1080x2160/full_charge.png b/huawei_charger/files/1080x2160/full_charge.png new file mode 100644 index 0000000..1248adf Binary files /dev/null and b/huawei_charger/files/1080x2160/full_charge.png differ diff --git a/huawei_charger/files/1080x2280/bg.png b/huawei_charger/files/1080x2280/bg.png new file mode 100644 index 0000000..26a1137 Binary files /dev/null and b/huawei_charger/files/1080x2280/bg.png differ diff --git a/huawei_charger/files/1080x2280/empty_charge.png b/huawei_charger/files/1080x2280/empty_charge.png new file mode 100644 index 0000000..273ec0c Binary files /dev/null and b/huawei_charger/files/1080x2280/empty_charge.png differ diff --git a/huawei_charger/files/1080x2280/full_charge.png b/huawei_charger/files/1080x2280/full_charge.png new file mode 100644 index 0000000..6994c45 Binary files /dev/null and b/huawei_charger/files/1080x2280/full_charge.png differ diff --git a/huawei_charger/files/1200x1920/battery_01.png b/huawei_charger/files/1200x1920/battery_01.png new file mode 100644 index 0000000..86727a9 Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_01.png differ diff --git a/huawei_charger/files/1200x1920/battery_02.png b/huawei_charger/files/1200x1920/battery_02.png new file mode 100644 index 0000000..02f68af Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_02.png differ diff --git a/huawei_charger/files/1200x1920/battery_03.png b/huawei_charger/files/1200x1920/battery_03.png new file mode 100644 index 0000000..a87533b Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_03.png differ diff --git a/huawei_charger/files/1200x1920/battery_04.png b/huawei_charger/files/1200x1920/battery_04.png new file mode 100644 index 0000000..1fd8298 Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_04.png differ diff --git a/huawei_charger/files/1200x1920/battery_05.png b/huawei_charger/files/1200x1920/battery_05.png new file mode 100644 index 0000000..79cfbc1 Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_05.png differ diff --git a/huawei_charger/files/1200x1920/battery_06.png b/huawei_charger/files/1200x1920/battery_06.png new file mode 100644 index 0000000..46eb1cf Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_06.png differ diff --git a/huawei_charger/files/1200x1920/battery_07.png b/huawei_charger/files/1200x1920/battery_07.png new file mode 100644 index 0000000..89d2201 Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_07.png differ diff --git a/huawei_charger/files/1200x1920/battery_08.png b/huawei_charger/files/1200x1920/battery_08.png new file mode 100644 index 0000000..dbe78a4 Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_08.png differ diff --git a/huawei_charger/files/1200x1920/battery_09.png b/huawei_charger/files/1200x1920/battery_09.png new file mode 100644 index 0000000..32c83bb Binary files /dev/null and b/huawei_charger/files/1200x1920/battery_09.png differ diff --git a/huawei_charger/files/1200x1920/bg.png b/huawei_charger/files/1200x1920/bg.png new file mode 100644 index 0000000..0c4b2c4 Binary files /dev/null and b/huawei_charger/files/1200x1920/bg.png differ diff --git a/huawei_charger/files/1200x1920/charging_12.png b/huawei_charger/files/1200x1920/charging_12.png new file mode 100644 index 0000000..9858ba9 Binary files /dev/null and b/huawei_charger/files/1200x1920/charging_12.png differ diff --git a/huawei_charger/files/1200x1920/cur_surface.png b/huawei_charger/files/1200x1920/cur_surface.png new file mode 100644 index 0000000..93506be Binary files /dev/null and b/huawei_charger/files/1200x1920/cur_surface.png differ diff --git a/huawei_charger/files/1200x1920/empty_charge.png b/huawei_charger/files/1200x1920/empty_charge.png new file mode 100644 index 0000000..3335768 Binary files /dev/null and b/huawei_charger/files/1200x1920/empty_charge.png differ diff --git a/huawei_charger/files/1200x1920/full_charge.png b/huawei_charger/files/1200x1920/full_charge.png new file mode 100644 index 0000000..df01597 Binary files /dev/null and b/huawei_charger/files/1200x1920/full_charge.png differ diff --git a/huawei_charger/files/1200x1920/number_0.png b/huawei_charger/files/1200x1920/number_0.png new file mode 100644 index 0000000..7a2cfe1 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_0.png differ diff --git a/huawei_charger/files/1200x1920/number_1.png b/huawei_charger/files/1200x1920/number_1.png new file mode 100644 index 0000000..f1466ab Binary files /dev/null and b/huawei_charger/files/1200x1920/number_1.png differ diff --git a/huawei_charger/files/1200x1920/number_2.png b/huawei_charger/files/1200x1920/number_2.png new file mode 100644 index 0000000..11974bd Binary files /dev/null and b/huawei_charger/files/1200x1920/number_2.png differ diff --git a/huawei_charger/files/1200x1920/number_3.png b/huawei_charger/files/1200x1920/number_3.png new file mode 100644 index 0000000..5f4b1b3 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_3.png differ diff --git a/huawei_charger/files/1200x1920/number_4.png b/huawei_charger/files/1200x1920/number_4.png new file mode 100644 index 0000000..c749c15 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_4.png differ diff --git a/huawei_charger/files/1200x1920/number_5.png b/huawei_charger/files/1200x1920/number_5.png new file mode 100644 index 0000000..a3e6064 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_5.png differ diff --git a/huawei_charger/files/1200x1920/number_6.png b/huawei_charger/files/1200x1920/number_6.png new file mode 100644 index 0000000..e0d45d7 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_6.png differ diff --git a/huawei_charger/files/1200x1920/number_7.png b/huawei_charger/files/1200x1920/number_7.png new file mode 100644 index 0000000..c8f2ca3 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_7.png differ diff --git a/huawei_charger/files/1200x1920/number_8.png b/huawei_charger/files/1200x1920/number_8.png new file mode 100644 index 0000000..03d512b Binary files /dev/null and b/huawei_charger/files/1200x1920/number_8.png differ diff --git a/huawei_charger/files/1200x1920/number_9.png b/huawei_charger/files/1200x1920/number_9.png new file mode 100644 index 0000000..dd01b85 Binary files /dev/null and b/huawei_charger/files/1200x1920/number_9.png differ diff --git a/huawei_charger/files/1200x1920/percent_sign.png b/huawei_charger/files/1200x1920/percent_sign.png new file mode 100644 index 0000000..9ca2d5f Binary files /dev/null and b/huawei_charger/files/1200x1920/percent_sign.png differ diff --git a/huawei_charger/files/1200x1920/scp_charging_12.png b/huawei_charger/files/1200x1920/scp_charging_12.png new file mode 100644 index 0000000..c2618a5 Binary files /dev/null and b/huawei_charger/files/1200x1920/scp_charging_12.png differ diff --git a/huawei_charger/files/1440x2560/bg.png b/huawei_charger/files/1440x2560/bg.png new file mode 100644 index 0000000..4f6dd63 Binary files /dev/null and b/huawei_charger/files/1440x2560/bg.png differ diff --git a/huawei_charger/files/1440x2560/empty_charge.png b/huawei_charger/files/1440x2560/empty_charge.png new file mode 100644 index 0000000..e841391 Binary files /dev/null and b/huawei_charger/files/1440x2560/empty_charge.png differ diff --git a/huawei_charger/files/1440x2560/full_charge.png b/huawei_charger/files/1440x2560/full_charge.png new file mode 100644 index 0000000..31ebd06 Binary files /dev/null and b/huawei_charger/files/1440x2560/full_charge.png differ diff --git a/huawei_charger/files/1600x2560/battery_01.png b/huawei_charger/files/1600x2560/battery_01.png new file mode 100644 index 0000000..6ac582b Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_01.png differ diff --git a/huawei_charger/files/1600x2560/battery_02.png b/huawei_charger/files/1600x2560/battery_02.png new file mode 100644 index 0000000..7ff5d08 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_02.png differ diff --git a/huawei_charger/files/1600x2560/battery_03.png b/huawei_charger/files/1600x2560/battery_03.png new file mode 100644 index 0000000..927ad0b Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_03.png differ diff --git a/huawei_charger/files/1600x2560/battery_04.png b/huawei_charger/files/1600x2560/battery_04.png new file mode 100644 index 0000000..caca5e9 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_04.png differ diff --git a/huawei_charger/files/1600x2560/battery_05.png b/huawei_charger/files/1600x2560/battery_05.png new file mode 100644 index 0000000..db8ddd3 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_05.png differ diff --git a/huawei_charger/files/1600x2560/battery_06.png b/huawei_charger/files/1600x2560/battery_06.png new file mode 100644 index 0000000..6c40340 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_06.png differ diff --git a/huawei_charger/files/1600x2560/battery_07.png b/huawei_charger/files/1600x2560/battery_07.png new file mode 100644 index 0000000..71c68fa Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_07.png differ diff --git a/huawei_charger/files/1600x2560/battery_08.png b/huawei_charger/files/1600x2560/battery_08.png new file mode 100644 index 0000000..d45a370 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_08.png differ diff --git a/huawei_charger/files/1600x2560/battery_09.png b/huawei_charger/files/1600x2560/battery_09.png new file mode 100644 index 0000000..1c05922 Binary files /dev/null and b/huawei_charger/files/1600x2560/battery_09.png differ diff --git a/huawei_charger/files/1600x2560/bg.png b/huawei_charger/files/1600x2560/bg.png new file mode 100644 index 0000000..99f253c Binary files /dev/null and b/huawei_charger/files/1600x2560/bg.png differ diff --git a/huawei_charger/files/1600x2560/charging_12.png b/huawei_charger/files/1600x2560/charging_12.png new file mode 100644 index 0000000..59a83f4 Binary files /dev/null and b/huawei_charger/files/1600x2560/charging_12.png differ diff --git a/huawei_charger/files/1600x2560/cur_surface.png b/huawei_charger/files/1600x2560/cur_surface.png new file mode 100644 index 0000000..77351ce Binary files /dev/null and b/huawei_charger/files/1600x2560/cur_surface.png differ diff --git a/huawei_charger/files/1600x2560/empty_charge.png b/huawei_charger/files/1600x2560/empty_charge.png new file mode 100644 index 0000000..72c2706 Binary files /dev/null and b/huawei_charger/files/1600x2560/empty_charge.png differ diff --git a/huawei_charger/files/1600x2560/fcp_charging_12.png b/huawei_charger/files/1600x2560/fcp_charging_12.png new file mode 100644 index 0000000..0c3a488 Binary files /dev/null and b/huawei_charger/files/1600x2560/fcp_charging_12.png differ diff --git a/huawei_charger/files/1600x2560/full_charge.png b/huawei_charger/files/1600x2560/full_charge.png new file mode 100644 index 0000000..63d5b10 Binary files /dev/null and b/huawei_charger/files/1600x2560/full_charge.png differ diff --git a/huawei_charger/files/1600x2560/number_0.png b/huawei_charger/files/1600x2560/number_0.png new file mode 100644 index 0000000..58d190b Binary files /dev/null and b/huawei_charger/files/1600x2560/number_0.png differ diff --git a/huawei_charger/files/1600x2560/number_1.png b/huawei_charger/files/1600x2560/number_1.png new file mode 100644 index 0000000..7cb9675 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_1.png differ diff --git a/huawei_charger/files/1600x2560/number_2.png b/huawei_charger/files/1600x2560/number_2.png new file mode 100644 index 0000000..f45cacb Binary files /dev/null and b/huawei_charger/files/1600x2560/number_2.png differ diff --git a/huawei_charger/files/1600x2560/number_3.png b/huawei_charger/files/1600x2560/number_3.png new file mode 100644 index 0000000..609f66a Binary files /dev/null and b/huawei_charger/files/1600x2560/number_3.png differ diff --git a/huawei_charger/files/1600x2560/number_4.png b/huawei_charger/files/1600x2560/number_4.png new file mode 100644 index 0000000..1916177 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_4.png differ diff --git a/huawei_charger/files/1600x2560/number_5.png b/huawei_charger/files/1600x2560/number_5.png new file mode 100644 index 0000000..4a9da25 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_5.png differ diff --git a/huawei_charger/files/1600x2560/number_6.png b/huawei_charger/files/1600x2560/number_6.png new file mode 100644 index 0000000..5f53c86 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_6.png differ diff --git a/huawei_charger/files/1600x2560/number_7.png b/huawei_charger/files/1600x2560/number_7.png new file mode 100644 index 0000000..7302fa0 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_7.png differ diff --git a/huawei_charger/files/1600x2560/number_8.png b/huawei_charger/files/1600x2560/number_8.png new file mode 100644 index 0000000..3deb513 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_8.png differ diff --git a/huawei_charger/files/1600x2560/number_9.png b/huawei_charger/files/1600x2560/number_9.png new file mode 100644 index 0000000..4ed9809 Binary files /dev/null and b/huawei_charger/files/1600x2560/number_9.png differ diff --git a/huawei_charger/files/1600x2560/percent_sign.png b/huawei_charger/files/1600x2560/percent_sign.png new file mode 100644 index 0000000..c9db76d Binary files /dev/null and b/huawei_charger/files/1600x2560/percent_sign.png differ diff --git a/huawei_charger/files/1600x2560/scp_charging_12.png b/huawei_charger/files/1600x2560/scp_charging_12.png new file mode 100644 index 0000000..bcce60a Binary files /dev/null and b/huawei_charger/files/1600x2560/scp_charging_12.png differ diff --git a/huawei_charger/files/720x1280/bg.png b/huawei_charger/files/720x1280/bg.png new file mode 100644 index 0000000..a8b5e80 Binary files /dev/null and b/huawei_charger/files/720x1280/bg.png differ diff --git a/huawei_charger/files/720x1280/empty_charge.png b/huawei_charger/files/720x1280/empty_charge.png new file mode 100644 index 0000000..ad48e98 Binary files /dev/null and b/huawei_charger/files/720x1280/empty_charge.png differ diff --git a/huawei_charger/files/720x1280/full_charge.png b/huawei_charger/files/720x1280/full_charge.png new file mode 100644 index 0000000..d5e4f41 Binary files /dev/null and b/huawei_charger/files/720x1280/full_charge.png differ diff --git a/huawei_charger/files/720x1440/bg.png b/huawei_charger/files/720x1440/bg.png new file mode 100644 index 0000000..e70d332 Binary files /dev/null and b/huawei_charger/files/720x1440/bg.png differ diff --git a/huawei_charger/files/720x1440/empty_charge.png b/huawei_charger/files/720x1440/empty_charge.png new file mode 100644 index 0000000..09bad8b Binary files /dev/null and b/huawei_charger/files/720x1440/empty_charge.png differ diff --git a/huawei_charger/files/720x1440/full_charge.png b/huawei_charger/files/720x1440/full_charge.png new file mode 100644 index 0000000..1d44b17 Binary files /dev/null and b/huawei_charger/files/720x1440/full_charge.png differ diff --git a/huawei_charger/files/800x1280/battery_01.png b/huawei_charger/files/800x1280/battery_01.png new file mode 100644 index 0000000..f9faa6a Binary files /dev/null and b/huawei_charger/files/800x1280/battery_01.png differ diff --git a/huawei_charger/files/800x1280/battery_02.png b/huawei_charger/files/800x1280/battery_02.png new file mode 100644 index 0000000..a6182d6 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_02.png differ diff --git a/huawei_charger/files/800x1280/battery_03.png b/huawei_charger/files/800x1280/battery_03.png new file mode 100644 index 0000000..d2091d5 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_03.png differ diff --git a/huawei_charger/files/800x1280/battery_04.png b/huawei_charger/files/800x1280/battery_04.png new file mode 100644 index 0000000..e3fda92 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_04.png differ diff --git a/huawei_charger/files/800x1280/battery_05.png b/huawei_charger/files/800x1280/battery_05.png new file mode 100644 index 0000000..f386a26 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_05.png differ diff --git a/huawei_charger/files/800x1280/battery_06.png b/huawei_charger/files/800x1280/battery_06.png new file mode 100644 index 0000000..4e6ce1e Binary files /dev/null and b/huawei_charger/files/800x1280/battery_06.png differ diff --git a/huawei_charger/files/800x1280/battery_07.png b/huawei_charger/files/800x1280/battery_07.png new file mode 100644 index 0000000..c125147 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_07.png differ diff --git a/huawei_charger/files/800x1280/battery_08.png b/huawei_charger/files/800x1280/battery_08.png new file mode 100644 index 0000000..18c7919 Binary files /dev/null and b/huawei_charger/files/800x1280/battery_08.png differ diff --git a/huawei_charger/files/800x1280/battery_09.png b/huawei_charger/files/800x1280/battery_09.png new file mode 100644 index 0000000..74b760a Binary files /dev/null and b/huawei_charger/files/800x1280/battery_09.png differ diff --git a/huawei_charger/files/800x1280/bg.png b/huawei_charger/files/800x1280/bg.png new file mode 100644 index 0000000..6e737c6 Binary files /dev/null and b/huawei_charger/files/800x1280/bg.png differ diff --git a/huawei_charger/files/800x1280/charging_12.png b/huawei_charger/files/800x1280/charging_12.png new file mode 100644 index 0000000..35c3894 Binary files /dev/null and b/huawei_charger/files/800x1280/charging_12.png differ diff --git a/huawei_charger/files/800x1280/cur_surface.png b/huawei_charger/files/800x1280/cur_surface.png new file mode 100644 index 0000000..ac11955 Binary files /dev/null and b/huawei_charger/files/800x1280/cur_surface.png differ diff --git a/huawei_charger/files/800x1280/empty_charge.png b/huawei_charger/files/800x1280/empty_charge.png new file mode 100644 index 0000000..0952936 Binary files /dev/null and b/huawei_charger/files/800x1280/empty_charge.png differ diff --git a/huawei_charger/files/800x1280/full_charge.png b/huawei_charger/files/800x1280/full_charge.png new file mode 100644 index 0000000..807c9ad Binary files /dev/null and b/huawei_charger/files/800x1280/full_charge.png differ diff --git a/huawei_charger/files/800x1280/number_0.png b/huawei_charger/files/800x1280/number_0.png new file mode 100644 index 0000000..622936f Binary files /dev/null and b/huawei_charger/files/800x1280/number_0.png differ diff --git a/huawei_charger/files/800x1280/number_1.png b/huawei_charger/files/800x1280/number_1.png new file mode 100644 index 0000000..de5b11a Binary files /dev/null and b/huawei_charger/files/800x1280/number_1.png differ diff --git a/huawei_charger/files/800x1280/number_2.png b/huawei_charger/files/800x1280/number_2.png new file mode 100644 index 0000000..0f07ecc Binary files /dev/null and b/huawei_charger/files/800x1280/number_2.png differ diff --git a/huawei_charger/files/800x1280/number_3.png b/huawei_charger/files/800x1280/number_3.png new file mode 100644 index 0000000..e849fe3 Binary files /dev/null and b/huawei_charger/files/800x1280/number_3.png differ diff --git a/huawei_charger/files/800x1280/number_4.png b/huawei_charger/files/800x1280/number_4.png new file mode 100644 index 0000000..cd7da4f Binary files /dev/null and b/huawei_charger/files/800x1280/number_4.png differ diff --git a/huawei_charger/files/800x1280/number_5.png b/huawei_charger/files/800x1280/number_5.png new file mode 100644 index 0000000..79927a4 Binary files /dev/null and b/huawei_charger/files/800x1280/number_5.png differ diff --git a/huawei_charger/files/800x1280/number_6.png b/huawei_charger/files/800x1280/number_6.png new file mode 100644 index 0000000..ab38736 Binary files /dev/null and b/huawei_charger/files/800x1280/number_6.png differ diff --git a/huawei_charger/files/800x1280/number_7.png b/huawei_charger/files/800x1280/number_7.png new file mode 100644 index 0000000..7e8184e Binary files /dev/null and b/huawei_charger/files/800x1280/number_7.png differ diff --git a/huawei_charger/files/800x1280/number_8.png b/huawei_charger/files/800x1280/number_8.png new file mode 100644 index 0000000..c25b4d6 Binary files /dev/null and b/huawei_charger/files/800x1280/number_8.png differ diff --git a/huawei_charger/files/800x1280/number_9.png b/huawei_charger/files/800x1280/number_9.png new file mode 100644 index 0000000..24676e0 Binary files /dev/null and b/huawei_charger/files/800x1280/number_9.png differ diff --git a/huawei_charger/files/800x1280/percent_sign.png b/huawei_charger/files/800x1280/percent_sign.png new file mode 100644 index 0000000..826b9ec Binary files /dev/null and b/huawei_charger/files/800x1280/percent_sign.png differ diff --git a/interfaces.xml b/interfaces.xml index 53a4ed4..a1d5469 100644 --- a/interfaces.xml +++ b/interfaces.xml @@ -1,5 +1,7 @@ + .so, libGLESv2_.so, -# android.hardware.graphics.mapper@2.0-impl.so, etc are SP-HALs. -# -# This namespace is exclusivly for SP-HALs. When the framework tries to dynami- -# cally load SP-HALs, android_dlopen_ext() is used to explicitly specifying -# that they should be searched and loaded from this namespace. -# -# Note that there is no link from the default namespace to this namespace. -############################################################################### -namespace.sphal.isolated = true -namespace.sphal.visible = true -namespace.sphal.search.paths = /vendor/${LIB}/egl:/vendor/${LIB}/hw:/vendor/${LIB} -namespace.sphal.permitted.paths = /vendor/${LIB}:/system/${LIB}/vndk-sp-27/hw - -namespace.sphal.asan.search.paths = /data/asan/vendor/${LIB}/egl:/vendor/${LIB}/egl:/data/asan/vendor/${LIB}/hw:/vendor/${LIB}/hw:/data/asan/vendor/${LIB}:/vendor/${LIB} -namespace.sphal.asan.permitted.paths = /data/asan/vendor/${LIB}:/vendor/${LIB} - -# Once in this namespace, access to libraries in /system/lib is restricted. Only -# libs listed here can be used. -namespace.sphal.links = default,vndk,rs - -# WARNING: only NDK libs can be listed here. -namespace.sphal.link.default.shared_libs = libc.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libGLESv1_CM.so:libGLESv2.so:libvndksupport.so:libz.so - -# WARNING: only VNDK-SP libs can be listed here. DO NOT EDIT this line. -namespace.sphal.link.vndk.shared_libs = android.hardware.renderscript@1.0.so:android.hardware.graphics.allocator@2.0.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.common@1.0.so:android.hidl.memory@1.0.so:libhwbinder.so:libbase.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libion.so:libutils.so:libc++.so - -# Renderscript gets separate namespace -namespace.sphal.link.rs.shared_libs = libRS_internal.so - -############################################################################### -# "rs" namespace -# -# This namespace is exclusively for Renderscript internal libraries. -# This namespace has slightly looser restriction than the vndk namespace because -# of the genuine characteristics of Renderscript; /data is in the permitted path -# to load the compiled *.so file and libmediandk.so can be used here. -############################################################################### -namespace.rs.isolated = true -namespace.rs.visible = true -namespace.rs.search.paths = /vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp-27:/vendor/${LIB} -namespace.rs.permitted.paths = /vendor/${LIB}:/data - -namespace.rs.asan.search.paths = /data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp-27:/system/${LIB}/vndk-sp-27:/data/asan/vendor/${LIB}:/vendor/${LIB} -namespace.rs.asan.permitted.paths = /data/asan/vendor/${LIB}:/vendor/${LIB}:/data - -namespace.rs.links = default,vndk -namespace.rs.link.default.shared_libs = libc.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libGLESv1_CM.so:libGLESv2.so:libmediandk.so:libvndksupport.so:libz.so:libft2.so -namespace.rs.link.vndk.shared_libs = android.hardware.renderscript@1.0.so:android.hardware.graphics.allocator@2.0.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.common@1.0.so:android.hidl.memory@1.0.so:libhwbinder.so:libbase.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libion.so:libutils.so:libc++.so - -############################################################################### -# "vndk" namespace -# -# This namespace is exclusively for vndk-sp libs. -############################################################################### -namespace.vndk.isolated = true -namespace.vndk.visible = true -namespace.vndk.search.paths = /vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp-27 -namespace.vndk.permitted.paths = /vendor/${LIB}/hw:/vendor/${LIB}/egl - -namespace.vndk.asan.search.paths = /data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp:/system/${LIB}/vndk-sp -namespace.vndk.asan.permitted.paths = /data/asan/vendor/${LIB}/hw:/vendor/${LIB}/hw:/data/asan/vendor/${LIB}/egl:/vendor/${LIB}/egl - -# When these NDK libs are required inside this namespace, then it is redirected -# to the default namespace. This is possible since their ABI is stable across -# Android releases. -namespace.vndk.links = default -namespace.vndk.link.default.shared_libs = android.hidl.memory@1.0-impl.so:libc.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libvndksupport.so:libz.so - -############################################################################### -# Namespace config for vendor processes. In O, no restriction is enforced for -# them. However, in O-MR1, access to /system/${LIB} will not be allowed to -# the default namespace. 'system' namespace will be added to give limited -# (LL-NDK only) access. -############################################################################### -[vendor] -namespace.default.isolated = false -namespace.default.search.paths = /vendor/${LIB}/hw:/vendor/${LIB}/egl:/vendor/${LIB}:/system/${LIB}/vndk-27:/vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp-27:/system/${LIB} - -namespace.default.asan.search.paths = /data/asan/vendor/${LIB}/hw:/vendor/${LIB}/hw:/data/asan/vendor/${LIB}/egl:/vendor/${LIB}/egl:/data/asan/vendor/${LIB}:/vendor/${LIB}:/data/asan/system/${LIB}/vndk:/system/${LIB}/vndk:/data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/data/asan/system/${LIB}:/system/${LIB} diff --git a/overlay/packages/apps/overlays/NoCutoutOverlay/res/values-land/config.xml b/overlay/packages/apps/overlays/NoCutoutOverlay/res/values-land/config.xml index 7012b2b..119988d 100644 --- a/overlay/packages/apps/overlays/NoCutoutOverlay/res/values-land/config.xml +++ b/overlay/packages/apps/overlays/NoCutoutOverlay/res/values-land/config.xml @@ -19,7 +19,4 @@ 28dp 156dp - - 28dp diff --git a/overlay/packages/apps/overlays/NoCutoutOverlay/res/values/config.xml b/overlay/packages/apps/overlays/NoCutoutOverlay/res/values/config.xml index 03e8e28..9478a30 100644 --- a/overlay/packages/apps/overlays/NoCutoutOverlay/res/values/config.xml +++ b/overlay/packages/apps/overlays/NoCutoutOverlay/res/values/config.xml @@ -28,9 +28,6 @@ 28dp 28dp - - 28dp @*android:dimen/rounded_corner_radius_bottom diff --git a/phh-on-boot.sh b/phh-on-boot.sh index 9f40955..1152c98 100644 --- a/phh-on-boot.sh +++ b/phh-on-boot.sh @@ -1,23 +1,39 @@ #!/system/bin/sh -[ "$(getprop vold.decrypt)" == "trigger_restart_min_framework" ] && exit 0 +[ "$(getprop vold.decrypt)" = "trigger_restart_min_framework" ] && exit 0 + +setprop ctl.start media.swcodec + +for i in wpa p2p;do + if [ ! -f /data/misc/wifi/${i}_supplicant.conf ];then + cp /vendor/etc/wifi/wpa_supplicant.conf /data/misc/wifi/${i}_supplicant.conf + fi + chmod 0660 /data/misc/wifi/${i}_supplicant.conf + chown wifi:system /data/misc/wifi/${i}_supplicant.conf +done + if [ -f /vendor/bin/mtkmal ];then - if [ "$(getprop persist.mtk_ims_support)" == 1 -o "$(getprop persist.mtk_epdg_support)" == 1 ];then + if [ "$(getprop persist.mtk_ims_support)" = 1 ] || [ "$(getprop persist.mtk_epdg_support)" = 1 ];then setprop persist.mtk_ims_support 0 setprop persist.mtk_epdg_support 0 reboot fi fi +if grep -qF android.hardware.boot /vendor/manifest.xml || grep -qF android.hardware.boot /vendor/etc/vintf/manifest.xml ;then + bootctl mark-boot-successful +fi + +setprop ctl.restart sec-light-hal-2-0 +if find /sys/firmware -name support_fod |grep -qE .;then + setprop ctl.restart vendor.fps_hal +fi + #Clear looping services sleep 30 getprop | \ grep restarting | \ sed -nE -e 's/\[([^]]*).*/\1/g' -e 's/init.svc.(.*)/\1/p' | - while read svc ;do - setprop ctl.stop $svc + while read -r svc ;do + setprop ctl.stop "$svc" done - -if grep -qF android.hardware.boot /vendor/manifest.xml;then - bootctl mark-boot-successful -fi diff --git a/phh-securize.sh b/phh-securize.sh new file mode 100644 index 0000000..447b37f --- /dev/null +++ b/phh-securize.sh @@ -0,0 +1,17 @@ +#!/system/bin/sh + +mount -o remount,rw / +mount -o remount,rw /system +remount + +touch /system/phh/secure +umount -l /system/xbin/su +rm /system/xbin/su +rm /system/bin/phh-su +rm /system/etc/init/su.rc +rm /system/bin/phh-securize.sh +rm -Rf /system/{app,priv-app}/me.phh.superuser/ +mount -o remount,ro / +mount -o remount,ro /system +sync +reboot diff --git a/phhgsi_a64_a/BoardConfig.mk b/phhgsi_a64_a/BoardConfig.mk index 228e190..d430bf8 100644 --- a/phhgsi_a64_a/BoardConfig.mk +++ b/phhgsi_a64_a/BoardConfig.mk @@ -1,7 +1,8 @@ -include build/make/target/board/generic_arm_a/BoardConfig.mk +include build/make/target/board/generic_arm_ab/BoardConfig.mk include device/phh/treble/board-base.mk ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1572864000 endif TARGET_USES_64_BIT_BINDER := true +BOARD_SYSTEMIMAGE_AS_SYSTEM := true diff --git a/phhgsi_a64_ab/BoardConfig.mk b/phhgsi_a64_ab/BoardConfig.mk new file mode 100644 index 0000000..b14acfa --- /dev/null +++ b/phhgsi_a64_ab/BoardConfig.mk @@ -0,0 +1,7 @@ +include build/make/target/board/generic_arm_ab/BoardConfig.mk +include device/phh/treble/board-base.mk + +ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1572864000 +endif +TARGET_USES_64_BIT_BINDER := true diff --git a/phhgsi_arm64_a/BoardConfig.mk b/phhgsi_arm64_a/BoardConfig.mk index 4cf5426..c9bc831 100644 --- a/phhgsi_arm64_a/BoardConfig.mk +++ b/phhgsi_arm64_a/BoardConfig.mk @@ -1,6 +1,7 @@ -include build/make/target/board/generic_arm64_a/BoardConfig.mk +include build/make/target/board/generic_arm64_ab/BoardConfig.mk include device/phh/treble/board-base.mk ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) -BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2147483648 +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2080374784 endif +BOARD_SYSTEMIMAGE_AS_SYSTEM := true diff --git a/phhgsi_arm64_ab/BoardConfig.mk b/phhgsi_arm64_ab/BoardConfig.mk index 2b59f0f..be9333e 100644 --- a/phhgsi_arm64_ab/BoardConfig.mk +++ b/phhgsi_arm64_ab/BoardConfig.mk @@ -4,3 +4,5 @@ include device/phh/treble/board-base.mk ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2147483648 endif + +BUILD_BROKEN_PHONY_TARGETS := true diff --git a/phhgsi_arm_a/BoardConfig.mk b/phhgsi_arm_a/BoardConfig.mk index 2cf15bc..36a8bf4 100644 --- a/phhgsi_arm_a/BoardConfig.mk +++ b/phhgsi_arm_a/BoardConfig.mk @@ -1,6 +1,9 @@ -include build/make/target/board/generic_arm_a/BoardConfig.mk +include build/make/target/board/generic_arm_ab/BoardConfig.mk include device/phh/treble/board-base.mk ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) -BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1572864000 +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1313583104 endif + +TARGET_USES_64_BIT_BINDER := false +BOARD_SYSTEMIMAGE_AS_SYSTEM := true diff --git a/phhgsi_arm_ab/BoardConfig.mk b/phhgsi_arm_ab/BoardConfig.mk index 18aaace..a9a4fe3 100644 --- a/phhgsi_arm_ab/BoardConfig.mk +++ b/phhgsi_arm_ab/BoardConfig.mk @@ -4,3 +4,4 @@ include device/phh/treble/board-base.mk ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),) BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1073741824 endif +TARGET_USES_64_BIT_BINDER := false diff --git a/privapp-permissions-me.phh.treble.app.xml b/privapp-permissions-me.phh.treble.app.xml new file mode 100644 index 0000000..7db0c26 --- /dev/null +++ b/privapp-permissions-me.phh.treble.app.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/rw-system.sh b/rw-system.sh index 086c77e..3373775 100644 --- a/rw-system.sh +++ b/rw-system.sh @@ -7,57 +7,73 @@ #fi vndk="$(getprop persist.sys.vndk)" +[ -z "$vndk" ] && vndk="$(getprop ro.vndk.version |grep -oE '^[0-9]+')" + +if [ "$vndk" = 26 ];then + resetprop ro.vndk.version 26 +fi + setprop sys.usb.ffs.aio_compat true +setprop persist.adb.nonblocking_ffs false fixSPL() { - if [ "$(getprop ro.product.cpu.abi)" == "armeabi-v7a" ];then - setprop ro.keymaster.mod 'AOSP on ARM32' + if [ "$(getprop ro.product.cpu.abi)" = "armeabi-v7a" ]; then + setprop ro.keymaster.mod 'AOSP on ARM32' else - setprop ro.keymaster.mod 'AOSP on ARM64' + setprop ro.keymaster.mod 'AOSP on ARM64' fi - img="$(find /dev/block -type l -name kernel$(getprop ro.boot.slot_suffix) |grep by-name |head -n 1)" - [ -z "$img" ] && img="$(find /dev/block -type l -name boot$(getprop ro.boot.slot_suffix) |grep by-name |head -n 1)" - if [ -n "$img" ];then + img="$(find /dev/block -type l -name kernel"$(getprop ro.boot.slot_suffix)" | grep by-name | head -n 1)" + [ -z "$img" ] && img="$(find /dev/block -type l -name boot"$(getprop ro.boot.slot_suffix)" | grep by-name | head -n 1)" + if [ -n "$img" ]; then #Rewrite SPL/Android version if needed - Arelease="$(getSPL $img android)" + Arelease="$(getSPL "$img" android)" setprop ro.keymaster.xxx.release "$Arelease" - setprop ro.keymaster.xxx.security_patch "$(getSPL $img spl)" + setprop ro.keymaster.xxx.security_patch "$(getSPL "$img" spl)" + setprop ro.keymaster.brn Android + getprop ro.vendor.build.fingerprint | grep -qiE '^samsung/' && return 0 for f in \ - /vendor/lib64/hw/android.hardware.keymaster@3.0-impl-qti.so /vendor/lib/hw/android.hardware.keymaster@3.0-impl-qti.so \ - /system/lib64/vndk-26/libsoftkeymasterdevice.so /vendor/bin/teed \ - /system/lib64/vndk/libsoftkeymasterdevice.so /system/lib/vndk/libsoftkeymasterdevice.so \ - /system/lib/vndk-26/libsoftkeymasterdevice.so \ - /system/lib/vndk-27/libsoftkeymasterdevice.so /system/lib64/vndk-27/libsoftkeymasterdevice.so \ - ;do - [ ! -f $f ] && continue - ctxt="$(ls -lZ $f |grep -oE 'u:object_r:[^:]*:s0')" - b="$(echo "$f"|tr / _)" + /vendor/lib64/hw/android.hardware.keymaster@3.0-impl-qti.so /vendor/lib/hw/android.hardware.keymaster@3.0-impl-qti.so \ + /system/lib64/vndk-26/libsoftkeymasterdevice.so /vendor/bin/teed \ + /system/lib64/vndk/libsoftkeymasterdevice.so /system/lib/vndk/libsoftkeymasterdevice.so \ + /system/lib/vndk-26/libsoftkeymasterdevice.so \ + /system/lib/vndk-27/libsoftkeymasterdevice.so /system/lib64/vndk-27/libsoftkeymasterdevice.so \ + /vendor/lib/libkeymaster3device.so /vendor/lib64/libkeymaster3device.so ; do + [ ! -f "$f" ] && continue + # shellcheck disable=SC2010 + ctxt="$(ls -lZ "$f" | grep -oE 'u:object_r:[^:]*:s0')" + b="$(echo "$f" | tr / _)" - cp -a $f /mnt/phh/$b + cp -a "$f" "/mnt/phh/$b" sed -i \ - -e 's/ro.build.version.release/ro.keymaster.xxx.release/g' \ - -e 's/ro.build.version.security_patch/ro.keymaster.xxx.security_patch/g' \ - -e 's/ro.product.model/ro.keymaster.mod/g' \ - /mnt/phh/$b - chcon "$ctxt" /mnt/phh/$b - mount -o bind /mnt/phh/$b $f + -e 's/ro.build.version.release/ro.keymaster.xxx.release/g' \ + -e 's/ro.build.version.security_patch/ro.keymaster.xxx.security_patch/g' \ + -e 's/ro.product.model/ro.keymaster.mod/g' \ + -e 's/ro.product.brand/ro.keymaster.brn/g' \ + "/mnt/phh/$b" + chcon "$ctxt" "/mnt/phh/$b" + mount -o bind "/mnt/phh/$b" "$f" done - if [ "$(getprop init.svc.keymaster-3-0)" == "running" ];then - setprop ctl.restart keymaster-3-0 - fi - if [ "$(getprop init.svc.teed)" == "running" ];then - setprop ctl.restart teed - fi + if [ "$(getprop init.svc.keymaster-3-0)" = "running" ]; then + setprop ctl.restart keymaster-3-0 + fi + if [ "$(getprop init.svc.teed)" = "running" ]; then + setprop ctl.restart teed + fi fi } changeKeylayout() { cp -a /system/usr/keylayout /mnt/phh/keylayout changed=false + if grep -q vendor.huawei.hardware.biometrics.fingerprint /vendor/etc/vintf/manifest.xml; then + changed=true + cp /system/phh/huawei/fingerprint.kl /mnt/phh/keylayout/fingerprint.kl + chmod 0644 /mnt/phh/keylayout/fingerprint.kl + fi - if getprop ro.vendor.build.fingerprint | \ - grep -qE -e ".*(crown|star)[q2]*lte.*" -e ".*(SC-0[23]K|SCV3[89]).*";then + if getprop ro.vendor.build.fingerprint | + grep -qE -e "^samsung"; then changed=true cp /system/phh/samsung-gpio_keys.kl /mnt/phh/keylayout/gpio_keys.kl @@ -65,50 +81,87 @@ changeKeylayout() { chmod 0644 /mnt/phh/keylayout/gpio_keys.kl /mnt/phh/keylayout/sec_touchscreen.kl fi - if getprop ro.vendor.build.fingerprint |grep -iq \ + if getprop ro.vendor.build.fingerprint | grep -iq \ -e xiaomi/polaris -e xiaomi/sirius -e xiaomi/dipper \ -e xiaomi/wayne -e xiaomi/jasmine -e xiaomi/jasmine_sprout \ - -e xiaomi/platina -e iaomi/perseus -e xiaomi/ysl \ - -e xiaomi/nitrogen;then - cp /system/phh/empty /mnt/phh/keylayout/uinput-goodix.kl - chmod 0644 /mnt/phh/keylayout/uinput-goodix.kl - cp /system/phh/empty /mnt/phh/keylayout/uinput-fpc.kl - chmod 0644 /mnt/phh/keylayout/uinput-fpc.kl - changed=true + -e xiaomi/platina -e iaomi/perseus -e xiaomi/ysl -e Redmi/begonia\ + -e xiaomi/nitrogen -e xiaomi/daisy -e xiaomi/sakura \ + -e xiaomi/whyred -e xiaomi/tulip -e xiaomi/onc; then + if [ ! -f /mnt/phh/keylayout/uinput-goodix.kl ]; then + cp /system/phh/empty /mnt/phh/keylayout/uinput-goodix.kl + chmod 0644 /mnt/phh/keylayout/uinput-goodix.kl + changed=true + fi + if [ ! -f /mnt/phh/keylayout/uinput-fpc.kl ]; then + cp /system/phh/empty /mnt/phh/keylayout/uinput-fpc.kl + chmod 0644 /mnt/phh/keylayout/uinput-fpc.kl + changed=true + fi fi - if getprop ro.vendor.build.fingerprint |grep -qi oneplus/oneplus6/oneplus6;then + if getprop ro.vendor.build.fingerprint | grep -qi oneplus/oneplus6/oneplus6; then cp /system/phh/oneplus6-synaptics_s3320.kl /mnt/phh/keylayout/synaptics_s3320.kl chmod 0644 /mnt/phh/keylayout/synaptics_s3320.kl changed=true fi - if getprop ro.vendor.build.fingerprint |grep -iq -e iaomi/perseus;then + if getprop ro.vendor.build.fingerprint | grep -iq -e iaomi/perseus -e iaomi/cepheus; then cp /system/phh/mimix3-gpio-keys.kl /mnt/phh/keylayout/gpio-keys.kl chmod 0644 /mnt/phh/keylayout/gpio-keys.kl changed=true fi - if getprop ro.vendor.build.fingerprint |grep -iq -E -e '^Sony/G834';then - cp /system/phh/sony-gpio-keys.kl /mnt/phh/keylayout/gpio-keys.kl - chmod 0644 /mnt/phh/keylayout/gpio-keys.kl - changed=true + if getprop ro.vendor.build.fingerprint | grep -iq -E -e '^Sony/G834'; then + cp /system/phh/sony-gpio-keys.kl /mnt/phh/keylayout/gpio-keys.kl + chmod 0644 /mnt/phh/keylayout/gpio-keys.kl + changed=true fi - if [ "$changed" == true ];then + if getprop ro.vendor.build.fingerprint |grep -iq -E -e '^Nokia/Panther';then + cp /system/phh/nokia-soc_gpio_keys.kl /mnt/phh/keylayout/soc_gpio_keys.kl + chmod 0644 /mnt/phh/keylayout/soc_gpio_keys.kl + changed=true + fi + + if getprop ro.vendor.build.fingerprint |grep -iq -E -e '^Lenovo/' && [ -f /sys/devices/virtual/touch/tp_dev/gesture_on ];then + cp /system/phh/lenovo-synaptics_dsx.kl /mnt/phh/keylayout/synaptics_dsx.kl + chmod 0644 /mnt/phh/keylayout/synaptics_dsx.kl + changed=true + fi + + if getprop ro.build.overlay.deviceid |grep -q RMX1931;then + cp /system/phh/oppo-touchpanel.kl /mnt/phh/keylayout/touchpanel.kl + chmod 0644 /mnt/phh/keylayout/touchpanel.kl + changed=true + fi + + if [ "$changed" = true ]; then mount -o bind /mnt/phh/keylayout /system/usr/keylayout restorecon -R /system/usr/keylayout fi } -if mount -o remount,rw /system;then - resize2fs $(grep ' /system ' /proc/mounts |cut -d ' ' -f 1) || true -elif mount -o remount,rw /;then - resize2fs /dev/root || true +if mount -o remount,rw /system; then + resize2fs "$(grep ' /system ' /proc/mounts | cut -d ' ' -f 1)" || true +elif mount -o remount,rw /; then + major="$(stat -c '%D' /.|sed -E 's/^([0-9a-f]+)([0-9a-f]{2})$/\1/g')" + minor="$(stat -c '%D' /.|sed -E 's/^([0-9a-f]+)([0-9a-f]{2})$/\2/g')" + mknod /dev/tmp-phh b $((0x$major)) $((0x$minor)) + resize2fs /dev/root || true + resize2fs /dev/tmp-phh || true fi mount -o remount,ro /system || true mount -o remount,ro / || true +if [ -b /dev/block/bootdevice/by-name/oppodycnvbk ];then + for devname in RMX1931;do + if grep -q $devname /dev/block/bootdevice/by-name/oppodycnvbk;then + setprop ro.build.overlay.deviceid $devname + fi + done +fi + + mkdir -p /mnt/phh/ mount -t tmpfs -o rw,nodev,relatime,mode=755,gid=0 none /mnt/phh || true mkdir /mnt/phh/empty_dir @@ -116,38 +169,50 @@ fixSPL changeKeylayout +mount /system/phh/empty /vendor/bin/vendor.samsung.security.proca@1.0-service || true -if grep vendor.huawei.hardware.biometrics.fingerprint /vendor/manifest.xml;then +if grep vendor.huawei.hardware.biometrics.fingerprint /vendor/manifest.xml; then mount -o bind system/phh/huawei/fingerprint.kl /vendor/usr/keylayout/fingerprint.kl fi -if ! grep android.hardware.biometrics.fingerprint /vendor/manifest.xml;then +if ! grep android.hardware.biometrics.fingerprint /vendor/manifest.xml && ! grep android.hardware.biometrics.fingerprint /vendor/etc/vintf/manifest.xml; then mount -o bind system/phh/empty /system/etc/permissions/android.hardware.fingerprint.xml fi -if getprop ro.hardware |grep -qF qcom && [ -f /sys/class/backlight/panel0-backlight/max_brightness ] && \ - grep -qvE '^255$' /sys/class/backlight/panel0-backlight/max_brightness;then - setprop persist.sys.qcom-brightness $(cat /sys/class/backlight/panel0-backlight/max_brightness) +if ! grep android.hardware.bluetooth /vendor/manifest.xml && ! grep android.hardware.bluetooth /vendor/etc/vintf/manifest.xml; then + mount -o bind system/phh/empty /system/etc/permissions/android.hardware.bluetooth.xml + mount -o bind system/phh/empty /system/etc/permissions/android.hardware.bluetooth_le.xml +fi + +if getprop ro.hardware | grep -qF qcom && [ -f /sys/class/backlight/panel0-backlight/max_brightness ] && + grep -qvE '^255$' /sys/class/backlight/panel0-backlight/max_brightness; then + setprop persist.sys.qcom-brightness "$(cat /sys/class/backlight/panel0-backlight/max_brightness)" fi #Sony don't use Qualcomm HAL, so they don't have their mess -if getprop ro.vendor.build.fingerprint |grep -qE 'Sony/';then +if getprop ro.vendor.build.fingerprint | grep -qE 'Sony/'; then setprop persist.sys.qcom-brightness -1 fi -if getprop ro.vendor.build.fingerprint |grep -qi oneplus/oneplus6/oneplus6;then - resize2fs /dev/block/platform/soc/1d84000.ufshc/by-name/userdata +# Xiaomi MiA3 uses OLED display which works best with this setting +if getprop ro.vendor.build.fingerprint | grep -iq \ + -e iaomi/laurel_sprout;then + setprop persist.sys.qcom-brightness -1 fi -if getprop ro.vendor.build.fingerprint |grep -q full_k50v1_64 || getprop ro.hardware |grep -q mt6580 ;then - setprop persist.sys.overlay.nightmode false +if getprop ro.vendor.build.fingerprint | grep -qi oneplus/oneplus6/oneplus6; then + resize2fs /dev/block/platform/soc/1d84000.ufshc/by-name/userdata fi -if getprop ro.wlan.mtk.wifi.5g |grep -q 1;then - setprop persist.sys.overlay.wifi5g true +if getprop ro.vendor.build.fingerprint | grep -q full_k50v1_64 || getprop ro.hardware | grep -q mt6580; then + setprop persist.sys.overlay.nightmode false fi -if grep -qF 'mkdir /data/.fps 0770 system fingerp' vendor/etc/init/hw/init.mmi.rc;then +if getprop ro.wlan.mtk.wifi.5g | grep -q 1; then + setprop persist.sys.overlay.wifi5g true +fi + +if grep -qF 'mkdir /data/.fps 0770 system fingerp' vendor/etc/init/hw/init.mmi.rc; then mkdir -p /data/.fps chmod 0770 /data/.fps chown system:9015 /data/.fps @@ -156,112 +221,354 @@ if grep -qF 'mkdir /data/.fps 0770 system fingerp' vendor/etc/init/hw/init.mmi.r chown system:9015 /sys/devices/soc/soc:fpc_fpc1020/irq_cnt fi -if getprop ro.vendor.build.fingerprint |grep -q -i \ +if getprop ro.vendor.build.fingerprint | grep -q -i \ -e xiaomi/clover -e xiaomi/wayne -e xiaomi/sakura \ -e xiaomi/nitrogen -e xiaomi/whyred -e xiaomi/platina \ - -e xiaomi/ysl;then - setprop persist.sys.qcom-brightness $(cat /sys/class/leds/lcd-backlight/max_brightness) + -e xiaomi/ysl -e nubia/nx60 -e nubia/nx61 -e xiaomi/tulip -e Redmi/begonia\ + -e xiaomi/lavender -e xiaomi/olive -e xiaomi/olivelite -e xiaomi/pine; then + setprop persist.sys.qcom-brightness "$(cat /sys/class/leds/lcd-backlight/max_brightness)" fi -if getprop ro.vendor.build.fingerprint |grep -iq \ - -e Xiaomi/beryllium/beryllium -e Xiaomi/sirius/sirius \ - -e Xiaomi/dipper/dipper -e Xiaomi/ursa/ursa -e Xiaomi/polaris/polaris \ - -e motorola/ali/ali -e iaomi/perseus/perseus -e iaomi/platina/platina \ - -e iaomi/equuleus/equuleus -e motorola/nora -e xiaomi/nitrogen \ - -e motorola/hannah;then +if getprop ro.vendor.product.device |grep -iq -e RMX1801 -e RMX1803 -e RMX1807;then + setprop persist.sys.qcom-brightness "$(cat /sys/class/leds/lcd-backlight/max_brightness)" +fi + +if getprop ro.vendor.build.fingerprint | grep -iq \ + -e Xiaomi/beryllium/beryllium -e Xiaomi/sirius/sirius \ + -e Xiaomi/dipper/dipper -e Xiaomi/ursa/ursa -e Xiaomi/polaris/polaris \ + -e motorola/ali/ali -e iaomi/perseus/perseus -e iaomi/platina/platina \ + -e iaomi/equuleus/equuleus -e motorola/nora -e xiaomi/nitrogen \ + -e motorola/hannah -e motorola/james -e motorola/pettyl -e iaomi/cepheus \ + -e iaomi/grus -e xiaomi/cereus -e iaomi/raphael -e iaomi/davinci \ + -e iaomi/ginkgo -e iaomi/laurel_sprout;then mount -o bind /mnt/phh/empty_dir /vendor/lib64/soundfx mount -o bind /mnt/phh/empty_dir /vendor/lib/soundfx + setprop ro.audio.ignore_effects true fi -if [ "$(getprop ro.vendor.product.manufacturer)" == "motorola" ];then - if getprop ro.vendor.product.device |grep -q -e nora -e ali -e hannah;then - mount -o bind /mnt/phh/empty_dir /vendor/lib64/soundfx - mount -o bind /mnt/phh/empty_dir /vendor/lib/soundfx +if [ "$(getprop ro.vendor.product.manufacturer)" = "motorola" ] || [ "$(getprop ro.product.vendor.manufacturer)" = "motorola" ]; then + if getprop ro.vendor.product.device | grep -q -e nora -e ali -e hannah -e evert -e jeter -e deen -e james -e pettyl -e jater; then + if [ "$vndk" -ge 28 ]; then + f="/vendor/lib/libeffects.so" + # shellcheck disable=SC2010 + ctxt="$(ls -lZ $f | grep -oE 'u:object_r:[^:]*:s0')" + b="$(echo "$f" | tr / _)" + + cp -a $f "/mnt/phh/$b" + sed -i \ + 's/%zu errors during loading of configuration: %s/%zu errors during loading of configuration: ss/g' \ + "/mnt/phh/$b" + chcon "$ctxt" "/mnt/phh/$b" + mount -o bind "/mnt/phh/$b" $f + else + mount -o bind /mnt/phh/empty_dir /vendor/lib64/soundfx + mount -o bind /mnt/phh/empty_dir /vendor/lib/soundfx + fi fi fi -if getprop ro.vendor.build.fingerprint |grep -q -i -e xiaomi/wayne -e xiaomi/jasmine;then +if getprop ro.vendor.build.fingerprint | grep -q -i -e xiaomi/wayne -e xiaomi/jasmine; then setprop persist.imx376_sunny.low.lux 310 setprop persist.imx376_sunny.light.lux 280 setprop persist.imx376_ofilm.low.lux 310 setprop persist.imx376_ofilm.light.lux 280 + echo "none" > /sys/class/leds/led:torch_2/trigger fi -for f in /vendor/lib/mtk-ril.so /vendor/lib64/mtk-ril.so /vendor/lib/libmtk-ril.so /vendor/lib64/libmtk-ril.so;do +for f in /vendor/lib/mtk-ril.so /vendor/lib64/mtk-ril.so /vendor/lib/libmtk-ril.so /vendor/lib64/libmtk-ril.so; do [ ! -f $f ] && continue - ctxt="$(ls -lZ $f |grep -oE 'u:object_r:[^:]*:s0')" - b="$(echo "$f"|tr / _)" + # shellcheck disable=SC2010 + ctxt="$(ls -lZ "$f" | grep -oE 'u:object_r:[^:]*:s0')" + b="$(echo "$f" | tr / _)" - cp -a $f /mnt/phh/$b + cp -a "$f" "/mnt/phh/$b" sed -i \ -e 's/AT+EAIC=2/AT+EAIC=3/g' \ - /mnt/phh/$b - chcon "$ctxt" /mnt/phh/$b - mount -o bind /mnt/phh/$b $f + "/mnt/phh/$b" + chcon "$ctxt" "/mnt/phh/$b" + mount -o bind "/mnt/phh/$b" "$f" + + setprop persist.sys.phh.radio.force_cognitive true + setprop persist.sys.radio.ussd.fix true done +if getprop ro.vendor.build.fingerprint | grep -iq -e iaomi/cactus -e iaomi/cereus; then + setprop debug.stagefright.omx_default_rank.sw-audio 1 + setprop debug.stagefright.omx_default_rank 0 +fi + +if getprop ro.vendor.build.fingerprint | grep -iq -e xiaomi/ginkgo -e xiaomi/willow; then + mount -o bind /system/phh/empty /vendor/lib/soundfx/libvolumelistener.so +fi + +mount -o bind /system/phh/empty /vendor/lib/libpdx_default_transport.so +mount -o bind /system/phh/empty /vendor/lib64/libpdx_default_transport.so + mount -o bind /system/phh/empty /vendor/overlay/SysuiDarkTheme/SysuiDarkTheme.apk || true mount -o bind /system/phh/empty /vendor/overlay/SysuiDarkTheme/SysuiDarkThemeOverlay.apk || true -if grep -qF 'PowerVR Rogue GE8100' /vendor/lib/egl/GLESv1_CM_mtk.so || \ - grep -qF 'PowerVR Rogue' /vendor/lib/egl/libGLESv1_CM_mtk.so || \ - (getprop ro.product.board | grep -qE -e msm8917 -e msm8937 -e msm8940);then +if grep -qF 'PowerVR Rogue GE8100' /vendor/lib/egl/GLESv1_CM_mtk.so || + grep -qF 'PowerVR Rogue' /vendor/lib/egl/libGLESv1_CM_mtk.so || + ( (getprop ro.product.board; getprop ro.board.platform) | grep -qiE -e msm8917 -e msm8937 -e msm8940); then - setprop debug.hwui.renderer opengl + setprop debug.hwui.renderer opengl + setprop ro.skia.ignore_swizzle true + if [ "$vndk" = 26 ] || [ "$vndk" = 27 ];then + setprop debug.hwui.use_buffer_age false + + fi fi #If we have both Samsung and AOSP power hal, take Samsung's -if [ -f /vendor/bin/hw/vendor.samsung.hardware.miscpower@1.0-service ];then - mount -o bind /system/phh/empty /vendor/bin/hw/android.hardware.power@1.0-service +if [ -f /vendor/bin/hw/vendor.samsung.hardware.miscpower@1.0-service ] && [ "$vndk" -lt 28 ]; then + mount -o bind /system/phh/empty /vendor/bin/hw/android.hardware.power@1.0-service fi -if [ "$vndk" == 27 -o "$vndk" == 26 ];then +if [ "$vndk" = 27 ] || [ "$vndk" = 26 ]; then mount -o bind /system/phh/libnfc-nci-oreo.conf /system/etc/libnfc-nci.conf fi -if busybox_phh unzip -p /vendor/app/ims/ims.apk classes.dex |grep -qF -e Landroid/telephony/ims/feature/MmTelFeature -e Landroid/telephony/ims/feature/MMTelFeature;then +if busybox_phh unzip -p /vendor/app/ims/ims.apk classes.dex | grep -qF -e Landroid/telephony/ims/feature/MmTelFeature -e Landroid/telephony/ims/feature/MMTelFeature; then mount -o bind /system/phh/empty /vendor/app/ims/ims.apk fi -if getprop ro.hardware |grep -qF samsungexynos;then - setprop debug.sf.latch_unsignaled 1 +if getprop ro.hardware | grep -qF samsungexynos -e exynos; then + setprop debug.sf.latch_unsignaled 1 fi -if getprop ro.product.model |grep -qF ANE;then - setprop debug.sf.latch_unsignaled 1 +if getprop ro.product.model | grep -qF ANE; then + setprop debug.sf.latch_unsignaled 1 +fi + +if getprop ro.vendor.product.device | grep -q -e nora -e rhannah; then + setprop debug.sf.latch_unsignaled 1 fi -if getprop ro.vendor.build.fingerprint |grep -iq -E -e 'huawei|honor' || getprop persist.sys.overlay.huawei |grep -iq -E -e 'true' ; then - p=/product/etc/nfc/libnfc_nxp_*_*.conf - mount -o bind "$p" /system/etc/libnfc-nxp.conf || \ - mount -o bind /product/etc/libnfc-nxp.conf /system/etc/libnfc-nxp.conf || true - - p=/product/etc/nfc/libnfc_brcm_*_*.conf - mount -o bind "$p" /system/etc/libnfc-brcm.conf || \ - mount -o bind /product/etc/libnfc-nxp.conf /system/etc/libnfc-nxp.conf || true - - mount -o bind /system/phh/libnfc-nci-huawei.conf /system/etc/libnfc-nci.conf +if getprop ro.vendor.build.fingerprint | grep -iq -e xiaomi/daisy; then + setprop debug.sf.latch_unsignaled 1 + setprop debug.sf.enable_hwc_vds 1 fi -if getprop ro.vendor.build.fingerprint | grep -qE -e ".*(crown|star)[q2]*lte.*" -e ".*(SC-0[23]K|SCV3[89]).*";then - for f in /vendor/lib/libfloatingfeature.so /vendor/lib64/libfloatingfeature.so;do - [ ! -f $f ] && continue - ctxt="$(ls -lZ $f |grep -oE 'u:object_r:[^:]*:s0')" - b="$(echo "$f"|tr / _)" +if getprop ro.vendor.build.fingerprint | grep -iq -E -e 'huawei|honor' || getprop persist.sys.overlay.huawei | grep -iq -E -e 'true'; then + p=/product/etc/nfc/libnfc_nxp_*_*.conf + mount -o bind "$p" /system/etc/libnfc-nxp.conf || + mount -o bind /product/etc/libnfc-nxp.conf /system/etc/libnfc-nxp.conf || true - cp -a $f /mnt/phh/$b - sed -i \ - -e 's;/system/etc/floating_feature.xml;/system/ph/sam-9810-flo_feat.xml;g' \ - /mnt/phh/$b - chcon "$ctxt" /mnt/phh/$b - mount -o bind /mnt/phh/$b $f - done + p=/product/etc/nfc/libnfc_brcm_*_*.conf + mount -o bind "$p" /system/etc/libnfc-brcm.conf || + mount -o bind /product/etc/libnfc-nxp.conf /system/etc/libnfc-nxp.conf || true + + mount -o bind /system/phh/libnfc-nci-huawei.conf /system/etc/libnfc-nci.conf fi -if getprop ro.hardware |grep -q samsungexynos7870;then - if [ "$vndk" -le 27 ];then - setprop persist.sys.phh.sdk_override /vendor/bin/hw/rild=27 - fi +if getprop ro.vendor.build.fingerprint | grep -qE -e ".*(crown|star)[q2]*lte.*" -e ".*(SC-0[23]K|SCV3[89]).*" && [ "$vndk" -lt 28 ]; then + for f in /vendor/lib/libfloatingfeature.so /vendor/lib64/libfloatingfeature.so; do + [ ! -f "$f" ] && continue + # shellcheck disable=SC2010 + ctxt="$(ls -lZ "$f" | grep -oE 'u:object_r:[^:]*:s0')" + b="$(echo "$f" | tr / _)" + + cp -a "$f" "/mnt/phh/$b" + sed -i \ + -e 's;/system/etc/floating_feature.xml;/system/ph/sam-9810-flo_feat.xml;g' \ + "/mnt/phh/$b" + chcon "$ctxt" "/mnt/phh/$b" + mount -o bind "/mnt/phh/$b" "$f" + + setprop ro.audio.monitorRotation true + done +fi + +# This matches both Razer Phone 1 & 2 +if getprop ro.vendor.build.fingerprint |grep -qE razer/cheryl;then + setprop ro.audio.monitorRotation true +fi + +if getprop ro.vendor.build.fingerprint | grep -qiE '^samsung'; then + if getprop ro.hardware | grep -q qcom; then + setprop persist.sys.overlay.devinputjack false + fi + + if getprop ro.hardware | grep -q -e samsungexynos7870 -e qcom; then + if [ "$vndk" -le 27 ]; then + setprop persist.sys.phh.sdk_override /vendor/bin/hw/rild=27 + fi + fi +fi + +if getprop ro.vendor.build.fingerprint | grep -qE '^xiaomi/wayne/wayne.*'; then + # Fix camera on DND, ugly workaround but meh + setprop audio.camerasound.force true fi mount -o bind /mnt/phh/empty_dir /vendor/etc/audio || true + +for f in /vendor/lib{,64}/hw/com.qti.chi.override.so;do + [ ! -f $f ] && continue + # shellcheck disable=SC2010 + ctxt="$(ls -lZ "$f" | grep -oE 'u:object_r:[^:]*:s0')" + b="$(echo "$f" | tr / _)" + + cp -a "$f" "/mnt/phh/$b" + sed -i \ + -e 's/ro.product.manufacturer/sys.phh.xx.manufacturer/g' \ + "/mnt/phh/$b" + chcon "$ctxt" "/mnt/phh/$b" + mount -o bind "/mnt/phh/$b" "$f" + + setprop sys.phh.xx.manufacturer "$(getprop ro.product.vendor.manufacturer)" +done + +if [ -n "$(getprop ro.boot.product.hardware.sku)" ] && [ -z "$(getprop ro.hw.oemName)" ];then + setprop ro.hw.oemName "$(getprop ro.boot.product.hardware.sku)" +fi + +if getprop ro.vendor.build.fingerprint | grep -qiE '^samsung/' && [ "$vndk" -ge 28 ];then + setprop persist.sys.phh.samsung_fingerprint 0 + #obviously broken perms + if [ "$(stat -c '%A' /sys/class/sec/tsp/ear_detect_enable)" == "-rw-rw-r--" ] && + [ "$(stat -c '%U' /sys/class/sec/tsp/ear_detect_enable)" == "root" ] && + [ "$(stat -c '%G' /sys/class/sec/tsp/ear_detect_enable)" == "root" ];then + + chcon u:object_r:sysfs_ss_writable:s0 /sys/class/sec/tsp/ear_detect_enable + chown system /sys/class/sec/tsp/ear_detect_enable + + chcon u:object_r:sysfs_ss_writable:s0 /sys/class/sec/tsp/cmd{,_list,_result,_status} + chown system /sys/class/sec/tsp/cmd{,_list,_result,_status} + + chown system /sys/class/power_supply/battery/wc_tx_en + chcon u:object_r:sysfs_app_writable:s0 /sys/class/power_supply/battery/wc_tx_en + + fi + + if [ "$(stat -c '%U' /sys/class/sec/tsp/input/enabled)" == "root" ] && + [ "$(stat -c '%G' /sys/class/sec/tsp/input/enabled)" == "root" ];then + chown system:system /sys/class/sec/tsp/input/enabled + chcon u:object_r:sysfs_ss_writable:s0 /sys/class/sec/tsp/input/enabled + setprop ctl.restart sec-miscpower-1-0 + fi +fi + +if [ -f /system/phh/secure ];then + copyprop() { + p="$(getprop "$2")" + if [ "$p" ]; then + resetprop "$1" "$(getprop "$2")" + fi + } + + copyprop ro.build.device ro.vendor.build.device + copyprop ro.system.build.fingerprint ro.vendor.build.fingerprint + copyprop ro.bootimage.build.fingerprint ro.vendor.build.fingerprint + copyprop ro.build.fingerprint ro.vendor.build.fingerprint + copyprop ro.build.device ro.vendor.product.device + copyprop ro.product.system.device ro.vendor.product.device + copyprop ro.product.device ro.vendor.product.device + copyprop ro.product.system.device ro.product.vendor.device + copyprop ro.product.device ro.product.vendor.device + copyprop ro.product.system.name ro.vendor.product.name + copyprop ro.product.name ro.vendor.product.name + copyprop ro.product.system.name ro.product.vendor.device + copyprop ro.product.name ro.product.vendor.device + copyprop ro.system.product.brand ro.vendor.product.brand + copyprop ro.product.brand ro.vendor.product.brand + copyprop ro.product.system.model ro.vendor.product.model + copyprop ro.product.model ro.vendor.product.model + copyprop ro.product.system.model ro.product.vendor.model + copyprop ro.product.model ro.product.vendor.model + copyprop ro.build.product ro.vendor.product.model + copyprop ro.build.product ro.product.vendor.model + copyprop ro.system.product.manufacturer ro.vendor.product.manufacturer + copyprop ro.product.manufacturer ro.vendor.product.manufacturer + copyprop ro.system.product.manufacturer ro.product.vendor.manufacturer + copyprop ro.product.manufacturer ro.product.vendor.manufacturer + copyprop ro.build.version.security_patch ro.vendor.build.security_patch + copyprop ro.build.version.security_patch ro.keymaster.xxx.security_patch + resetprop ro.build.tags release-keys + resetprop ro.boot.vbmeta.device_state locked + resetprop ro.boot.verifiedbootstate green + resetprop ro.boot.flash.locked 1 + resetprop ro.boot.veritymode enforcing + resetprop ro.boot.warranty_bit 0 + resetprop ro.warranty_bit 0 + resetprop ro.debuggable 0 + resetprop ro.secure 1 + resetprop ro.build.type user + resetprop ro.build.selinux 0 + + resetprop ro.adb.secure 1 + setprop ctl.restart adbd +fi + +for abi in "" 64;do + f=/vendor/lib$abi/libstagefright_foundation.so + if [ -f "$f" ];then + for vndk in 26 27 28;do + mount "$f" /system/lib$abi/vndk-$vndk/libstagefright_foundation.so + done + fi +done + +setprop ro.product.first_api_level "$vndk" + +if getprop ro.boot.boot_devices |grep -v , |grep -qE .;then + ln -s /dev/block/platform/$(getprop ro.boot.boot_devices) /dev/block/bootdevice +fi + +if [ -c /dev/dsm ];then + chown system:system /dev/dsm + chmod 0660 /dev/dsm + mkdir -p /data/sec_storage_data + chown system:system /data/sec_storage_data + chcon u:object_r:teecd_data_file_system:s0 /data/sec_storage_data + mount /data/sec_storage_data /sec_storage +fi + +#Try to detect DT2W +for ev in $(cd /sys/class/input;echo event*);do + if [ -f "/sys/class/input/$ev/device/device/gesture_mask" ];then + setprop persist.sys.phh.dt2w_evnode /dev/input/$ev + fi +done + +has_hostapd=false +for i in odm oem vendor product;do + if grep -qF android.hardware.wifi.hostapd /$i/etc/vintf/manifest.xml;then + has_hostapd=true + fi +done + +if [ "$has_hostapd" = false ];then + setprop persist.sys.phh.system_hostapd true +fi + +#Weird /odm/phone.prop Huawei stuff +HW_PRODID="$(sed -nE 's/.*productid=([0-9xa-f]*).*/\1/p' /proc/cmdline)" +[ -z "$HW_PRODID" ] && HW_PRODID="0x$(od -A none -t x1 /sys/firmware/devicetree/base/hisi,modem_id | sed s/' '//g)" +for part in odm vendor;do + if [ -f /$part/phone.prop ];then + if [ -n "$HW_PRODID" ];then + eval "$(awk 'BEGIN { a=0 }; /\[.*\].*/ { a=0 }; tolower($0) ~ /.*'"$HW_PRODID"'.*/ { a=1 }; /.*=.*/ { if(a == 1) print $0 }' /$part/phone.prop |sed -nE 's/(.*)=(.*)/setprop \1 "\2";/p')" + fi + fi +done + +# Fix sprd adf for surfaceflinger to start +# Somehow the names of the device nodes are incorrect on Android 10; fix them by mknod +if [ -e /dev/sprd-adf-dev ];then + mknod -m666 /dev/adf0 c 250 0 + mknod -m666 /dev/adf-interface0.0 c 250 1 + mknod -m666 /dev/adf-overlay-engine0.0 c 250 2 + restorecon /dev/adf0 /dev/adf-interface0.0 /dev/adf-overlay-engine0.0 + + # SPRD GL causes crashes in system_server (not currently observed in other processes) + # Tell the system to avoid using hardware acceleration in system_server. + setprop ro.config.avoid_gfx_accel true +fi + +# Fix manual network selection with old modem +# https://github.com/LineageOS/android_hardware_ril/commit/e3d006fa722c02fc26acdfcaa43a3f3a1378eba9 +if getprop ro.vendor.build.fingerprint | grep -iq \ + -e xiaomi/polaris -e xiaomi/whyred; then + setprop persist.sys.phh.radio.use_old_mnc_format true +fi diff --git a/sepolicy/asus.te b/sepolicy/asus.te new file mode 100644 index 0000000..64ff117 --- /dev/null +++ b/sepolicy/asus.te @@ -0,0 +1,5 @@ +allow cameraserver phhsu_exec:file rx_file_perms; + +type asus_motor_device, file_type; +allow cameraserver asus_motor_device:chr_file { open read write ioctl }; +allowxperm cameraserver asus_motor_device:chr_file ioctl { 0x4d02 }; diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts index fa4fff8..44049e9 100644 --- a/sepolicy/file_contexts +++ b/sepolicy/file_contexts @@ -3,6 +3,12 @@ /system/etc/usb_audio_policy_configuration.xml u:object_r:vendor_configs_file:s0 /system/bin/rw-system.sh u:object_r:phhsu_exec:s0 /system/bin/phh-on-boot.sh u:object_r:phhsu_exec:s0 +/system/bin/asus-motor u:object_r:phhsu_exec:s0 -/system/bin/fsck\.exfat u:object_r:fsck_exec:s0 +#/system/bin/fsck\.exfat u:object_r:fsck_exec:s0 /system/bin/fsck\.ntfs u:object_r:fsck_exec:s0 + +/bt_firmware(/.*)? u:object_r:bt_firmware_file:s0 + +/sec_storage(/.*)? u:object_r:teecd_data_file:s0 +/dev/dsm u:object_r:dmd_device:s0 diff --git a/sepolicy/huawei.te b/sepolicy/huawei.te index 4c1887f..f28947e 100644 --- a/sepolicy/huawei.te +++ b/sepolicy/huawei.te @@ -1 +1,11 @@ allow ueventd proc:file r_file_perms; +permissive ueventd; + +type teecd_data_file, file_type; +type dmd_device, file_type; +allow hal_fingerprint_server dmd_device:chr_file rw_file_perms; +allow hal_fingerprint_server sysfs:file rw_file_perms; + +type oeminfo_nvm, domain; +type oeminfo_nvm_device, file_type; +allowxperm oeminfo_nvm oeminfo_nvm_device:blk_file ioctl { 0x1260 }; diff --git a/sepolicy/lenovo.te b/sepolicy/lenovo.te new file mode 100644 index 0000000..19e3314 --- /dev/null +++ b/sepolicy/lenovo.te @@ -0,0 +1,4 @@ +type sysfs_tp, file_type; + +#Allow treble_app access to /sys/devices/virtual/touch/tp_dev/gesture_on +allow system_app sysfs_tp:file rw_file_perms; diff --git a/sepolicy/lmkd.te b/sepolicy/lmkd.te new file mode 100644 index 0000000..46e1a61 --- /dev/null +++ b/sepolicy/lmkd.te @@ -0,0 +1 @@ +allow lmkd self:capability sys_ptrace; diff --git a/sepolicy/mediatek.te b/sepolicy/mediatek.te new file mode 100644 index 0000000..cdab7c0 --- /dev/null +++ b/sepolicy/mediatek.te @@ -0,0 +1,3 @@ +type hal_graphics_allocator_default, domain; +type proc_ged, file_type; +allowxperm domain proc_ged:file ioctl { 0x6700-0x67ff }; diff --git a/sepolicy/qualcomm.te b/sepolicy/qualcomm.te index dcdf462..fba8ed8 100644 --- a/sepolicy/qualcomm.te +++ b/sepolicy/qualcomm.te @@ -1,3 +1,4 @@ +type bt_firmware_file, file_type; type rild, domain; #me.phh.treble.qti.audio is system-signed @@ -19,3 +20,7 @@ allow system_app hal_telephony_hwservice:hwservice_manager { find }; # SELinux : avc: denied { add } for interface=android.hardware.tetheroffload.control::IOffloadControl pid=15220 scontext=u:r:ipacm:s0 tcontext=u:object_r:hal_tetheroffload_hwservice:s0 tclass=hwservice_manager permissive=0 type ipacm, hwservice_manager_type; allow ipacm hal_tetheroffload_hwservice:hwservice_manager { add }; + +type rpmb_device, file_type; +allow tee rpmb_device:blk_file rw_file_perms; +allowxperm tee rpmb_device:blk_file ioctl { 0xb300-0xbfff }; diff --git a/sepolicy/su.te b/sepolicy/su.te index a1b1c01..800aaaa 100644 --- a/sepolicy/su.te +++ b/sepolicy/su.te @@ -1,5 +1,6 @@ type phhsu_daemon, domain, mlstrustedsubject; type phhsu_exec, exec_type, file_type; +type phhsu_daemon_tmpfs, file_type; typeattribute phhsu_daemon coredomain; permissive phhsu_daemon; @@ -39,6 +40,7 @@ net_domain(phhsu_daemon) hwbinder_use(phhsu_daemon) +allow domain untrusted_app_all_devpts:chr_file { getattr read write }; allow phhsu_daemon untrusted_app_all_devpts:chr_file { getattr read write open ioctl }; allow phhsu_daemon zygote_exec:file { execute read open execute_no_trans getattr }; @@ -51,8 +53,8 @@ allow phhsu_daemon self:file { rwx_file_perms create rename setattr unlink }; allow phhsu_daemon self:lnk_file { r_file_perms execmod }; allow phhsu_daemon adbd_exec:file { getattr read }; -allow phhsu_daemon { rootfs same_process_hal_file system_file }:file { mounton getattr }; -allow phhsu_daemon self:capability { sys_admin chown setuid setgid net_raw dac_override dac_read_search kill }; +allow phhsu_daemon { rootfs same_process_hal_file system_file tmpfs }:file { mounton getattr }; +allow phhsu_daemon self:capability { sys_admin chown setuid setgid net_raw dac_override dac_read_search kill fowner mknod }; allow phhsu_daemon self:capability2 { syslog }; allow phhsu_daemon shell_exec:file rx_file_perms; allow phhsu_daemon system_file:file { rx_file_perms entrypoint }; @@ -89,10 +91,11 @@ allow phhsu_daemon dex2oat_exec:file rx_file_perms; allow phhsu_daemon phhsu_daemon_tmpfs:file rwx_file_perms; -allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:file { rwx_file_perms create }; -allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:dir rw_dir_perms; +allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:file { rwx_file_perms create mounton setattr getattr relabelto relabelfrom }; +allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:lnk_file { rw_file_perms create mounton setattr getattr relabelto relabelfrom }; +allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:dir { rw_dir_perms create mounton setattr getattr relabelto relabelfrom }; allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:chr_file rwx_file_perms; -allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:blk_file rw_file_perms; +allow phhsu_daemon { proc_type dev_type exec_type file_type sysfs_type fs_type }:blk_file { rw_file_perms create }; allow phhsu_daemon device:file rwx_file_perms; allow phhsu_daemon device:dir rw_dir_perms; @@ -120,4 +123,18 @@ allow phhsu_daemon tombstoned:unix_stream_socket { connectto }; allow phhsu_daemon { property_data_file data_file_type tmpfs }:file create_file_perms; allow phhsu_daemon { property_data_file data_file_type tmpfs }:dir create_dir_perms; -allow phhsu_daemon fs_type:filesystem { remount remount unmount associate}; +allow phhsu_daemon fs_type:filesystem { mount remount unmount associate }; + +allow phhsu_daemon phhsu_daemon:file relabelfrom; + +allow phhsu_daemon properties_device:dir { map }; +allow phhsu_daemon { tmpfs }:dir { mounton }; +allow phhsu_daemon { file_type shell_data_file system_file}:file { relabelto relabelfrom} ; + +allow phhsu_daemon domain:fd { use }; +allow phhsu_daemon domain:unix_stream_socket { connectto ioctl getattr getopt read write shutdown }; +allow phhsu_daemon self:netlink_kobject_uevent_socket create_socket_perms; +allow phhsu_daemon self:{ netlink_tcpdiag_socket } { create_socket_perms nlmsg_write nlmsg_read }; + +allow phhsu_daemon file_type:file create_file_perms; +allow phhsu_daemon file_type:dir create_dir_perms; diff --git a/sepolicy/treble_app.te b/sepolicy/treble_app.te index ae0271e..a4e5ceb 100644 --- a/sepolicy/treble_app.te +++ b/sepolicy/treble_app.te @@ -3,3 +3,26 @@ allow system_app hidl_base_hwservice:hwservice_manager { add }; allow system_app wifi_data_file:dir create_dir_perms; allow system_app wifi_data_file:file create_file_perms; +allow system_app sysfs_batteryinfo:file rw_file_perms; + +type vendor_camera_prop, property_type; +set_prop(system_app, vendor_camera_prop); + +#Used to control double-tap-to-wake on Xiaomi +allow system_app input_device:chr_file rw_file_perms; +allow system_app input_device:dir r_dir_perms; + +type hal_ext_fingerprint_hwservice, hwservice_manager_type; +allow system_app hal_ext_fingerprint_hwservice:hwservice_manager { find }; +type hal_fingerprint_default, domain; +allow system_app hal_fingerprint_default:binder { call }; +allow system_app sysfs_power:dir r_dir_perms; +allow system_app sysfs_power:file rw_file_perms; +allow system_app sysfs_power:lnk_file read; + +type default_hisi_hwservice, hwservice_manager_type; +allow system_app default_hisi_hwservice:hwservice_manager { find }; + +type hal_tp_default, domain; +allow system_app hal_tp_default:binder { call }; + diff --git a/sepolicy/vndk_detect.te b/sepolicy/vndk_detect.te index df25be3..797094a 100644 --- a/sepolicy/vndk_detect.te +++ b/sepolicy/vndk_detect.te @@ -22,3 +22,6 @@ allow init vendor_configs_file:file { getattr mounton }; #/sys/module/five allow vndk_detect sysfs:file r_file_perms; allow vndk_detect sysfs:dir r_dir_perms; + +#/proc/filesystems +allow vndk_detect proc_filesystems:file r_file_perms; diff --git a/twrp/twrp.rc b/twrp/twrp.rc index f254786..4ca11ea 100644 --- a/twrp/twrp.rc +++ b/twrp/twrp.rc @@ -1,4 +1,3 @@ on post-fs exec - root -- /system/bin/vndk-detect - export LD_CONFIG_FILE /system/etc/ld.config.${persist.sys.vndk}.txt exec u:r:phhsu_daemon:s0 root -- /system/bin/twrp.sh diff --git a/vndk-detect b/vndk-detect index 982347a..1f4caf4 100644 --- a/vndk-detect +++ b/vndk-detect @@ -10,9 +10,10 @@ while read version;do done if [ -d /sys/module/five ];then - mount -o bind /system/phh/empty /sbin/adbd - setprop sys.phh.five true -else + if mount -o bind /system/phh/empty /sbin/adbd;then + setprop sys.phh.five true + fi +elif [ -f /sbin/adbd ];then mount -o bind /system/bin/adbd /sbin/adbd fi if ( getprop ro.hardware | grep -qE '(kirin970|hi3660|hi6250|hi3670)' );then @@ -27,12 +28,16 @@ if [ -n "$FOUND_HUAWEI" ];then setprop persist.sys.overlay.huawei true setprop persist.sys.bt_acl_bypass true setprop persist.sys.camera.huawei true - setprop persist.sys.radio.huawei true + setprop persist.sys.radio.ussd.fix true + setprop persist.sys.radio.huawei true setprop debug.hwui.profile true fi if getprop ro.hardware |grep -qiE -e qcom -e judyln -e judypn;then FOUND_QCOM=1 - setprop persist.sys.overlay.devinputjack true + if getprop ro.vendor.build.fingerprint |grep -qiE '^samsung';then + setprop persist.sys.overlay.devinputjack false + else + setprop persist.sys.overlay.devinputjack true + fi fi - diff --git a/vndk.rc b/vndk.rc index a3cbce2..db8e470 100644 --- a/vndk.rc +++ b/vndk.rc @@ -2,7 +2,8 @@ on post-fs exec - root -- /system/bin/vndk-detect exec - root -- /system/bin/rw-system.sh mount none /system/etc/usb_audio_policy_configuration.xml /vendor/etc/usb_audio_policy_configuration.xml bind - export LD_CONFIG_FILE /system/etc/ld.config.${persist.sys.vndk}.txt + setprop ro.vndk.version ${persist.sys.vndk} + export LD_PRELOAD : service phh_on_boot /system/bin/phh-on-boot.sh oneshot @@ -12,3 +13,12 @@ on property:sys.boot_completed=1 start phh_on_boot chown wifi system /data/misc/wifi chown system wifi /data/misc/wifi/hostapd.conf + +on property:persist.sys.phh.mainkeys=* + setprop qemu.hw.mainkeys ${persist.sys.phh.mainkeys} + +on property:persist.sys.phh.oppo.dt2w=* + exec_background u:r:phhsu_daemon:s0 root -- /system/bin/sh -c "echo ${persist.sys.phh.oppo.dt2w} > /proc/touchpanel/double_tap_enable" + +on property:persist.sys.phh.oppo.gaming_mode=* + exec_background u:r:phhsu_daemon:s0 root -- /system/bin/sh -c "echo ${persist.sys.phh.oppo.gaming_mode} > /proc/touchpanel/game_switch_enable"