diff options
| author | Nikita <nikich340@gmail.com> | 2015-11-23 15:50:18 +1000 |
|---|---|---|
| committer | Nikita <nikich340@gmail.com> | 2015-11-23 15:50:18 +1000 |
| commit | 9195e7cbff61b8bfe37f411883b6af8d45f8f5f9 (patch) | |
| tree | fa4b8baaa043d3fa985c0b4ab26c4e4b7cc98ffc | |
Initial commit
| -rw-r--r-- | Android.mk | 22 | ||||
| -rw-r--r-- | AndroidBoard.mk | 6 | ||||
| -rw-r--r-- | AndroidProducts.mk | 2 | ||||
| -rw-r--r-- | BoardConfig.mk | 48 | ||||
| -rw-r--r-- | README.md | 1 | ||||
| -rw-r--r-- | cm.mk | 14 | ||||
| -rw-r--r-- | device_g2m.mk | 46 | ||||
| -rw-r--r-- | full_g2m.mk | 26 | ||||
| -rw-r--r-- | init/init_g2m.cpp | 113 | ||||
| -rw-r--r-- | overlay/frameworks/base/core/res/res/values/config.xml | 303 | ||||
| -rw-r--r-- | overlay/frameworks/base/core/res/res/xml/power_profile.xml | 42 | ||||
| -rw-r--r-- | overlay/packages/services/Telephony/res/values/config.xml | 21 | ||||
| -rw-r--r-- | prebuilt/etc/media_profiles.xml | 360 | ||||
| -rw-r--r-- | prebuilt/etc/mixer_paths.xml | 1230 | ||||
| -rwxr-xr-x | prebuilt/fixup.sh | 10 | ||||
| -rwxr-xr-x | prebuilt/usr/idc/touch_dev.idc | 49 | ||||
| -rwxr-xr-x | prebuilt/usr/keylayout/Generic.kl | 441 | ||||
| -rw-r--r-- | proprietary-blobs.txt | 148 | ||||
| -rw-r--r-- | recovery.fstab | 8 | ||||
| -rw-r--r-- | releasetools.py | 31 | ||||
| -rwxr-xr-x | setup-makefiles.sh | 123 | ||||
| -rw-r--r-- | vendorsetup.sh | 25 |
22 files changed, 3069 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..be05bf0 --- /dev/null +++ b/Android.mk @@ -0,0 +1,22 @@ +# +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. +# +ifneq ($(filter g2m,$(TARGET_DEVICE)),) + +LOCAL_PATH := $(call my-dir) + +include $(call all-makefiles-under,$(LOCAL_PATH)) + +endif diff --git a/AndroidBoard.mk b/AndroidBoard.mk new file mode 100644 index 0000000..e8172ec --- /dev/null +++ b/AndroidBoard.mk @@ -0,0 +1,6 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) + +# include the non-open-source counterpart to this file +-include vendor/lge/g2m/AndroidBoardVendor.mk diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..634dbcf --- /dev/null +++ b/AndroidProducts.mk @@ -0,0 +1,2 @@ +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/full_g2m.mk diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..fabb6d5 --- /dev/null +++ b/BoardConfig.mk @@ -0,0 +1,48 @@ +# +# Copyright (C) 2015 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +# +# This file sets variables that control the way modules are built +# thorughout the system. It should not be used to conditionally +# disable makefiles (the proper mechanism to control what gets +# included in a build is to use PRODUCT_PACKAGES in a product +# definition file). +# + + +# Common specific options in device_g2m.mk +-include device/lge/msm8226-common/BoardConfigCommon.mk + +# Vendor Init +TARGET_UNIFIED_DEVICE := true +TARGET_INIT_VENDOR_LIB := libinit_msm +TARGET_LIBINIT_DEFINES_FILE := device/lge/g2m/init/init_g2m.cpp +TARGET_OTA_ASSERT_DEVICE := g2m,g2mds,g2mss +TARGET_RELEASETOOLS_EXTENSIONS := device/lge/g2m + +# Bootloader +TARGET_BOOTLOADER_BOARD_NAME := g2m + +# Kernel +TARGET_KERNEL_CONFIG := g2m_cyanogenmod_defconfig + +# Filesystem, +BOARD_FLASH_BLOCK_SIZE := 131072 +BOARD_BOOTIMAGE_PARTITION_SIZE := 16777216 +BOARD_RECOVERYIMAGE_PARTITION_SIZE := 16777216 +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 754974720 +BOARD_CACHEIMAGE_PARTITION_SIZE := 536870912 +BOARD_PERSISTIMAGE_PARTITION_SIZE := 33554432 + diff --git a/README.md b/README.md new file mode 100644 index 0000000..d6ee74c --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# android_device_lge_g2m @@ -0,0 +1,14 @@ +# Inherit some common CM stuff. +$(call inherit-product, vendor/cm/config/common_full_phone.mk) + +# Boot animation +TARGET_SCREEN_WIDTH := 540 +TARGET_SCREEN_HEIGHT := 960 + +# Release name +PRODUCT_RELEASE_NAME := LG G2 Mini +PRODUCT_NAME := cm_g2m +PRODUCT_MANUFACTURER := lge +PRODUCT_MODEL := g2m + +$(call inherit-product, device/lge/g2m/full_g2m.mk) diff --git a/device_g2m.mk b/device_g2m.mk new file mode 100644 index 0000000..6bb713e --- /dev/null +++ b/device_g2m.mk @@ -0,0 +1,46 @@ +# +# Copyright (C) 2013 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. +# + +$(call inherit-product, frameworks/native/build/phone-hdpi-512-dalvik-heap.mk) + +$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk) + +# Specific overlay +DEVICE_PACKAGE_OVERLAYS += device/lge/g2m/overlay + +# Configs +PRODUCT_COPY_FILES += \ + device/lge/g2m/prebuilt/etc/media_profiles.xml:system/etc/media_profiles.xml \ + device/lge/g2m/prebuilt/etc/mixer_paths.xml:system/etc/mixer_paths.xml \ + device/lge/g2m/prebuilt/usr/idc/touch_dev.idc:system/usr/idc/touch_dev.idc \ + device/lge/g2m/prebuilt/usr/keylayout/Generic.kl:system/usr/keylayout/Generic.kl + +# OTA +PRODUCT_COPY_FILES += \ + device/lge/g2m/prebuilt/fixup.sh:fixup.sh + +# Screen density +PRODUCT_AAPT_CONFIG := normal +PRODUCT_AAPT_PREF_CONFIG := hdpi + +# Common specific options +BOARD_HAS_QCOM_WCNSS := true +BOARD_HAS_NFC := true + +# Inherit from msm8226-common +$(call inherit-product, device/lge/msm8226-common/msm8226.mk) +$(call inherit-product, vendor/lge/g2m/g2m-vendor.mk) + diff --git a/full_g2m.mk b/full_g2m.mk new file mode 100644 index 0000000..ee43b00 --- /dev/null +++ b/full_g2m.mk @@ -0,0 +1,26 @@ +# +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# Inherit from those products. Most specific first. +$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk) +$(call inherit-product, device/lge/g2m/device_g2m.mk) + +## Device identifier. This must come after all inclusions +PRODUCT_DEVICE := g2m +PRODUCT_NAME := full_g2m +PRODUCT_BRAND := lge +PRODUCT_MODEL := g2m +PRODUCT_MANUFACTURER := LGE diff --git a/init/init_g2m.cpp b/init/init_g2m.cpp new file mode 100644 index 0000000..1941695 --- /dev/null +++ b/init/init_g2m.cpp @@ -0,0 +1,113 @@ +/* + Copyright (c) 2014, The Linux Foundation. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of The Linux Foundation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> + +#include "vendor_init.h" +#include "property_service.h" +#include "log.h" +#include "util.h" + + +#define CHUNK 2048 /* read 2048 bytes at a time */ + +int check_cmdline(const char param[]) { + + char buf[CHUNK]; + FILE *file; + size_t nread; + file = fopen("/proc/cmdline", "r"); + if (file) { + while ((nread = fread(buf, 1, sizeof buf, file)) > 0) { + /* fwrite(buf, 1, nread, stdout); */ + char delims[] = " "; + char *word = NULL; + word = strtok(buf, delims); + + while(word != NULL) { + if (!strcmp(param,word)) { + fclose(file); + return 1; + } + word = strtok(NULL, delims); + } + } + } + fclose(file); + return 0; +} + +void init_msm_properties(unsigned long msm_id, unsigned long msm_ver, char *board_type) +{ + char serial[PROP_VALUE_MAX]; + char device[PROP_VALUE_MAX]; + char devicename[PROP_VALUE_MAX]; + + property_get("ro.boot.serialno", serial); + if (strncmp(serial, "LGD618", 6) == 0) { + /* D618 */ + property_set("ro.product.device", "g2mds"); + property_set("ro.product.model", "LG-D618"); + property_set("ro.build.description", "g2mds_global_com-user 5.1.1 LMY48Y 151391007575d release-keys"); + property_set("ro.build.fingerprint", "lge/g2mds_global_com/g2mds:5.1.1/LMY48Y/151391007575d:user/release-keys"); + property_set("persist.radio.multisim.config", "dsds"); + property_set("persist.multisim.config", "dsds"); + property_set("persist.radio.dont_use_dsd", "true"); + property_set("ro.telephony.ril.config", "simactivation"); + } else if (strncmp(serial, "LGD610", 6) == 0) { + /* D610 */ + property_set("ro.product.model", "LG-D610"); + property_set("ro.product.device", "g2mss"); + property_set("ro.build.description", "g2mss_global_com-user 5.1.1 LMY48Y 151391007575d release-keys"); + property_set("ro.build.fingerprint", "lge/g2mss_global_com/g2mss:5.1.1/LMY48Y/151391007575d:user/release-keys"); + property_set("persist.radio.multisim.config", ""); + property_set("persist.multisim.config", ""); + } else if (strncmp(serial, "LGD620", 6) == 0) { + /* D620 */ + property_set("ro.product.model", "LG-D620"); + property_set("ro.product.device", "g2m"); + property_set("ro.nfc.port", "I2C"); + property_set("ro.build.description", "g2m_global_com-user 5.1.1 LMY48Y 151391007575d release-keys"); + property_set("ro.build.fingerprint", "lge/g2m_global_com/g2m:5.1.1/LMY48Y/151391007575d:user/release-keys"); + property_set("persist.radio.multisim.config", ""); + property_set("persist.multisim.config", ""); + } else { + /* XXX */ + /* XXX */ + property_set("ro.product.device", "g2m"); + property_set("ro.product.model", "Please write your model name to nikich340@gmail.com"); + property_set("persist.radio.multisim.config", ""); + property_set("persist.multisim.config", ""); + } + property_get("ro.product.device", device); + strlcpy(devicename, device, sizeof(devicename)); + ERROR("Found hardware id: %s setting build properties for %s device\n", serial, devicename); +} diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml new file mode 100644 index 0000000..28140eb --- /dev/null +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -0,0 +1,303 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** Copyright 2013, The Android Open Source Project +** +** Licensed under the Apache License, Version 2.0 (the "License"); +** you may not use this file except in compliance with the License. +** You may obtain a copy of the License at +** +** http://www.apache.org/licenses/LICENSE-2.0 +** +** Unless required by applicable law or agreed to in writing, software +** distributed under the License is distributed on an "AS IS" BASIS, +** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +** See the License for the specific language governing permissions and +** limitations under the License. +*/ +--> + +<!-- These resources are around just to allow their values to be customized + for different hardware and product builds. --> +<resources> + + <!-- Vibrator pattern for feedback about a long screen/key press --> + <integer-array name="config_longPressVibePattern"> + <item>0</item> + <item>20</item> + </integer-array> + + <!-- Vibrator pattern for feedback about touching a virtual key --> + <integer-array name="config_virtualKeyVibePattern"> + <item>0</item> + <item>15</item> + </integer-array> + + <!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap --> + <integer-array name="config_keyboardTapVibePattern"> + <item>0</item> + <item>13</item> + </integer-array> + + <!-- Vibrator pattern for feedback about booting with safe mode disabled --> + <integer-array name="config_safeModeDisabledVibePattern"> + <item>0</item> + <item>15</item> + </integer-array> + + <!-- Whether to enable auto provisioning the app for new SIM card on boot. + <bool name="config_auto_provision_enable">true</bool> +--> + <!-- Set to true if we need to not prefer an APN. + This is being added to enable a simple scenario of pre-paid + provisioning on some carriers, working around a bug (7305641) + where if the preferred is used we don't try the others. --> + <bool name="config_dontPreferApn">true</bool> + + <!-- Boolean indicating whether the wifi chipset has dual frequency band support --> + <bool translatable="false" name="config_wifi_dual_band_support">false</bool> + + <!-- Boolean indicating whether the wifi chipset has background scan support --> + <bool translatable="false" name="config_wifi_background_scan_support">false</bool> + + <bool name="config_enableWifiDisplay">true</bool> + + <!-- Flag indicating whether we should enable the automatic brightness in Settings. + config_hardware_automatic_brightness_available is not set, so we will use software implementation --> + <bool name="config_automatic_brightness_available">false</bool> + + <!-- Default interface to monitor data use --> + <string name="config_datause_iface">rmnet0</string> + + <!-- If the DUN connection for this CDMA device supports more than just DUN --> + <!-- traffic you should list them here. --> + <!-- If this device is not CDMA this is ignored. If this list is empty on --> + <!-- a DUN-requireing CDMA device, the DUN APN will support --> + <!-- just DUN. --> + <string-array translatable="false" name="config_cdma_dun_supported_types"> + <item>"default"</item> + <item>"dun"</item> + <item>"mms"</item> + <item>"supl"</item> + </string-array> + + <!-- List of regexpressions describing the interface (if any) that represent tetherable + USB interfaces. If the device doesn't want to support tething over USB this should + be empty. An example would be "usb.*" --> + <string-array translatable="false" name="config_tether_usb_regexs"> + <item>"rndis\\d"</item> + </string-array> + + <!-- List of regexpressions describing the interface (if any) that represent tetherable + Wifi interfaces. If the device doesn't want to support tethering over Wifi this + should be empty. An example would be "softap.*" --> + <string-array translatable="false" name="config_tether_wifi_regexs"> + <item>"wlan\\d"</item> + <item>"softap.*"</item> + </string-array> + + <!-- List of regexpressions describing the interface (if any) that represent tetherable + bluetooth interfaces. If the device doesn't want to support tethering over bluetooth this + should be empty. --> + <string-array translatable="false" name="config_tether_bluetooth_regexs"> + <item>"bt-pan"</item> + </string-array> + + <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering --> + <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or + <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH --> + <integer-array translatable="false" name="config_tether_upstream_types"> + <item>0</item> + <item>1</item> + <item>4</item> + <item>5</item> + <item>7</item> + </integer-array> + + <!-- The VoiceMail default value is displayed to my own number if it is true --> + <bool name="config_telephony_use_own_number_for_voicemail">true</bool> + + <!-- Boolean indicating if restoring network selection should be skipped --> + <!-- The restoring is handled by modem if it is true--> + <bool name="skip_restoring_network_selection">true</bool> + + <!-- Is the notification LED intrusive? Used to decide if there should be a disable option + <bool name="config_intrusiveNotificationLed">false</bool> --> + + <!-- Is the battery LED intrusive? Used to decide if there should be a disable option + <bool name="config_intrusiveBatteryLed">false</bool> --> + + <!-- Does the battery LED support multiple colors? Used to decide if the user can change the colors + <bool name="config_multiColorBatteryLed">false</bool> --> + + <!-- Workaround for devices with broken keyboards + <bool name="config_forceDisableHardwareKeyboard">true</bool> --> + + <!-- Indicate whether the SD card is accessible without removing the battery. --> + <bool name="config_batterySdCardAccessibility">true</bool> + + <!-- Whether a software navigation bar should be shown. NOTE: in the future this may be + autodetected from the Configuration. --> + <bool name="config_showNavigationBar">true</bool> + + <!-- Minimum screen brightness allowed by the power manager. --> + <integer name="config_screenBrightnessDim">5</integer> + + <integer-array name="config_longPressVibePattern"> + <item>0</item> + <item>40</item> + </integer-array> + <integer-array name="config_virtualKeyVibePattern"> + <item>0</item> + <item>33</item> + </integer-array> + <integer-array name="config_keyboardTapVibePattern"> + <item>0</item> + <item>25</item> + </integer-array> + <integer-array name="config_safeModeDisabledVibePattern"> + <item>0</item> + <item>40</item> + </integer-array> + <integer-array name="config_safeModeEnabledVibePattern"> + <item>0</item> + <item>40</item> + <item>600</item> + </integer-array> + <integer-array name="config_scrollBarrierVibePattern"> + <item>0</item> + <item>33</item> + <item>60</item> + <item>33</item> + </integer-array> + <integer-array name="config_protectedNetworks"> + <item>10</item> + <item>11</item> + <item>12</item> + </integer-array> + <string-array name="radioAttributes"> + <item>1,1</item> + <item>0,1</item> + <item>7,1</item> + <item>9,1</item> + </string-array> + <integer-array name="config_data_usage_network_types"> + <item>0</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>10</item> + <item>11</item> + <item>12</item> + </integer-array> + <string-array name="networkAttributes"> + <item>wifi,1,1,1,-1,true</item> + <item>mobile,0,0,0,-1,true</item> + <item>mobile_mms,2,0,2,60000,true</item> + <item>mobile_supl,3,0,2,60000,true</item> + <item>mobile_dun,4,0,2,60000,true</item> + <item>mobile_hipri,5,0,3,60000,true</item> + <item>mobile_fota,10,0,2,60000,true</item> + <item>mobile_ims,11,0,2,-1,true</item> + <item>mobile_cbs,12,0,2,60000,true</item> + <item>bluetooth,7,7,1,-1,true</item> + <item>ethernet,9,9,1,-1,true</item> + <item>wifi_p2p,13,1,0,-1,true</item> + </string-array> + + <!-- Control whether being in the desk dock (and powered) always + keeps the screen on. By default it stays on when plugged in to + AC. 0 will not keep it on; or together 1 to stay on when plugged + in to AC and 2 to stay on when plugged in to USB. (So 3 for both.) --> + <integer name="config_deskDockKeepsScreenOn">0</integer> + <integer name="config_carDockKeepsScreenOn">1</integer> + + <!-- Our amoled doesn't animate well. --> + <bool name="config_animateScreenLights">false</bool> + + <!-- We dont have different firmware for wifi modes, prevent reloading it + <bool name="config_wifiApFirmwareReload">false</bool> + --> + <!-- When true use the linux /dev/input/event subsystem to detect the switch changes + on the headphone/microphone jack. When false use the older uevent framework. --> + <bool name="config_useDevInputEventForAudioJack">true</bool> + + <!-- Is the device capable of hot swapping an UICC Card --> + <bool name="config_hotswapCapable">true</bool> + + <!-- Hardware 'face' keys present on the device, stored as a bit field. + This integer should equal the sum of the corresponding value for each + of the following keys present: + 1 - Home + 2 - Back + 4 - Menu + 8 - Assistant (search) + 16 - App switch + 32 - Camera + 64 - Volume rocker + For example, a device with Home, Back and Menu keys would set this + config to 7. --> + <integer name="config_deviceHardwareKeys">65</integer> + + <!-- Hardware keys present on the device with the ability to wake, stored as a bit field. + This integer should equal the sum of the corresponding value for each + of the following keys present: + 1 - Home + 2 - Back + 4 - Menu + 8 - Assistant (search) + 16 - App switch + 32 - Camera + 64 - Volume rocker + For example, a device with Home, Back and Menu keys would set this + config to 7. --> + <integer name="config_deviceHardwareWakeKeys">1</integer> + + <!-- Disable lockscreen translucent decor by default --> + <bool name="config_enableLockScreenTranslucentDecor">true</bool> + + <!-- Maximum number of supported users --> + <integer name="config_multiuserMaximumUsers">4</integer> + + <!-- Whether UI for multi user should be shown --> + <bool name="config_enableMultiUserUI">true</bool> + + <!-- Display low battery warning when battery level dips to this value --> + <integer name="config_lowBatteryWarningLevel">10</integer> + + <!-- Indicate whether closing the lid causes the device to go to sleep and opening + it causes the device to wake up. + The default is false. --> + <bool name="config_lidControlsSleep">true</bool> + + <!-- Defines the system property to set for performance profile xe: sys.cpu.modes. Leave it + blank if the device do not support performance profiles + <string name="config_perf_profile_prop" translatable="false">powerhal</string> + --> + + <!-- When config_perf_profile_prop is defined, this value MUST be the index of + one of the listes values in frameworks/base/core/res/res/values/cm_arrays.xml + for "perf_profile_values" array. Leave it blank if the device do not support + performance profiles + <string name="config_perf_profile_default_entry" translatable="false">1</string> + --> + + <!-- Whether device supports double tap to wake --> + <bool name="config_supportDoubleTapWake">true</bool> + + <!-- enable doze powersaving mode --> + <bool name="config_enableAutoPowerModes">true</bool> + + <!-- Enable overlay for all location components. --> + <bool name="config_enableNetworkLocationOverlay" translatable="false">false</bool> + <string name="config_networkLocationProviderPackageName" translatable="false">com.qualcomm.location</string> + <bool name="config_enableFusedLocationOverlay" translatable="false">false</bool> + <string name="config_fusedLocationProviderPackageName" translatable="false">com.qualcomm.location</string> + + <integer name="config_longPressOnHomeBehavior">2</integer> + + <!-- Our modem doesn't support this query yet --> + <string name="config_radio_access_family">GPRS|EDGE|UMTS|HSDPA|HSUPA|HSPA|HSPAP|GSM|WCDMA</string> + +</resources> diff --git a/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/overlay/frameworks/base/core/res/res/xml/power_profile.xml new file mode 100644 index 0000000..4f4c4df --- /dev/null +++ b/overlay/frameworks/base/core/res/res/xml/power_profile.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="utf-8"?> +<device name="Android"> + <item name="none">0</item> + <item name="screen.on">86</item> + <item name="screen.full">229</item> + <item name="bluetooth.active">30</item> + <item name="bluetooth.on">3</item> + <item name="wifi.on">2</item> + <item name="wifi.active">50</item> + <item name="wifi.scan">100</item> + <item name="gps.on">70</item> + <item name="radio.active">250</item> + <item name="radio.scanning">10</item> + <array name="radio.on"> + <value>10</value> + <value>8</value> + <value>6</value> + <value>4</value> + <value>2</value> + </array> + <array name="cpu.speeds"> + <value>300000</value> + <value>384000</value> + <value>600000</value> + <value>787200</value> + <value>998400</value> + <value>1094400</value> + <value>1190400</value> + </array> + <item name="cpu.idle">3</item> + <item name="cpu.awake">22</item> + <array name="cpu.active"> + <value>72</value> + <value>78</value> + <value>107</value> + <value>120</value> + <value>150</value> + <value>157</value> + <value>164</value> + </array> + <item name="battery.capacity">2440</item> +</device> diff --git a/overlay/packages/services/Telephony/res/values/config.xml b/overlay/packages/services/Telephony/res/values/config.xml new file mode 100644 index 0000000..7202ff5 --- /dev/null +++ b/overlay/packages/services/Telephony/res/values/config.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2009 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- shooteru-specific phone app resources. --> +<resources> + <!-- Show enabled lte option for lte device --> + <bool name="config_enabled_lte" translatable="false">true</bool> +</resources> diff --git a/prebuilt/etc/media_profiles.xml b/prebuilt/etc/media_profiles.xml new file mode 100644 index 0000000..1f72fbd --- /dev/null +++ b/prebuilt/etc/media_profiles.xml @@ -0,0 +1,360 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright 2013 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. +--> +<!DOCTYPE MediaSettings [ +<!ELEMENT MediaSettings (CamcorderProfiles, + EncoderOutputFileFormat+, + VideoEncoderCap+, + AudioEncoderCap+, + VideoDecoderCap, + AudioDecoderCap, + LgeCamcorderCap)> +<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)> +<!ELEMENT EncoderProfile (Video, Audio)> +<!ATTLIST EncoderProfile quality (high|low) #REQUIRED> +<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED> +<!ATTLIST EncoderProfile duration (30|60) #REQUIRED> +<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED> +<!ELEMENT Video EMPTY> +<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED> +<!ATTLIST Video bitRate CDATA #REQUIRED> +<!ATTLIST Video width CDATA #REQUIRED> +<!ATTLIST Video height CDATA #REQUIRED> +<!ATTLIST Video frameRate CDATA #REQUIRED> +<!ELEMENT Audio EMPTY> +<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED> +<!ATTLIST Audio bitRate CDATA #REQUIRED> +<!ATTLIST Audio sampleRate CDATA #REQUIRED> +<!ATTLIST Audio channels (1|2) #REQUIRED> +<!ELEMENT ImageEncoding EMPTY> +<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED> +<!ELEMENT ImageDecoding EMPTY> +<!ATTLIST ImageDecoding memCap CDATA #REQUIRED> +<!ELEMENT Camera EMPTY> +<!ELEMENT EncoderOutputFileFormat EMPTY> +<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED> +<!ELEMENT VideoEncoderCap EMPTY> +<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED> +<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED> +<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED> +<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED> +<!ELEMENT AudioEncoderCap EMPTY> +<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED> +<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED> +<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED> +<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED> +<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED> +<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED> +<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED> +<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED> +<!ELEMENT VideoDecoderCap EMPTY> +<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED> +<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED> +<!ELEMENT AudioDecoderCap EMPTY> +<!ATTLIST AudioDecoderCap name (wma) #REQUIRED> +<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED> +]> +<!-- + This file is used to declare the multimedia profiles and capabilities + on an android-powered device. +--> +<MediaSettings> + <!-- Each camcorder profile defines a set of predefined configuration parameters --> + <CamcorderProfiles cameraId="0"> + + <EncoderProfile quality="qvga" fileFormat="3gp" duration="60"> + <Video codec="m4v" + bitRate="128000" + width="320" + height="240" + frameRate="15" /> + <Audio codec="amrnb" + bitRate="12200" + sampleRate="8000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="cif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="1200000" + width="352" + height="288" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="480p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="6000000" + width="720" + height="480" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <EncoderProfile quality="720p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="12000000" + width="1280" + height="720" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <EncoderProfile quality="1080p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="17000000" + width="1920" + height="1080" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="192000" + width="176" + height="144" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="amrnb" + bitRate="12200" + sampleRate="8000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="1200000" + width="352" + height="288" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="6000000" + width="720" + height="480" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="12000000" + width="1280" + height="720" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="17000000" + width="1920" + height="1080" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="2" /> + </EncoderProfile> + + <ImageEncoding quality="95" /> + <ImageEncoding quality="80" /> + <ImageEncoding quality="70" /> + <ImageDecoding memCap="20000000" /> + + </CamcorderProfiles> + + <CamcorderProfiles cameraId="1"> + + <EncoderProfile quality="qvga" fileFormat="3gp" duration="60"> + <Video codec="m4v" + bitRate="128000" + width="320" + height="240" + frameRate="15" /> + <Audio codec="amrnb" + bitRate="12200" + sampleRate="8000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="cif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="1200000" + width="352" + height="288" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="480p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="5000000" + width="640" + height="480" + frameRate="30" /> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="192000" + width="176" + height="144" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="amrnb" + bitRate="12200" + sampleRate="8000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="1200000" + width="352" + height="288" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30"> + <Video codec="h264" + bitRate="5000000" + width="640" + height="480" + frameRate="30" /> + <!-- audio setting is ignored --> + <Audio codec="aac" + bitRate="96000" + sampleRate="48000" + channels="1" /> + </EncoderProfile> + + <ImageEncoding quality="95" /> + <ImageEncoding quality="80" /> + <ImageEncoding quality="70" /> + <ImageDecoding memCap="20000000" /> + + </CamcorderProfiles> + + <EncoderOutputFileFormat name="3gp" /> + <EncoderOutputFileFormat name="mp4" /> + + <!-- + If a codec is not enabled, it is invisible to the applications + In other words, the applications won't be able to use the codec + or query the capabilities of the codec at all if it is disabled + --> + <VideoEncoderCap name="h264" enabled="true" + minBitRate="64000" maxBitRate="20000000" + minFrameWidth="176" maxFrameWidth="1920" + minFrameHeight="144" maxFrameHeight="1080" + minFrameRate="15" maxFrameRate="30" /> + + <VideoEncoderCap name="h263" enabled="true" + minBitRate="64000" maxBitRate="2000000" + minFrameWidth="176" maxFrameWidth="800" + minFrameHeight="144" maxFrameHeight="480" + minFrameRate="15" maxFrameRate="30" /> + + <VideoEncoderCap name="m4v" enabled="true" + minBitRate="64000" maxBitRate="4000000" + minFrameWidth="176" maxFrameWidth="1920" + minFrameHeight="144" maxFrameHeight="1080" + minFrameRate="15" maxFrameRate="30" /> + + <AudioEncoderCap name="aac" enabled="true" + minBitRate="758" maxBitRate="288000" + minSampleRate="8000" maxSampleRate="48000" + minChannels="1" maxChannels="2" /> + + <AudioEncoderCap name="heaac" enabled="true" + minBitRate="8000" maxBitRate="64000" + minSampleRate="16000" maxSampleRate="48000" + minChannels="1" maxChannels="1" /> + + <AudioEncoderCap name="aaceld" enabled="true" + minBitRate="16000" maxBitRate="192000" + minSampleRate="16000" maxSampleRate="48000" + minChannels="1" maxChannels="1" /> + + <AudioEncoderCap name="amrwb" enabled="true" + minBitRate="6600" maxBitRate="23050" + minSampleRate="16000" maxSampleRate="16000" + minChannels="1" maxChannels="1" /> + + <AudioEncoderCap name="amrnb" enabled="true" + minBitRate="5525" maxBitRate="12200" + minSampleRate="8000" maxSampleRate="8000" + minChannels="1" maxChannels="1" /> + + <!-- + FIXME: + We do not check decoder capabilities at present + At present, we only check whether windows media is visible + for TEST applications. For other applications, we do + not perform any checks at all. + --> + <VideoDecoderCap name="wmv" enabled="true"/> + <AudioDecoderCap name="wma" enabled="true"/> + +</MediaSettings> diff --git a/prebuilt/etc/mixer_paths.xml b/prebuilt/etc/mixer_paths.xml new file mode 100644 index 0000000..afa979e --- /dev/null +++ b/prebuilt/etc/mixer_paths.xml @@ -0,0 +1,1230 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<mixer> + <!-- These are the initial mixer settings --> + <ctl name="Voice Rx Device Mute" id="0" value="0" /> + <ctl name="Voice Rx Device Mute" id="1" value="-1" /> + <ctl name="Voice Rx Device Mute" id="2" value="20" /> + <ctl name="Voice Tx Mute" id="0" value="0" /> + <ctl name="Voice Tx Mute" id="1" value="-1" /> + <ctl name="Voice Tx Mute" id="2" value="500" /> + <ctl name="Voice Rx Gain" id="0" value="0" /> + <ctl name="Voice Rx Gain" id="1" value="-1" /> + <ctl name="Voice Rx Gain" id="2" value="20" /> + <ctl name="Voip Tx Mute" id="0" value="0" /> + <ctl name="Voip Tx Mute" id="1" value="500" /> + <ctl name="Voip Rx Gain" id="0" value="0" /> + <ctl name="Voip Rx Gain" id="1" value="20" /> + <ctl name="Voip Mode Config" value="12" /> + <ctl name="Voip Rate Config" value="0" /> + <ctl name="Voip Evrc Min Max Rate Config" id="0" value="1" /> + <ctl name="Voip Evrc Min Max Rate Config" id="1" value="4" /> + <ctl name="Voip Dtx Mode" value="0" /> + <ctl name="TTY Mode" value="Off" /> + <ctl name="LINEOUT1 Volume" value="14" /> + <ctl name="LINEOUT2 Volume" value="14" /> + <ctl name="HPHL Volume" value="14" /> + <ctl name="HPHR Volume" value="14" /> + <ctl name="RX1 Digital Volume" value="84" /> + <ctl name="RX2 Digital Volume" value="84" /> + <ctl name="RX3 Digital Volume" value="84" /> + <ctl name="RX4 Digital Volume" value="84" /> + <ctl name="ADC1 Volume" value="19" /> + <ctl name="ADC2 Volume" value="19" /> + <ctl name="ADC3 Volume" value="19" /> + <ctl name="ADC4 Volume" value="19" /> + <ctl name="ADC5 Volume" value="19" /> + <ctl name="DEC1 Volume" value="84" /> + <ctl name="DEC2 Volume" value="84" /> + <ctl name="DEC3 Volume" value="84" /> + <ctl name="DEC4 Volume" value="84" /> + <ctl name="IIR1 INP1 Volume" value="60" /> <!--LGE changed 84==>>60 --> + <ctl name="IIR1 INP2 Volume" value="60" /> <!--LGE changed 84==>>60 --> + <ctl name="IIR1 INP3 Volume" value="60" /> <!--LGE changed 84==>>60 --> + <ctl name="IIR1 INP4 Volume" value="60" /> <!--LGE changed 84==>>60 --> + <ctl name="COMP0 Switch" value="0" /> + <ctl name="COMP1 Switch" value="0" /> + <ctl name="COMP2 Switch" value="0" /> + <ctl name="SLIMBUS_3_RX Port Mixer MI2S_TX" value="0" /> + <ctl name="HDMI_RX Port Mixer MI2S_TX" value="0" /> + <ctl name="SLIMBUS_0_RX Port Mixer SLIM_0_TX" value="0" /> + <ctl name="AUX_PCM_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="AUX_PCM_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="0" /> + <ctl name="SLIM_0_RX_Voice Mixer Voip" value="0" /> + <ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="0" /> + <!-- Audio BTSCO --> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia2" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="MultiMedia1 Mixer INTERNAL_BT_SCO_TX" value="0" /> + <!-- Voice BTSCO --> + <ctl name="Internal BTSCO SampleRate" value="8000" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="Voice_Tx Mixer INTERNAL_BT_SCO_TX_Voice" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="0" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="0" /> + <ctl name="HDMI_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="SLIM_0_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="SLIMBUS_4_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="SLIMBUS_4_RX Audio Mixer MultiMedia2" value="0" /> + <ctl name="MultiMedia5 Mixer SLIM_0_TX" value="0" /> + <ctl name="MultiMedia5 Mixer AFE_PCM_TX" value="0" /> + <ctl name="MultiMedia4 Mixer MI2S_TX" value="0" /> + <ctl name="MultiMedia1 Mixer MI2S_TX" value="0" /> + <ctl name="MultiMedia1 Mixer SLIM_0_TX" value="0" /> + <ctl name="MultiMedia1 Mixer SLIM_4_TX" value="0" /> + <ctl name="HDMI Mixer MultiMedia1" value="0" /> + <ctl name="HDMI Mixer MultiMedia2" value="0" /> + <ctl name="HDMI Mixer MultiMedia3" value="0" /> + <ctl name="HDMI Mixer MultiMedia4" value="0" /> + <ctl name="HDMI Mixer MultiMedia5" value="0" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia2" value="0" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia3" value="0" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="IIR1 INP1 MUX" value="ZERO" /> + <ctl name="SLIM TX5 MUX" value="ZERO" /> + <ctl name="SLIM TX4 MUX" value="ZERO" /> + <ctl name="SLIM TX3 MUX" value="ZERO" /> + <ctl name="SLIM TX2 MUX" value="ZERO" /> + <ctl name="SLIM TX1 MUX" value="ZERO" /> + <ctl name="DEC4 MUX" value="ZERO" /> + <ctl name="DEC3 MUX" value="ZERO" /> + <ctl name="DEC2 MUX" value="ZERO" /> + <ctl name="DEC1 MUX" value="ZERO" /> + <ctl name="RX2 MIX2 INP2" value="ZERO" /> + <ctl name="RX2 MIX2 INP1" value="ZERO" /> + <ctl name="RX1 MIX2 INP2" value="ZERO" /> + <ctl name="RX1 MIX2 INP1" value="ZERO" /> + <ctl name="RX4 MIX1 INP2" value="ZERO" /> + <ctl name="RX4 MIX1 INP1" value="ZERO" /> + <ctl name="RX3 MIX1 INP2" value="ZERO" /> + <ctl name="RX3 MIX1 INP1" value="ZERO" /> + <ctl name="RX2 MIX1 INP2" value="ZERO" /> + <ctl name="RX2 MIX1 INP1" value="ZERO" /> + <ctl name="RX1 MIX1 INP3" value="ZERO" /> + <ctl name="RX1 MIX1 INP2" value="ZERO" /> + <ctl name="RX1 MIX1 INP1" value="ZERO" /> + <ctl name="HPHL DAC Switch" value="0" /> + <ctl name="DAC1 Switch" value="0" /> + <ctl name="SPK DAC Switch" value="0" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="SLIM_0_TX Channels" value="One" /> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="EAR PA Gain" value="POS_6_DB" /> + <ctl name="SLIM RX2 MUX" value="ZERO" /> + <ctl name="SPK DRV Volume" value="7" /> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="0"/> + <ctl name="AIF1_CAP Mixer SLIM TX2" value="0" /> + <ctl name="CLASS_H_DSM MUX" value="ZERO" /> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="HDMI Mixer MultiMedia4" value="0" /> + <!-- VoLTE --> + <ctl name="SLIM_0_RX_Voice Mixer VoLTE" value="0" /> + <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="0" /> + <ctl name="HDMI_RX_Voice Mixer VoLTE" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer VoLTE" value="0" /> + <ctl name="VoLTE_Tx Mixer INTERNAL_BT_SCO_TX_VoLTE" value="0" /> + <ctl name="AFE_PCM_RX_Voice Mixer VoLTE" value="0" /> + <ctl name="VoLTE_Tx Mixer AFE_PCM_TX_VoLTE" value="0" /> + <!-- VoLTE --> + + <!-- Voice2 --> + <ctl name="SLIM_0_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="0" /> + <ctl name="HDMI_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer INTERNAL_BT_SCO_TX_Voice2" value="0" /> + <ctl name="AFE_PCM_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer AFE_PCM_TX_Voice2" value="0" /> + <!-- Voice2 End--> + + <!-- fm --> + <ctl name="SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="SLIMBUS_DL_HL Switch" value="0" /> + <ctl name="MultiMedia1 Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="MultiMedia2 Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia5" value="0" /> + <!-- fm end --> + + <!-- Incall Recording --> + <ctl name="MultiMedia1 Mixer VOC_REC_UL" value="0" /> + <ctl name="MultiMedia1 Mixer VOC_REC_DL" value="0" /> + <!-- Incall Recording end --> + + <!-- Incall Music --> + <ctl name="Incall_Music Audio Mixer MultiMedia2" value="0" /> + <ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="0" /> + <!-- Incall Music End --> + + <!-- QCHAT --> + <ctl name="SLIM_0_RX_Voice Mixer QCHAT" value="0" /> + <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer QCHAT" value="0" /> + <ctl name="QCHAT_Tx Mixer INTERNAL_BT_SCO_TX_QCHAT" value="0" /> + <!-- QCHAT End --> + + <!-- anc headset --> + <!-- IIR/voice anc --> + <ctl name="IIR1 Band1" id ="0" value="268435456" /> + <ctl name="IIR1 Band1" id ="1" value="0" /> + <ctl name="IIR1 Band1" id ="2" value="0" /> + <ctl name="IIR1 Band1" id ="3" value="0" /> + <ctl name="IIR1 Band1" id ="4" value="0" /> + <ctl name="IIR1 Band2" id ="0" value="268435456" /> + <ctl name="IIR1 Band2" id ="1" value="0" /> + <ctl name="IIR1 Band2" id ="2" value="0" /> + <ctl name="IIR1 Band2" id ="3" value="0" /> + <ctl name="IIR1 Band2" id ="4" value="0" /> + <ctl name="IIR1 Band3" id ="0" value="268435456" /> + <ctl name="IIR1 Band3" id ="1" value="0" /> + <ctl name="IIR1 Band3" id ="2" value="0" /> + <ctl name="IIR1 Band3" id ="3" value="0" /> + <ctl name="IIR1 Band3" id ="4" value="0" /> + <ctl name="IIR1 Band4" id ="0" value="268435456" /> + <ctl name="IIR1 Band4" id ="1" value="0" /> + <ctl name="IIR1 Band4" id ="2" value="0" /> + <ctl name="IIR1 Band4" id ="3" value="0" /> + <ctl name="IIR1 Band4" id ="4" value="0" /> + <ctl name="IIR1 Band5" id ="0" value="268435456" /> + <ctl name="IIR1 Band5" id ="1" value="0" /> + <ctl name="IIR1 Band5" id ="2" value="0" /> + <ctl name="IIR1 Band5" id ="3" value="0" /> + <ctl name="IIR1 Band5" id ="4" value="0" /> + <ctl name="IIR1 Enable Band1" value="0" /> + <ctl name="IIR1 Enable Band2" value="0" /> + <ctl name="IIR1 Enable Band3" value="0" /> + <ctl name="IIR1 Enable Band4" value="0" /> + <ctl name="IIR1 Enable Band5" value="0" /> + <!-- IIR/voice anc end --> + <!-- anc handset --> + <ctl name="ANC Slot" value="0" /> + <ctl name="ANC1 FB MUX" value="ZERO" /> + <!-- anc handset end --> + <ctl name="ANC1 MUX" value="ZERO" /> + <ctl name="ANC2 MUX" value="ZERO" /> + <ctl name="ANC Function" value="OFF" /> + <!-- anc headset end--> + <!-- aanc handset mic --> + <ctl name="SLIM_0_RX AANC MUX" value="ZERO" /> + <ctl name="AIF1_CAP Mixer SLIM TX3" value="0" /> + <!-- aanc handset mic end --> + <!-- quad mic --> + <ctl name="AIF1_CAP Mixer SLIM TX4" value="0" /> + <!-- quad mic end--> + <!-- audio record compress--> + <ctl name="MultiMedia8 Mixer SLIM_0_TX" value="0" /> + <ctl name="MultiMedia8 Mixer INTERNAL_BT_SCO_TX" value="0" /> + <ctl name="MultiMedia8 Mixer AFE_PCM_TX" value="0" /> + <ctl name="MultiMedia8 Mixer VOC_REC_UL" value="0" /> + <ctl name="MultiMedia8 Mixer VOC_REC_DL" value="0" /> + <!-- audio record compress end--> + <!-- listen --> + <ctl name="LSM1 MUX" value="None" /> + <ctl name="SLIMBUS_5_TX LSM Function" value="None" /> + <!-- listen end--> + <!-- afe-proxy --> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="0" /> + <!-- afe-proxy end--> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="deep-buffer-playback"> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback hdmi"> + <ctl name="HDMI Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback speaker-and-hdmi"> + <path name="deep-buffer-playback hdmi" /> + <path name="deep-buffer-playback" /> + </path> + + <path name="deep-buffer-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="deep-buffer-playback bt-sco" /> + </path> + + <path name="deep-buffer-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback usb-headphones"> + <path name="deep-buffer-playback afe-proxy" /> + </path> + + <path name="deep-buffer-playback speaker-and-usb-headphones"> + <path name="deep-buffer-playback usb-headphones" /> + <path name="deep-buffer-playback" /> + </path> + + <path name="deep-buffer-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="low-latency-playback"> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback hdmi"> + <ctl name="HDMI Mixer MultiMedia5" value="1" /> + </path> + <path name="low-latency-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="low-latency-playback bt-sco" /> + </path> + + <path name="low-latency-playback speaker-and-hdmi"> + <path name="low-latency-playback hdmi" /> + <path name="low-latency-playback" /> + </path> + + <path name="low-latency-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback usb-headphones"> + <path name="low-latency-playback afe-proxy" /> + </path> + + <path name="low-latency-playback speaker-and-usb-headphones"> + <path name="low-latency-playback usb-headphones" /> + <path name="low-latency-playback" /> + </path> + + <path name="low-latency-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="multi-channel-playback hdmi"> + <ctl name="HDMI Mixer MultiMedia2" value="1" /> + </path> + + <path name="multi-channel-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="1" /> + </path> + + <path name="compress-offload-playback"> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback usb-headphones"> + <path name="compress-offload-playback afe-proxy" /> + </path> + + <path name="compress-offload-playback speaker-and-usb-headphones"> + <path name="compress-offload-playback usb-headphones" /> + <path name="compress-offload-playback" /> + </path> + + <path name="compress-offload-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="compress-offload-playback bt-sco" /> + </path> + + <path name="audio-record"> + <ctl name="MultiMedia1 Mixer SLIM_0_TX" value="1" /> + </path> + + <path name="audio-record bt-sco"> + <ctl name="MultiMedia1 Mixer INTERNAL_BT_SCO_TX" value="1" /> + </path> + + <path name="audio-record bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="audio-record bt-sco" /> + </path> + + <path name="audio-record usb-headset-mic"> + <ctl name="MultiMedia1 Mixer AFE_PCM_TX" value="1" /> + </path> + + <path name="audio-record capture-fm"> + <ctl name="MultiMedia1 Mixer INTERNAL_FM_TX" value="1" /> + </path> + + <path name="audio-record-compress"> + <ctl name="MultiMedia8 Mixer SLIM_0_TX" value="1" /> + </path> + + <path name="audio-record-compress bt-sco"> + <ctl name="MultiMedia8 Mixer INTERNAL_BT_SCO_TX" value="1" /> + </path> + + <path name="audio-record-compress usb-headset-mic"> + <ctl name="MultiMedia8 Mixer AFE_PCM_TX" value="1" /> + </path> + + <path name="fm-virtual-record capture-fm"> + <ctl name="MultiMedia2 Mixer INTERNAL_FM_TX" value="1" /> + </path> + + <path name="voice-call"> + <ctl name="SLIM_0_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" /> + </path> + + <path name="voice-call hdmi"> + <ctl name="HDMI_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer SLIM_0_TX_Voice" value="1" /> + </path> + + <path name="voice-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer INTERNAL_BT_SCO_TX_Voice" value="1" /> + </path> + + <path name="voice-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="voice-call bt-sco" /> + </path> + + <path name="voice-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer AFE_PCM_TX_Voice" value="1" /> + </path> + + <path name="lg-voip-loopback"> + <ctl name="SLIM_0_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="1" /> + </path> + + <path name="voice2-call"> + <ctl name="SLIM_0_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call hdmi"> + <ctl name="HDMI_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer SLIM_0_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer INTERNAL_BT_SCO_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="voice2-call bt-sco" /> + </path> + + <path name="voice2-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer AFE_PCM_TX_Voice2" value="1" /> + </path> + + <path name="play-fm"> + <ctl name="Internal FM RX Volume" value="1" /> + <ctl name="SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX" value="1" /> + <ctl name="SLIMBUS_DL_HL Switch" value="1" /> + </path> + + <path name="volte-call"> + <ctl name="SLIM_0_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call hdmi"> + <ctl name="HDMI_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer INTERNAL_BT_SCO_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="volte-call bt-sco" /> + </path> + + <path name="volte-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer AFE_PCM_TX_VoLTE" value="1" /> + </path> + + <path name="incall-rec-uplink"> + <ctl name="MultiMedia1 Mixer VOC_REC_UL" value="1" /> + </path> + + <path name="incall-rec-uplink bt-sco"> + <path name="incall-rec-uplink" /> + </path> + + <path name="incall-rec-uplink bt-sco-wb"> + <path name="incall-rec-uplink" /> + </path> + + <path name="incall-rec-uplink-compress"> + <ctl name="MultiMedia8 Mixer VOC_REC_UL" value="1" /> + </path> + + <path name="incall-rec-uplink-compress bt-sco"> + <path name="incall-rec-uplink-compress" /> + </path> + + <path name="incall-rec-uplink-compress bt-sco-wb"> + <path name="incall-rec-uplink-compress" /> + </path> + + <path name="incall-rec-downlink"> + <ctl name="MultiMedia1 Mixer VOC_REC_DL" value="1" /> + </path> + + <path name="incall-rec-downlink bt-sco"> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-downlink bt-sco-wb"> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-downlink-compress"> + <ctl name="MultiMedia8 Mixer VOC_REC_DL" value="1" /> + </path> + + <path name="incall-rec-downlink-compress bt-sco"> + <path name="incall-rec-downlink-compress" /> + </path> + + <path name="incall-rec-downlink-compress bt-sco-wb"> + <path name="incall-rec-downlink-compress" /> + </path> + + <path name="incall-rec-uplink-and-downlink"> + <path name="incall-rec-uplink" /> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink bt-sco"> + <path name="incall-rec-uplink-and-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink bt-sco-wb"> + <path name="incall-rec-uplink-and-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink-compress"> + <path name="incall-rec-uplink-compress" /> + <path name="incall-rec-downlink-compress" /> + </path> + + <path name="incall-rec-uplink-and-downlink-compress bt-sco"> + <path name="incall-rec-uplink-and-downlink-compress" /> + </path> + + <path name="incall-rec-uplink-and-downlink-compress bt-sco-wb"> + <path name="incall-rec-uplink-and-downlink-compress" /> + </path> + + <path name="incall_music_uplink"> + <ctl name="Incall_Music Audio Mixer MultiMedia2" value="1" /> + </path> + + <path name="incall_music_uplink2"> + <ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="1" /> + </path> + + <path name="compress-voip-call"> + <ctl name="SLIM_0_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="1" /> + </path> + + <path name="compress-voip-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="1" /> + </path> + + <path name="compress-voip-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="compress-voip-call bt-sco" /> + </path> + + <path name="listen-high-power"> + <ctl name="LSM1 MUX" value="SLIMBUS_5_TX" /> + <ctl name="SLIMBUS_5_TX LSM Function" value="SWAUDIO" /> + </path> + + <path name="qchat-call"> + <ctl name="SLIM_0_RX_Voice Mixer QCHAT" value="1" /> + <ctl name="QCHAT_Tx Mixer SLIM_0_TX_QCHAT" value="1" /> + </path> + + <path name="qchat-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer QCHAT" value="1" /> + <ctl name="QCHAT_Tx Mixer INTERNAL_BT_SCO_TX_QCHAT" value="1" /> + </path> + + <path name="qchat-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="qchat-call bt-sco" /> + </path> + + <!-- These are actual sound device specific mixer settings --> + <path name="adc1"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1"/> + <ctl name="SLIM_0_TX Channels" value="One" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="ADC1" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="adc2"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1"/> + <ctl name="SLIM_0_TX Channels" value="One" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="ADC2" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="adc3"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1"/> + <ctl name="SLIM_0_TX Channels" value="One" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="ADC3" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="speaker"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX3 Digital Volume" value="63" /> + <ctl name="SPK DRV Volume" value="7" /> + <ctl name="SPK DAC Switch" value="1" /> + </path> + + <path name="speaker-lite"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX3 Digital Volume" value="63" /> + <ctl name="RDAC4 MUX" value="DEM2" /> + <ctl name="SPK DRV Volume" value="7" /> + <ctl name="SPK DAC Switch" value="1" /> + </path> + + <path name="speaker-skuf"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM RX2 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="Two" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP1" value="RX2" /> + <ctl name="RDAC4 MUX" value="DEM3" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="COMP2 Switch" value="1" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="speaker-lite-skuf"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM RX2 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="Two" /> + <ctl name="RX2 MIX1 INP1" value="RX1" /> + <ctl name="RX3 MIX1 INP1" value="RX2" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="RDAC4 MUX" value="DEM2" /> + <ctl name="RDAC3 MUX" value="DEM1" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR1 Enable Band1" value="1" /> + <ctl name="IIR1 Enable Band2" value="1" /> + <ctl name="IIR1 Enable Band3" value="1" /> + <ctl name="IIR1 Enable Band4" value="1" /> + <ctl name="IIR1 Enable Band5" value="1" /> + </path> + + <path name="sidetone-headphones"> + <path name="sidetone-iir" /> + <ctl name="IIR1 INP1 Volume" value="68" /> + <ctl name="RX1 MIX2 INP1" value="IIR1" /> + <ctl name="RX2 MIX2 INP1" value="IIR1" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR1 INP1 Volume" value="48" /> + <ctl name="RX1 MIX2 INP1" value="IIR1" /> + </path> + + <path name="speaker-mic"> + <path name="adc3" /> + <ctl name="DEC1 Volume" value="60" /> + <ctl name="ADC3 Volume" value="12" /> + </path> + + <path name="handset"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="CLASS_H_DSM MUX" value="RX_HPHL" /> + <ctl name="RX1 Digital Volume" value="60" /> + <ctl name="RDAC3 MUX" value="DEM2" /> + <ctl name="EAR PA Gain" value="POS_6_DB" /> + <ctl name="DAC1 Switch" value="1" /> + </path> + + <path name="handset-mic"> + <path name="adc1" /> + <ctl name="ADC1 Volume" value="12" /> + <ctl name="DEC1 Volume" value="60" /> + </path> + + <path name="anc-handset"> + <ctl name="ANC Function" value="ON" /> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="CLASS_H_DSM MUX" value="RX_HPHL" /> + <ctl name="RDAC3 MUX" value="DEM2" /> + <ctl name="DAC1 Switch" value="1" /> + <ctl name="RX1 Digital Volume" value="81" /> + <ctl name="ANC Slot" value="6" /> + <ctl name="ANC1 MUX" value="ADC3" /> + <ctl name="ADC3 Volume" value="14" /> + <ctl name="ANC1 FB MUX" value="EAR_HPH_L" /> + </path> + + <path name="headphones-lite"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM RX2 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="Two" /> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="RX2 MIX1 INP1" value="RX2" /> + <ctl name="CLASS_H_DSM MUX" value="RX_HPHL" /> + <ctl name="RDAC3 MUX" value="DEM2" /> + <ctl name="HPHL DAC Switch" value="1" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + <ctl name="RX1 Digital Volume" value="60" /> + <ctl name="RX2 Digital Volume" value="60" /> + </path> + + <path name="headphones"> + <path name="headphones-lite" /> + </path> + + <path name="headphones-lite-skuf"> + <path name="headphones-lite" /> + </path> + + <path name="headset-mic"> + <path name="adc2" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="DEC1 Volume" value="60" /> + </path> + + <path name="voice-handset"> + <path name="handset" /> + </path> + + <path name="voice-handset-tmus"> + <path name="handset" /> + </path> + + <path name="voice-speaker"> + <path name="speaker" /> + <ctl name="RX3 Digital Volume" value="65" /> + <ctl name="SPK DRV Volume" value="8" /> + </path> + + <path name="voice-speaker-mic"> + <path name="adc3" /> + <ctl name="DEC1 Volume" value="60" /> + <ctl name="ADC3 Volume" value="12" /> + </path> + + <path name="voice-headphones"> + <path name="headphones" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + <ctl name="RX1 Digital Volume" value="60" /> + <ctl name="RX2 Digital Volume" value="60" /> + </path> + + <path name="voice-headphones-lite"> + <path name="headphones-lite" /> + <ctl name="HPHL Volume" value="20" /> + <ctl name="HPHR Volume" value="20" /> + <ctl name="RX1 Digital Volume" value="60" /> + <ctl name="RX2 Digital Volume" value="60" /> + </path> + + <path name="voice-headphones-lite-skuf"> + <path name="voice-headphones-lite" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + <ctl name="ADC2 Volume" value="12" /> + <ctl name="DEC1 Volume" value="60" /> + </path> + + <path name="speaker-and-headphones"> + <path name="headphones" /> + <ctl name="RX1 Digital Volume" value="50" /> + <ctl name="RX2 Digital Volume" value="50" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX3 MIX1 INP2" value="RX2" /> + <ctl name="RX3 Digital Volume" value="63" /> + <ctl name="SPK DRV Volume" value="7" /> + <ctl name="SPK DAC Switch" value="1" /> + </path> + + <path name="speaker-and-headphones-lite"> + <path name="headphones" /> + <ctl name="RX1 Digital Volume" value="50" /> + <ctl name="RX2 Digital Volume" value="50" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX3 MIX1 INP2" value="RX2" /> + <ctl name="RX3 Digital Volume" value="63" /> + <ctl name="SPK DRV Volume" value="7" /> + <ctl name="SPK DAC Switch" value="1" /> + </path> + + <path name="speaker-and-headphones-skuf"> + <path name="headphones" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP1" value="RX2" /> + <ctl name="RDAC4 MUX" value="DEM3" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="COMP2 Switch" value="1" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="speaker-and-headphones-lite-skuf"> + <path name="headphones-lite" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="RDAC4 MUX" value="DEM2" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="usb-headphones"> + </path> + + <path name="afe-proxy"> + </path> + + <path name="transmission-fm"> + </path> + + <path name="anc"> + <ctl name="ANC Function" value="ON" /> + <ctl name="ANC Slot" value="0" /> + <ctl name="ANC1 FB MUX" value="EAR_HPH_L" /> + <ctl name="ANC1 MUX" value="ADC4" /> + <ctl name="ANC2 MUX" value="ADC5" /> + <ctl name="ADC5 Volume" value="7" /> + <ctl name="ADC4 Volume" value="7" /> + </path> + + <path name="anc-headphones"> + <path name="anc" /> + <path name="headphones" /> + <ctl name="COMP1 Switch" value="0" /> + <ctl name="HPHL Volume" value="8" /> + <ctl name="HPHR Volume" value="8" /> + </path> + + <path name="speaker-and-anc-headphones"> + <path name="anc-headphones" /> + <ctl name="RX4 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP2" value="RX2" /> + <ctl name="SPK DAC Switch" value="1" /> + <ctl name="COMP0 Switch" value="1" /> + </path> + + <path name="speaker-and-anc-headphones-skuf"> + <path name="anc-headphones" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP1" value="RX2" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="COMP2 Switch" value="1" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="anc-fb-headphones"> + <path name="anc-headphones" /> + <ctl name="ANC Slot" value="1" /> + </path> + + <path name="speaker-and-anc-fb-headphones"> + <path name="anc-fb-headphones" /> + <ctl name="RX4 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP2" value="RX2" /> + <ctl name="SPK DAC Switch" value="1" /> + <ctl name="COMP0 Switch" value="1" /> + </path> + + <path name="speaker-and-anc-fb-headphones-skuf"> + <path name="anc-fb-headphones" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX4 MIX1 INP1" value="RX2" /> + <ctl name="RDAC4 MUX" value="DEM3" /> + <ctl name="RDAC5 MUX" value="DEM4" /> + <ctl name="COMP2 Switch" value="1" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="LINEOUT2 Volume" value="20" /> + </path> + + <path name="voice-anc-headphones"> + <path name="anc-headphones" /> + <path name="sidetone-iir" /> + </path> + + <path name="voice-anc-fb-headphones"> + <path name="anc-fb-headphones" /> + <path name="sidetone-iir" /> + </path> + + <path name="hdmi"> + </path> + + <path name="speaker-and-usb-headphones"> + <path name="speaker" /> + <path name="usb-headphones" /> + </path> + + <path name="speaker-and-hdmi"> + <path name="speaker" /> + <path name="hdmi" /> + <ctl name="SPK DRV Volume" value="7" /> + </path> + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + <ctl name="ADC1 Volume" value="12" /> <!-- HW Change --> + <ctl name="DEC1 Volume" value="64" /> <!-- HW Change --> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + <ctl name="ADC1 Volume" value="12" /> <!-- HW Change --> + <ctl name="DEC1 Volume" value="64" /> <!-- HW Change --> + </path> + + <path name="hdmi-tx"> + <path name="handset-mic" /> + </path> + + <path name="bt-sco-headset"> + </path> + + <path name="bt-sco-mic"> + </path> + + <path name="bt-sco-headset-wb"> + </path> + + <path name="bt-sco-mic-wb"> + </path> + + <path name="usb-headset-mic"> + </path> + + <path name="capture-fm"> + </path> + + <path name="aanc-handset-mic"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX2" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX3" value="1" /> + <ctl name="SLIM_0_TX Channels" value="Three" /> + <ctl name="SLIM_0_RX AANC MUX" value="SLIMBUS_0_TX" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="ADC1" /> + <ctl name="ADC1 Volume" value="11" /> + <ctl name="SLIM TX2 MUX" value="DEC2" /> + <ctl name="DEC2 MUX" value="ADC3" /> + <ctl name="ADC3 Volume" value="11" /> + <ctl name="SLIM TX3 MUX" value="DEC3" /> + <ctl name="DEC3 MUX" value="ADC4" /> + <ctl name="ADC4 Volume" value="11" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <!-- Dual MIC devices --> + <path name="speaker-dmic-endfire"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX2" value="1" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="ADC1" /> + <ctl name="SLIM TX2 MUX" value="DEC2" /> + <ctl name="DEC2 MUX" value="ADC3" /> + <ctl name="SLIM_0_TX Channels" value="Two" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="dmic-endfire"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <!-- Quad MIC devices --> + <path name="speaker-qmic"> + <ctl name="AIF1_CAP Mixer SLIM TX1" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX2" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX3" value="1" /> + <ctl name="AIF1_CAP Mixer SLIM TX4" value="1" /> + <ctl name="SLIM_0_TX Channels" value="Four" /> + <ctl name="SLIM TX1 MUX" value="DEC1" /> + <ctl name="DEC1 MUX" value="DMIC1" /> + <ctl name="SLIM TX2 MUX" value="DEC2" /> + <ctl name="DEC2 MUX" value="DMIC2" /> + <ctl name="SLIM TX3 MUX" value="DEC3" /> + <ctl name="DEC3 MUX" value="DMIC3" /> + <ctl name="SLIM TX4 MUX" value="DEC4" /> + <ctl name="DEC4 MUX" value="DMIC4" /> + </path> + + <path name="quad-mic"> + <path name="speaker-qmic" /> + </path> + + + <!-- TTY devices --> + + <path name="tty-headphones-lite"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="CLASS_H_DSM MUX" value="RX_HPHL" /> + <ctl name="RDAC3 MUX" value="DEM2" /> + <ctl name="HPHL DAC Switch" value="1" /> + </path> + + <path name="tty-headphones"> + <path name="tty-headphones-lite" /> + <ctl name="COMP1 Switch" value="1" /> + </path> + + <path name="voice-tty-full-headphones"> + <ctl name="TTY Mode" value="FULL" /> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <ctl name="TTY Mode" value="VCO" /> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-full-headphones-lite"> + <ctl name="TTY Mode" value="FULL" /> + <path name="tty-headphones-lite" /> + </path> + + <path name="voice-tty-vco-headphones-lite"> + <ctl name="TTY Mode" value="VCO" /> + <path name="tty-headphones-lite" /> + </path> + + <path name="voice-tty-full-headphones-lite-skuf"> + <path name="voice-tty-full-headphones-lite" /> + </path> + + <path name="voice-tty-vco-headphones-lite-skuf"> + <path name="voice-tty-vco-headphones-lite" /> + </path> + + <path name="voice-tty-hco-handset"> + <ctl name="TTY Mode" value="HCO" /> + <path name="handset" /> + <ctl name="EAR PA Gain" value="POS_6_DB" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="adc2" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <path name="voice-tty-full-headset-mic" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="adc1" /> + </path> + + <path name="listen-handset-mic"> + <path name="adc1" /> + </path> + + <!-- LGE devices IRRC --> + <path name="lg-irrc-playback"> + <ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia2" value="1" /> + </path> + + <path name="lg-irrc-lineout"> + <ctl name="SLIM RX1 MUX" value="AIF1_PB" /> + <ctl name="SLIM_0_RX Channels" value="One" /> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="RX3 Digital Volume" value="88" /> + <ctl name="LINEOUT1 Volume" value="20" /> + <ctl name="SPK DAC Switch" value="0" /> + </path> + <!-- LGE devices VOICE MEMO --> + <path name="lg-vm-handset-mic"> + <path name="handset-mic" /> + <ctl name="ADC1 Volume" value="12" /> <!-- HW Change --> + <ctl name="DEC1 Volume" value="64" /> <!-- HW Change --> + </path> + + <path name="lg-vm-headset-mic"> + <path name="headset-mic" /> + <ctl name="ADC2 Volume" value="12" /> <!-- HW Change --> + </path> + + <!-- LGE devices VOICE RECOGNITION --> + <path name="lg-vr-handset-mic"> + <path name="handset-mic" /> + <ctl name="ADC1 Volume" value="12" /> <!-- HW Change --> + <ctl name="DEC1 Volume" value="64" /> <!-- HW Change --> + </path> + + <path name="lg-vr-headset-mic"> + <path name="headset-mic" /> + <ctl name="ADC2 Volume" value="12" /> <!-- HW Change --> + </path> + + <!-- LGE devices NREC --> + <path name="lg-bt-nrec-sco-mic"> + </path> + + <path name="lg-bt-nrec-sco-wb-mic"> + </path> + + <!-- LGE devices HAC --> + <path name="lg-hac-handset"> + <path name="handset" /> + + </path> + + <!-- LGE devices VC --> + <path name="lg-vc-handset"> + <path name="handset" /> + </path> + + <!-- LGE devices loopback --> + <path name="lg-loopback-earpiece"> + <path name="handset" /> + <ctl name="RX1 Digital Volume" value="60" /> + </path> + + <path name="lg-loopback-headset"> + <path name="headphones" /> + <ctl name="HPHL Volume" value="15" /> <!-- HW Change --> + <ctl name="HPHR Volume" value="15" /> <!-- HW Change --> + <ctl name="RX1 Digital Volume" value="57" /> <!-- HW Change --> + <ctl name="RX2 Digital Volume" value="57" /> <!-- HW Change --> + </path> + + <path name="lg-loopback-speaker"> + <path name="speaker" /> + <ctl name="SPK DRV Volume" value="7" /> <!-- HW Change --> + <ctl name="RX3 Digital Volume" value="60" /> <!-- HW Change --> + </path> + + <path name="lg-loopback-earpiece-mic"> + <path name="adc1" /> + <ctl name="DEC1 Volume" value="60" /> <!-- HW Change --> + <ctl name="ADC1 Volume" value="12" /> <!-- HW Change --> + </path> + + <path name="lg-loopback-headset-mic"> + <path name="adc2" /> + <ctl name="DEC1 Volume" value="55" /> <!-- HW Change --> + <ctl name="ADC2 Volume" value="12" /> <!-- HW Change --> + </path> + + <path name="lg-loopback-speaker-mic"> + <path name="adc3" /> + <ctl name="DEC1 Volume" value="55" /> <!-- HW Change --> + <ctl name="ADC3 Volume" value="12" /> <!-- HW Change --> + <!-- <ctl name="DEC4 Volume" value="99" />--> <!-- HW Change --> + </path> + + <path name="lg-voip-loopback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="1" /> + <ctl name="Internal BTSCO SampleRate" value="8000" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="1" /> + </path> + + <path name="lg-voip-loopback bt-sco-wb"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="1" /> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="1" /> + </path> + + <path name="lg-mictest-speaker-mic"> + <path name="speaker-mic" /> + <ctl name="DEC1 Volume" value="72" /> + <ctl name="ADC3 Volume" value="12" /> + </path> + +</mixer> diff --git a/prebuilt/fixup.sh b/prebuilt/fixup.sh new file mode 100755 index 0000000..8da873b --- /dev/null +++ b/prebuilt/fixup.sh @@ -0,0 +1,10 @@ +#!/sbin/sh + +model=`cat /proc/cmdline | sed 's/.*model.name=\([^ ]*\).*/\1/'` + +if [ "$model" = "LG-D618" ] || [ "$model" = "LG-D610" ]; then + rm /system/etc/permissions/android.hardware.nfc.xml + rm /system/etc/permissions/android.hardware.nfc.hce.xml + rm /system/lib/hw/nfc_nci.pn54x.default.so + rm -rf /system/app/NfcNci +fi diff --git a/prebuilt/usr/idc/touch_dev.idc b/prebuilt/usr/idc/touch_dev.idc new file mode 100755 index 0000000..65544f3 --- /dev/null +++ b/prebuilt/usr/idc/touch_dev.idc @@ -0,0 +1,49 @@ +# Copyright (C) 2011 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. + +# +# Input Device Calibration File for the Tuna touch screen. +# + +device.internal = 1 + +# Basic Parameters +touch.deviceType = touchScreen +touch.orientationAware = 1 + +# Gesture Mode Parameters +touch.gestureMode = spots + + +# Size +touch.size.calibration = geometric +touch.size.scale = 1 +touch.size.bias = 0 +touch.size.isSummed = 0 + +# Pressure +# Driver reports signal strength as pressure. +# +# A normal thumb touch typically registers about 200 signal strength +# units although we don't expect these values to be accurate. +touch.pressure.calibration = physical +touch.pressure.scale = 0.004 + +# Orientation +touch.orientation.calibration = none + +touch.distance.calibration = none +touch.distance.scale = 1 + +keyboard.layout = gpio-keys
\ No newline at end of file diff --git a/prebuilt/usr/keylayout/Generic.kl b/prebuilt/usr/keylayout/Generic.kl new file mode 100755 index 0000000..f10ba96 --- /dev/null +++ b/prebuilt/usr/keylayout/Generic.kl @@ -0,0 +1,441 @@ +# Copyright (C) 2010 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. + +# +# Generic key layout file for full alphabetic US English PC style external keyboards. +# +# This file is intentionally very generic and is intended to support a broad rang of keyboards. +# Do not edit the generic key layout to support a specific keyboard; instead, create +# a new key layout file with the required keyboard configuration. +# + +key 1 ESCAPE +key 2 1 +key 3 2 +key 4 3 +key 5 4 +key 6 5 +key 7 6 +key 8 7 +key 9 8 +key 10 9 +key 11 0 +key 12 MINUS +key 13 EQUALS +key 14 DEL +key 15 TAB +key 16 Q +key 17 W +key 18 E +key 19 R +key 20 T +key 21 Y +key 22 U +key 23 I +key 24 O +key 25 P +key 26 LEFT_BRACKET +key 27 RIGHT_BRACKET +key 28 ENTER +key 29 CTRL_LEFT +key 30 A +key 31 S +key 32 D +key 33 F +key 34 G +key 35 H +key 36 J +key 37 K +key 38 L +key 39 SEMICOLON +key 40 APOSTROPHE +key 41 GRAVE +key 42 SHIFT_LEFT +key 43 BACKSLASH +key 44 Z +key 45 X +key 46 C +key 47 V +key 48 B +key 49 N +key 50 M +key 51 COMMA +key 52 PERIOD +key 53 SLASH +key 54 SHIFT_RIGHT +key 55 NUMPAD_MULTIPLY +key 56 ALT_LEFT +key 57 SPACE +key 58 CAPS_LOCK +key 59 F1 +key 60 F2 +key 61 F3 +key 62 F4 +key 63 F5 +key 64 F6 +key 65 F7 +key 66 F8 +key 67 F9 +key 68 F10 +key 69 NUM_LOCK +key 70 SCROLL_LOCK +key 71 NUMPAD_7 +key 72 NUMPAD_8 +key 73 NUMPAD_9 +key 74 NUMPAD_SUBTRACT +key 75 NUMPAD_4 +key 76 NUMPAD_5 +key 77 NUMPAD_6 +key 78 NUMPAD_ADD +key 79 NUMPAD_1 +key 80 NUMPAD_2 +key 81 NUMPAD_3 +key 82 NUMPAD_0 +key 83 NUMPAD_DOT +# key 84 (undefined) +key 85 ZENKAKU_HANKAKU +key 86 BACKSLASH +key 87 F11 +key 88 F12 +key 89 RO +# key 90 "KEY_KATAKANA" +# key 91 "KEY_HIRAGANA" +key 92 HENKAN +key 93 KATAKANA_HIRAGANA +key 94 MUHENKAN +key 95 NUMPAD_COMMA +key 96 NUMPAD_ENTER +key 97 CTRL_RIGHT +key 98 NUMPAD_DIVIDE +key 99 SYSRQ +key 100 ALT_RIGHT +# key 101 "KEY_LINEFEED" +key 102 MOVE_HOME +key 103 DPAD_UP +key 104 PAGE_UP +key 105 DPAD_LEFT +key 106 DPAD_RIGHT +key 107 MOVE_END +key 108 DPAD_DOWN +key 109 PAGE_DOWN +key 110 INSERT +key 111 FORWARD_DEL +# key 112 "KEY_MACRO" +key 113 VOLUME_MUTE +key 114 VOLUME_DOWN +key 115 VOLUME_UP +key 116 POWER +key 117 NUMPAD_EQUALS +# key 118 "KEY_KPPLUSMINUS" +key 119 BREAK +# key 120 (undefined) +key 121 NUMPAD_COMMA +key 122 KANA +key 123 EISU +key 124 YEN +key 125 META_LEFT +key 126 META_RIGHT +key 127 MENU +key 128 MEDIA_STOP +# key 129 "KEY_AGAIN" +# key 130 "KEY_PROPS" +# key 131 "KEY_UNDO" +# key 132 "KEY_FRONT" +# key 133 "KEY_COPY" +# key 134 "KEY_OPEN" +# key 135 "KEY_PASTE" +# key 136 "KEY_FIND" +# key 137 "KEY_CUT" +# key 138 "KEY_HELP" +key 139 MENU +key 140 CALCULATOR +# key 141 "KEY_SETUP" +key 142 SLEEP +key 143 WAKEUP +# key 144 "KEY_FILE" +# key 145 "KEY_SENDFILE" +# key 146 "KEY_DELETEFILE" +# key 147 "KEY_XFER" +# key 148 "KEY_PROG1" +# key 149 "KEY_PROG2" +key 150 EXPLORER +# key 151 "KEY_MSDOS" +key 152 POWER +# key 153 "KEY_DIRECTION" +# key 154 "KEY_CYCLEWINDOWS" +key 155 ENVELOPE +key 156 BOOKMARK +# key 157 "KEY_COMPUTER" +key 158 BACK +key 159 FORWARD +key 160 MEDIA_CLOSE +key 161 MEDIA_EJECT +key 162 MEDIA_EJECT +key 163 MEDIA_NEXT +key 164 MEDIA_PLAY_PAUSE +key 165 MEDIA_PREVIOUS +key 166 MEDIA_STOP +key 167 MEDIA_RECORD +key 168 MEDIA_REWIND +key 169 CALL +# key 170 "KEY_ISO" +key 171 MUSIC +key 172 HOME +# key 173 "KEY_REFRESH" +# key 174 "KEY_EXIT" +# key 175 "KEY_MOVE" +# key 176 "KEY_EDIT" +key 177 PAGE_UP +key 178 PAGE_DOWN +key 179 NUMPAD_LEFT_PAREN +key 180 NUMPAD_RIGHT_PAREN +# key 181 "KEY_NEW" +# key 182 "KEY_REDO" +# key 183 F13 +# key 184 F14 +# key 185 F15 +# key 186 F16 +# key 187 F17 +# key 188 F18 +# key 189 F19 +# key 190 F20 +# key 191 F21 +# key 192 F22 +# key 193 F23 +# key 194 F24 +# key 195 (undefined) +# key 196 (undefined) +# key 197 (undefined) +# key 198 (undefined) +# key 199 (undefined) +key 200 MEDIA_PLAY +key 201 MEDIA_PAUSE +# key 202 "KEY_PROG3" +# key 203 "KEY_PROG4" +# key 204 (undefined) +# key 205 "KEY_SUSPEND" +# key 206 "KEY_CLOSE" +key 207 MEDIA_PLAY +key 208 MEDIA_FAST_FORWARD +# key 209 "KEY_BASSBOOST" +# key 210 "KEY_PRINT" +# key 211 "KEY_HP" +key 212 CAMERA +key 213 MUSIC +# key 214 "KEY_QUESTION" +key 215 ENVELOPE +# key 216 "KEY_CHAT" +key 217 SEARCH +# key 218 "KEY_CONNECT" +# key 219 "KEY_FINANCE" +# key 220 "KEY_SPORT" +# key 221 "KEY_SHOP" +# key 222 "KEY_ALTERASE" +# key 223 "KEY_CANCEL" +key 224 BRIGHTNESS_DOWN +key 225 BRIGHTNESS_UP +key 226 HEADSETHOOK + +key 256 BUTTON_1 +key 257 BUTTON_2 +key 258 BUTTON_3 +key 259 BUTTON_4 +key 260 BUTTON_5 +key 261 BUTTON_6 +key 262 BUTTON_7 +key 263 BUTTON_8 +key 264 BUTTON_9 +key 265 BUTTON_10 +key 266 BUTTON_11 +key 267 BUTTON_12 +key 268 BUTTON_13 +key 269 BUTTON_14 +key 270 BUTTON_15 +key 271 BUTTON_16 + +key 288 BUTTON_1 +key 289 BUTTON_2 +key 290 BUTTON_3 +key 291 BUTTON_4 +key 292 BUTTON_5 +key 293 BUTTON_6 +key 294 BUTTON_7 +key 295 BUTTON_8 +key 296 BUTTON_9 +key 297 BUTTON_10 +key 298 BUTTON_11 +key 299 BUTTON_12 +key 300 BUTTON_13 +key 301 BUTTON_14 +key 302 BUTTON_15 +key 303 BUTTON_16 + + +key 304 BUTTON_A +key 305 BUTTON_B +key 306 BUTTON_C +key 307 BUTTON_X +key 308 BUTTON_Y +key 309 BUTTON_Z +key 310 BUTTON_L1 +key 311 BUTTON_R1 +key 312 BUTTON_L2 +key 313 BUTTON_R2 +key 314 BUTTON_SELECT +key 315 BUTTON_START +key 316 BUTTON_MODE +key 317 BUTTON_THUMBL +key 318 BUTTON_THUMBR + + +# key 352 "KEY_OK" +key 353 DPAD_CENTER +# key 354 "KEY_GOTO" +# key 355 "KEY_CLEAR" +# key 356 "KEY_POWER2" +# key 357 "KEY_OPTION" +# key 358 "KEY_INFO" +# key 359 "KEY_TIME" +# key 360 "KEY_VENDOR" +# key 361 "KEY_ARCHIVE" +key 362 GUIDE +# key 363 "KEY_CHANNEL" +# key 364 "KEY_FAVORITES" +# key 365 "KEY_EPG" +key 366 DVR +# key 367 "KEY_MHP" +# key 368 "KEY_LANGUAGE" +# key 369 "KEY_TITLE" +# key 370 "KEY_SUBTITLE" +# key 371 "KEY_ANGLE" +# key 372 "KEY_ZOOM" +# key 373 "KEY_MODE" +# key 374 "KEY_KEYBOARD" +# key 375 "KEY_SCREEN" +# key 376 "KEY_PC" +key 377 TV +# key 378 "KEY_TV2" +# key 379 "KEY_VCR" +# key 380 "KEY_VCR2" +# key 381 "KEY_SAT" +# key 382 "KEY_SAT2" +# key 383 "KEY_CD" +# key 384 "KEY_TAPE" +# key 385 "KEY_RADIO" +# key 386 "KEY_TUNER" +# key 387 "KEY_PLAYER" +# key 388 "KEY_TEXT" +# key 389 "KEY_DVD" +# key 390 "KEY_AUX" +# key 391 "KEY_MP3" +# key 392 "KEY_AUDIO" +# key 393 "KEY_VIDEO" +# key 394 "KEY_DIRECTORY" +# key 395 "KEY_LIST" +# key 396 "KEY_MEMO" +key 397 CALENDAR +# key 398 "KEY_RED" +# key 399 "KEY_GREEN" +# key 400 "KEY_YELLOW" +# key 401 "KEY_BLUE" +key 402 CHANNEL_UP +key 403 CHANNEL_DOWN +# key 404 "KEY_FIRST" +# key 405 "KEY_LAST" +# key 406 "KEY_AB" +# key 407 "KEY_NEXT" +# key 408 "KEY_RESTART" +# key 409 "KEY_SLOW" +# key 410 "KEY_SHUFFLE" +# key 411 "KEY_BREAK" +# key 412 "KEY_PREVIOUS" +# key 413 "KEY_DIGITS" +# key 414 "KEY_TEEN" +# key 415 "KEY_TWEN" + +key 429 CONTACTS + +# key 448 "KEY_DEL_EOL" +# key 449 "KEY_DEL_EOS" +# key 450 "KEY_INS_LINE" +# key 451 "KEY_DEL_LINE" + + +key 464 FUNCTION +key 465 ESCAPE FUNCTION +key 466 F1 FUNCTION +key 467 F2 FUNCTION +key 468 F3 FUNCTION +key 469 F4 FUNCTION +key 470 F5 FUNCTION +key 471 F6 FUNCTION +key 472 F7 FUNCTION +key 473 F8 FUNCTION +key 474 F9 FUNCTION +key 475 F10 FUNCTION +key 476 F11 FUNCTION +key 477 F12 FUNCTION +key 478 1 FUNCTION +key 479 2 FUNCTION +key 480 D FUNCTION +key 481 E FUNCTION +key 482 F FUNCTION +key 483 S FUNCTION +key 484 B FUNCTION + + +# key 497 KEY_BRL_DOT1 +# key 498 KEY_BRL_DOT2 +# key 499 KEY_BRL_DOT3 +# key 500 KEY_BRL_DOT4 +# key 501 KEY_BRL_DOT5 +# key 502 KEY_BRL_DOT6 +# key 503 KEY_BRL_DOT7 +# key 504 KEY_BRL_DOT8 + +key 580 APP_SWITCH +key 582 VOICE_ASSIST + +# Keys defined by HID usages +key usage 0x0c006F BRIGHTNESS_UP +key usage 0x0c0070 BRIGHTNESS_DOWN + +# Joystick and game controller axes. +# Axes that are not mapped will be assigned generic axis numbers by the input subsystem. +axis 0x00 X +axis 0x01 Y +axis 0x02 Z +axis 0x03 RX +axis 0x04 RY +axis 0x05 RZ +axis 0x06 THROTTLE +axis 0x07 RUDDER +axis 0x08 WHEEL +axis 0x09 GAS +axis 0x0a BRAKE +axis 0x10 HAT_X +axis 0x11 HAT_Y + +# LEDs +led 0x00 NUM_LOCK +led 0x01 CAPS_LOCK +led 0x02 SCROLL_LOCK +led 0x03 COMPOSE +led 0x04 KANA +led 0x05 SLEEP +led 0x06 SUSPEND +led 0x07 MUTE +led 0x08 MISC +led 0x09 MAIL +led 0x0a CHARGING diff --git a/proprietary-blobs.txt b/proprietary-blobs.txt new file mode 100644 index 0000000..da608c0 --- /dev/null +++ b/proprietary-blobs.txt @@ -0,0 +1,148 @@ +# Adreno fw +etc/firmware/leia_pfp_470.fw +etc/firmware/leia_pm4_470.fw +etc/firmware/a225p5_pm4.fw +# Keystore firmware +vendor/firmware/keymaster/keymaster.b00 +vendor/firmware/keymaster/keymaster.b02 +vendor/firmware/keymaster/keymaster.mdt +vendor/firmware/keymaster/keymaster.b01 +vendor/firmware/keymaster/keymaster.b03 +# Venus (media) firmware +etc/firmware/venus.b01 +etc/firmware/venus.b03 +etc/firmware/venus.mbn +etc/firmware/venus.b00 +etc/firmware/venus.b02 +etc/firmware/venus.b04 +etc/firmware/venus.mdt +# Graphics firmware +etc/firmware/a225_pm4.fw +etc/firmware/a300_pm4.fw +etc/firmware/a330_pm4.fw +etc/firmware/a225_pfp.fw +etc/firmware/a300_pfp.fw +etc/firmware/a330_pfp.fw +# Camera firmware +etc/firmware/cpp_firmware_v1_1_6.fw +etc/firmware/cpp_firmware_v1_1_1.fw +etc/firmware/cpp_firmware_v1_2_0.fw +etc/firmware/cpp_firmware_v1_2_1.fw +# NFC Firmware +etc/firmware/Signedrompatch_v20.bin +etc/firmware/Signedrompatch_v21.bin +etc/firmware/Signedrompatch_v24.bin +etc/firmware/Signedrompatch_v30.bin +etc/firmware/nfc_test.bin + +# Bluetooth +bin/bdaddr_loader +bin/btnvtool +bin/hci_qcomm_init +lib/libatd_corelib.so +-lib/libbtnv.so +lib/liblgftmitem.so + +# Camera +bin/mm-qcamera-daemon +lib/hw/camera.msm8226.so +lib/libmmcamera_imx179.so +lib/libchromatix_imx179_common.so +lib/libchromatix_imx179_default_video.so +lib/libchromatix_imx179_preview.so +lib/libchromatix_imx179_snapshot.so +lib/libHDR.so +lib/libmmcamera_interface.so +lib/libmorpho_image_stab31.so +lib/libmorpho_memory_allocator.so +lib/libmorpho_panorama_gp.so +lib/libmorpho_noise_reduction.so +lib/libmmjpeg_interface.so +lib/libmm-qcamera.so +vendor/lib/liboemcamera.so +vendor/lib/libmmjpeg.so +vendor/lib/libjpegdhw.so +vendor/lib/libjpegehw.so +vendor/lib/libI420colorconvert.so +vendor/lib/libmmqjpeg_codec.so +vendor/lib/libchromatix_imx119_common.so +vendor/lib/libchromatix_imx119_default_video.so +vendor/lib/libchromatix_imx119_preview.so + +vendor/lib/libmmcamera2_c2d_module.so +vendor/lib/libmmcamera2_cpp_module.so +vendor/lib/libmmcamera2_frame_algorithm.so +vendor/lib/libmmcamera2_iface_modules.so +vendor/lib/libmmcamera2_imglib_modules.so +vendor/lib/libmmcamera2_isp_modules.so +vendor/lib/libmmcamera2_is.so +vendor/lib/libmmcamera2_pproc_modules.so +vendor/lib/libmmcamera2_sensor_modules.so +vendor/lib/libmmcamera2_stats_algorithm.so +vendor/lib/libmmcamera2_stats_modules.so +vendor/lib/libmmcamera2_vpe_module.so +vendor/lib/libmmcamera2_wnr_module.so +vendor/lib/libmmcamera_faceproc.so +vendor/lib/libmmcamera_hdr_gb_lib.so +vendor/lib/libmmcamera_hdr_lib.so +vendor/lib/libmmcamera_imglib.so +vendor/lib/libmmcamera_imx119.so +vendor/lib/libmmcamera_imx179_eeprom.so +vendor/lib/libmmcamera_tintless_algo.so +vendor/lib/libmmcamera_tintless_bg_pca_algo.so +vendor/lib/libmmcamera_tuning.so +vendor/lib/libmmcamera_wavelet_lib.so + +vendor/lib/libactuator_dw9714_camcorder.so +vendor/lib/libactuator_dw9714_camera.so +vendor/lib/libactuator_dw9714_imx091_camcorder.so +vendor/lib/libactuator_dw9714_imx091_camera.so +vendor/lib/libactuator_dw9714_imx091.so +vendor/lib/libactuator_dw9714_imx219_475t_camcorder.so +vendor/lib/libactuator_dw9714_imx219_475t_camera.so +vendor/lib/libactuator_dw9714_imx219_475t.so +vendor/lib/libactuator_dw9714.so +vendor/lib/libactuator_dw9716_camcorder.so +vendor/lib/libactuator_dw9716_camera.so +vendor/lib/libactuator_dw9716.so +vendor/lib/libactuator_dw9718_camcorder.so +vendor/lib/libactuator_dw9718_camera.so +vendor/lib/libactuator_dw9718_imx179_camcorder.so +vendor/lib/libactuator_dw9718_imx179_camera.so +vendor/lib/libactuator_dw9718_imx179.so +vendor/lib/libactuator_dw9718_imx219_495t_camcorder.so +vendor/lib/libactuator_dw9718_imx219_495t_camera.so +vendor/lib/libactuator_dw9718_imx219_495t.so +vendor/lib/libactuator_dw9718_ov8858_camcorder.so +vendor/lib/libactuator_dw9718_ov8858_camera.so +vendor/lib/libactuator_dw9718_ov8858.so +vendor/lib/libactuator_dw9718.so +vendor/lib/libactuator_iu074_camcorder.so +vendor/lib/libactuator_iu074_camera.so +vendor/lib/libactuator_iu074.so +vendor/lib/libactuator_ov12830_camcorder.so +vendor/lib/libactuator_ov12830_camera.so +vendor/lib/libactuator_ov12830.so +vendor/lib/libactuator_ov8825_camcorder.so +vendor/lib/libactuator_ov8825_camera.so +vendor/lib/libactuator_ov8825.so +vendor/lib/libactuator_rohm_bu64243gwz_camcorder.so +vendor/lib/libactuator_rohm_bu64243gwz_camera.so +vendor/lib/libactuator_rohm_bu64243gwz.so +vendor/lib/libqomx_jpegdec.so +vendor/lib/libqomx_jpegenc.so + +# FM radio +bin/fm_qsoc_patches + +# Sensors +vendor/lib/hw/sensors.msm8226.so +vendor/lib/libsensor1.so +vendor/lib/libsensor_reg.so +bin/sensors.qcom +vendor/lib/libsensor_test.so +vendor/lib/libsensor_thresh.so +vendor/lib/libsensor_user_cal.so +# just in case +vendor/lib/libsensor_lge_cal.so + diff --git a/recovery.fstab b/recovery.fstab new file mode 100644 index 0000000..a6a0654 --- /dev/null +++ b/recovery.fstab @@ -0,0 +1,8 @@ +/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait +/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check +/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,noauto_da_alloc,discard,data=ordered,errors=continue wait,check,encryptable=/dev/block/platform/msm_sdcc.1/by-name/encrypt +/dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults +/dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults +/dev/block/platform/msm_sdcc.1/by-name/misc /misc emmc defaults defaults +/dev/block/mmcblk1p1 /external_sd vfat defaults defaults + diff --git a/releasetools.py b/releasetools.py new file mode 100644 index 0000000..5818b9c --- /dev/null +++ b/releasetools.py @@ -0,0 +1,31 @@ +# Copyright (C) 2012 The Android Open Source Project +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +import os + +TARGET_DIR = os.getenv('OUT') +def InstallEnd_SetSpecificDeviceConfigs(self): + self.output_zip.write(os.path.join(TARGET_DIR, "fixup.sh"), "fixup.sh") + self.script.AppendExtra('package_extract_file("fixup.sh", "/tmp/fixup.sh");') + self.script.AppendExtra('set_metadata("/tmp/fixup.sh", "uid", 0, "gid", 0, "mode", 0755);') + self.script.Mount("/system") + self.script.AppendExtra('run_program("/tmp/fixup.sh");') + +def FullOTA_InstallEnd(self): + InstallEnd_SetSpecificDeviceConfigs(self) + +def IncrementalOTA_InstallEnd(self): + InstallEnd_SetSpecificDeviceConfigs(self) + diff --git a/setup-makefiles.sh b/setup-makefiles.sh new file mode 100755 index 0000000..62be739 --- /dev/null +++ b/setup-makefiles.sh @@ -0,0 +1,123 @@ +#!/bin/bash + +VENDOR=lge +DEVICE=g2m +OUTDIR=vendor/$VENDOR/$DEVICE +MAKEFILE=../../../$OUTDIR/$DEVICE-vendor-blobs.mk + +(cat << EOF) > $MAKEFILE +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh + +PRODUCT_COPY_FILES += \\ +EOF + +LINEEND=" \\" +COUNT=`cat proprietary-blobs.txt | grep -v ^# | grep -v ^$ | wc -l | awk {'print $1'}` +for FILE in `cat proprietary-blobs.txt | grep -v ^# | grep -v ^$ | sed -e 's#^/system/##g'`; do + COUNT=`expr $COUNT - 1` + if [ $COUNT = "0" ]; then + LINEEND="" + fi + if [[ ! "$FILE" =~ ^-.* ]]; then + FILE=`echo $FILE | sed -e "s/^-//g"` + echo " $OUTDIR/proprietary/$FILE:system/$FILE$LINEEND" >> $MAKEFILE + fi +done + +(cat << EOF) > ../../../$OUTDIR/$DEVICE-vendor.mk +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh + +# Pick up overlay for features that depend on non-open-source files +DEVICE_PACKAGE_OVERLAYS := vendor/$VENDOR/$DEVICE/overlay + +PRODUCT_PACKAGES += \\ + libbtnv \\ + +#com.qualcomm.services.location +\$(call inherit-product, vendor/$VENDOR/$DEVICE/$DEVICE-vendor-blobs.mk) +EOF + +(cat << EOF) > ../../../$OUTDIR/BoardConfigVendor.mk +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh + +USE_CAMERA_STUB := false +EOF + +(cat << EOF) > ../../../$OUTDIR/Android.mk +# Copyright (C) 2014 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# 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. + +# This file is generated by device/$VENDOR/$DEVICE/setup-makefiles.sh + +ifneq (\$(filter g2m,\$(TARGET_DEVICE)),) + +LOCAL_PATH := \$(call my-dir) + +include \$(CLEAR_VARS) +LOCAL_MODULE := libbtnv +LOCAL_MODULE_OWNER := $VENDOR +LOCAL_SRC_FILES := proprietary/lib/libbtnv.so +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_SUFFIX := .so +LOCAL_MODULE_CLASS := SHARED_LIBRARIES +LOCAL_MODULE_PATH := \$(TARGET_OUT_SHARED_LIBRARIES) +LOCAL_PROPRIETARY_MODULE := true +include \$(BUILD_PREBUILT) + +endif + +EOF + diff --git a/vendorsetup.sh b/vendorsetup.sh new file mode 100644 index 0000000..e0154c3 --- /dev/null +++ b/vendorsetup.sh @@ -0,0 +1,25 @@ +# +# Copyright (C) 2011 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. +# + +# This file is executed by build/envsetup.sh, and can use anything +# defined in envsetup.sh. +# +# In particular, you can add lunch options with the add_lunch_combo +# function: add_lunch_combo generic-eng + +#dd_lunch_combo full_mb526-eng +add_lunch_combo cm_g2m-userdebug + |
