diff --git a/BoardConfig.mk b/BoardConfig.mk index edad6da4..2426de88 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -29,7 +29,6 @@ TARGET_SPECIFIC_HEADER_PATH := $(LOCAL_PATH)/include BOARD_VENDOR := htc - # Bootloader TARGET_NO_BOOTLOADER := true @@ -46,9 +45,11 @@ TARGET_CPU_VARIANT := scorpion ARCH_ARM_HAVE_TLS_REGISTER := true TARGET_NEEDS_NON_PIE_SUPPORT := true +# Libc extensions +BOARD_PROVIDES_ADDITIONAL_BIONIC_STATIC_LIBS += libc_htc_symbols + # Flags COMMON_GLOBAL_CFLAGS += -DQCOM_HARDWARE -COMMON_GLOBAL_CFLAGS += -DHTCLOG COMMON_GLOBAL_CFLAGS += -DQCOM_BSP # Fonts @@ -60,6 +61,9 @@ BOARD_USES_QCOM_HARDWARE := true # Audio COMMON_GLOBAL_CFLAGS += -DHTC_ACOUSTIC_AUDIO -DLEGACY_QCOM_VOICE BOARD_USES_LEGACY_ALSA_AUDIO := true +AUDIO_FEATURE_ENABLED_COMPRESS_VOIP := false +AUDIO_FEATURE_ENABLED_PROXY_DEVICE := false +AUDIO_FEATURE_ENABLED_INCALL_MUSIC := true # Camera BOARD_NEEDS_MEMORYHEAPPMEM := true @@ -79,7 +83,6 @@ AUDIO_FEATURE_ENABLED_FM := true TARGET_GPS_HAL_PATH := $(LOCAL_PATH)/gps BOARD_VENDOR_QCOM_GPS_LOC_API_AMSS_VERSION := 50000 - # Graphics USE_OPENGL_RENDERER := true TARGET_DISPLAY_USE_RETIRE_FENCE := true @@ -87,6 +90,7 @@ TARGET_USES_C2D_COMPOSITION := true TARGET_USES_ION := true NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3 TARGET_DISPLAY_INSECURE_MM_HEAP := true +DEVICE_RESOLUTION := 540x960 # Media TARGET_NO_ADAPTIVE_PLAYBACK := true @@ -112,11 +116,15 @@ BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x01400000 TARGET_KERNEL_CONFIG := pyramid_defconfig TARGET_KERNEL_SOURCE := kernel/htc/pyramid +# Recovery +TARGET_RECOVERY_DEVICE_MODULES += chargeled TARGET_RECOVERY_FSTAB := device/htc/pyramid/rootdir/etc/fstab.pyramid RECOVERY_FSTAB_VERSION := 2 TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888" RECOVERY_GRAPHICS_USE_LINELENGTH := true TARGET_RECOVERY_DEVICE_DIRS += device/htc/pyramid +RECOVERY_SDCARD_ON_DATA := true +BOARD_HAS_NO_REAL_SDCARD := true # Required for Sensors COMMON_GLOBAL_CFLAGS += -DNEEDS_VECTORIMPL_SYMBOLS @@ -141,16 +149,17 @@ BOARD_HARDWARE_CLASS := $(LOCAL_PATH)/cmhw # RIL BOARD_RIL_CLASS := ../../../$(LOCAL_PATH)/ril +# USB +TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/platform/msm_hsusb/gadget/lun0/file" + # Misc BOARD_USES_LEGACY_MMAP := true BOARD_SUPPRESS_EMMC_WIPE := true +BOARD_SUPPRESS_SECURE_ERASE := true # Use dlmalloc MALLOC_IMPL := dlmalloc -# Recovery -TARGET_RECOVERY_DEVICE_MODULES += chargeled - # SELinux -include device/qcom/sepolicy/sepolicy.mk @@ -169,11 +178,11 @@ TARGET_USERIMAGES_USE_F2FS := true BOARD_VOLD_MAX_PARTITIONS := 36 BOARD_BOOTIMAGE_PARTITION_SIZE := 16777216 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 16776192 -BOARD_SYSTEMIMAGE_PARTITION_SIZE := 838859776 +BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1252770816 BOARD_USERDATAIMAGE_PARTITION_SIZE := 1252770816 BOARD_FLASH_BLOCK_SIZE := 262144 -# Twrp +# TWRP TW_THEME := portrait_mdpi TW_INCLUDE_CRYPTO := true TW_NO_SCREEN_BLANK := true @@ -183,4 +192,10 @@ TW_NO_CPU_TEMP := true TW_NEW_ION_HEAP := true TW_INCLUDE_NTFS_3G := true TW_BRIGHTNESS_PATH := "/sys/class/leds/lcd-backlight/brightness" -TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/platform/msm_hsusb/gadget/lun0/file" +TW_BACKUP_DATA_MEDIA := false + +# Dalvik/ART +WITH_DEXPREOPT := true +WITH_DEXPREOPT_COMP := false +WITH_DEXPREOPT_PIC := true +WITH_ART_SMALL_MODE := true diff --git a/configs/audio_policy.conf b/configs/audio_policy.conf deleted file mode 100644 index 9078769b..00000000 --- a/configs/audio_policy.conf +++ /dev/null @@ -1,97 +0,0 @@ -# Global configuration section: lists input and output devices always present on the device -# as well as the output device selected by default. -# Devices are designated by a string that corresponds to the enum in audio.h - -global_configuration { - attached_output_devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE - default_output_device AUDIO_DEVICE_OUT_SPEAKER - attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_COMMUNICATION -} - -# audio hardware module section: contains descriptors for all audio hw modules present on the -# device. Each hw module node is named after the corresponding hw module library base name. -# For instance, "primary" corresponds to audio.primary..so. -# The "primary" module is mandatory and must include at least one output with -# AUDIO_OUTPUT_FLAG_PRIMARY flag. -# Each module descriptor contains one or more output profile descriptors and zero or more -# input profile descriptors. Each profile lists all the parameters supported by a given output -# or input stream category. -# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding -# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n". - -audio_hw_modules { - primary { - outputs { - hdmi { - sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 - channel_masks dynamic - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_AUX_DIGITAL - flags AUDIO_OUTPUT_FLAG_DIRECT - } - primary { - sampling_rates 44100|48000 - channel_masks AUDIO_CHANNEL_OUT_STEREO - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_FM_TX|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_USB_ACCESSORY - flags AUDIO_OUTPUT_FLAG_PRIMARY - } - lpa { - sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 - channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM_TX|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_USB_ACCESSORY - flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_LPA - } - tunnel { - sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 - channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO - formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_AMR_WB_PLUS - devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM_TX|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_USB_ACCESSORY - flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_TUNNEL - } - } - inputs { - primary { - sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 - channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_VOICE_CALL_MONO|AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO|AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO - formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_WB - devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_AUX_DIGITAL|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_PROXY|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_USB_DEVICE|AUDIO_DEVICE_IN_COMMUNICATION - } - voip_tx { - sampling_rates 8000|16000 - channel_masks AUDIO_CHANNEL_IN_MONO - formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB - devices AUDIO_DEVICE_IN_COMMUNICATION - } - } - } - a2dp { - outputs { - a2dp { - sampling_rates 44100 - channel_masks AUDIO_CHANNEL_OUT_STEREO - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_ALL_A2DP - } - } - } - r_submix { - outputs { - submix { - sampling_rates 48000 - channel_masks AUDIO_CHANNEL_OUT_STEREO - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX - } - } - inputs { - submix { - sampling_rates 48000 - channel_masks AUDIO_CHANNEL_IN_STEREO - formats AUDIO_FORMAT_PCM_16_BIT - devices AUDIO_DEVICE_IN_REMOTE_SUBMIX - } - } - } -} diff --git a/device_pyramid.mk b/device_pyramid.mk index 898f641e..0bdcd02a 100644 --- a/device_pyramid.mk +++ b/device_pyramid.mk @@ -48,7 +48,9 @@ PRODUCT_PACKAGES += \ audio.a2dp.default \ audio.r_submix.default \ audio.usb.default \ + audio_policy.msm8660 \ audio.primary.msm8660 \ + audio_policy.conf \ libaudioutils \ libdashplayer \ libaudio-resampler @@ -106,6 +108,11 @@ PRODUCT_PACKAGES += \ make_ext4fs \ setup_fs +# IPv6 tethering +PRODUCT_PACKAGES += \ + ebtables \ + ethertypes + # Net PRODUCT_PACKAGES += \ libnetcmdiface \ @@ -123,10 +130,6 @@ PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \ bt_vendor.conf -# Audio policy configuration -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/configs/audio_policy.conf:system/etc/audio_policy.conf - # Media configuration PRODUCT_COPY_FILES += \ frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \ @@ -223,6 +226,7 @@ $(call inherit-product, device/htc/pyramid/media_a1026.mk) ## htc audio settings $(call inherit-product, device/htc/pyramid/media_htcaudio.mk) +# setup dalvik vm configs $(call inherit-product, frameworks/native/build/phone-hdpi-512-dalvik-heap.mk) # Discard inherited values and use our own instead. diff --git a/libc_htc_symbols/Android.mk b/libc_htc_symbols/Android.mk new file mode 100644 index 00000000..d12f51ce --- /dev/null +++ b/libc_htc_symbols/Android.mk @@ -0,0 +1,25 @@ +# 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. + +LOCAL_PATH := $(call my-dir) +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := \ + htc_log.c + +LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES) +LOCAL_MODULE := libc_htc_symbols +LOCAL_MODULE_TAGS := optional + +include $(BUILD_STATIC_LIBRARY) diff --git a/libc_htc_symbols/htc_log.c b/libc_htc_symbols/htc_log.c new file mode 100644 index 00000000..e5f46c66 --- /dev/null +++ b/libc_htc_symbols/htc_log.c @@ -0,0 +1,34 @@ +/* + * 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. + */ + +#ifndef __unused +#define __unused __attribute__((__unused__)) +#endif + +signed int __htclog_read_masks(char *buf __unused, signed int len __unused) +{ + return 0; +} + +int __htclog_init_mask(const char *a1 __unused, unsigned int a2 __unused, int a3 __unused) +{ + return 0; +} + +int __htclog_print_private(int a1 __unused, const char *a2 __unused, const char *fmt __unused, ...) +{ + return 0; +} diff --git a/overlay/frameworks/base/core/res/res/xml/storage_list.xml b/overlay/frameworks/base/core/res/res/xml/storage_list.xml index 208b2c3f..8aeda205 100644 --- a/overlay/frameworks/base/core/res/res/xml/storage_list.xml +++ b/overlay/frameworks/base/core/res/res/xml/storage_list.xml @@ -1,7 +1,7 @@ - + - - + + + + android:storageDescription="@string/storage_usb" + android:removable="true" /> diff --git a/recovery.fstab b/recovery.fstab deleted file mode 100644 index 780f9a78..00000000 --- a/recovery.fstab +++ /dev/null @@ -1,10 +0,0 @@ -# mount point fstype device [device2] [length=] - -/recovery emmc /dev/block/mmcblk0p21 -/boot emmc /dev/block/mmcblk0p20 -/cache ext4 /dev/block/mmcblk0p24 -/data ext4 /dev/block/mmcblk0p23 length=-16384 -/sd-ext ext4 /dev/block/mmcblk1p2 -/sdcard vfat /dev/block/mmcblk1p1 -/system ext4 /dev/block/mmcblk0p22 -/misc emmc /dev/block/mmcblk0p31 diff --git a/recovery.fstab b/recovery.fstab new file mode 120000 index 00000000..368a16b4 --- /dev/null +++ b/recovery.fstab @@ -0,0 +1 @@ +recovery/root/etc/twrp.fstab \ No newline at end of file diff --git a/recovery/root/etc/twrp.fstab b/recovery/root/etc/twrp.fstab index 82a48d70..72461022 100644 --- a/recovery/root/etc/twrp.fstab +++ b/recovery/root/etc/twrp.fstab @@ -1,12 +1,9 @@ -# mount point fstype device [device2] [length=] - -/boot emmc /dev/block/mmcblk0p20 -/recovery emmc /dev/block/mmcblk0p21 -/system ext4 /dev/block/mmcblk0p22 -/data ext4 /dev/block/mmcblk0p23 length=-16384 -/cache ext4 /dev/block/mmcblk0p24 -/misc emmc /dev/block/mmcblk0p31 -/sdcard vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1 flags=display="MicroSD card";storage;wipeingui;removable -/sd-ext ext4 /dev/block/mmcblk1p2 flags=display="SD-Ext";wipeingui;removable -#/usb-otg vfat /dev/block/sda1 /dev/block/sda flags=display="USB OTG";storage;wipeingui;removable +# mount point fstype device [device2] [length=] +/boot emmc /dev/block/mmcblk0p20 +/recovery emmc /dev/block/mmcblk0p21 +/system ext4 /dev/block/mmcblk0p23 +/data f2fs /dev/block/mmcblk1 length=-16384 +/cache ext4 /dev/block/mmcblk0p22 +/misc emmc /dev/block/mmcblk0p31 +/usbdisk vfat /dev/block/sda1 /dev/block/sda flags=display="usbdisk";storage;wipeingui;removable diff --git a/recovery/root/init.recovery.pyramid.rc b/recovery/root/init.recovery.pyramid.rc index 0424624c..824bd8be 100755 --- a/recovery/root/init.recovery.pyramid.rc +++ b/recovery/root/init.recovery.pyramid.rc @@ -56,15 +56,3 @@ service power_test /sbin/power_test disabled oneshot seclabel u:r:recovery:s0 - -# Always start adbd on userdebug and eng builds -on property:ro.debuggable=1 - #write /sys/class/android_usb/android0/enable 1 - #start adbd - setprop service.adb.root 1 - -# Restart adbd so it can run as root -on property:service.adb.root=1 - write /sys/class/android_usb/android0/enable 0 - restart adbd - write /sys/class/android_usb/android0/enable 1 diff --git a/rootdir/etc/fstab.pyramid b/rootdir/etc/fstab.pyramid old mode 100755 new mode 100644 index dd914230..4af8df65 --- a/rootdir/etc/fstab.pyramid +++ b/rootdir/etc/fstab.pyramid @@ -1,25 +1,24 @@ # Android fstab file. -# -#/dev/block/platform/msm_sdcc.1/by-name/dsps /firmware_dsps vfat ro,shortname=lower wait -/dev/block/platform/msm_sdcc.1/by-name/radio /firmware_radio vfat ro,shortname=lower,context=u:object_r:firmware_file:s0 wait -/dev/block/platform/msm_sdcc.1/by-name/adsp /firmware_q6 vfat ro,shortname=lower,context=u:object_r:firmware_file:s0 wait -#/dev/block/platform/msm_sdcc.1/by-name/wcnss /firmware_wcnss vfat ro,shortname=lower wait - -/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/platform/msm_sdcc.1/by-name/devlog /devlog ext4 noatime,nosuid,nodev,barrier=0 wait -/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 rw,noatime,barrier=0 wait -/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=0 wait -/dev/block/platform/msm_sdcc.1/by-name/cache /cache f2fs rw,discard,nosuid,nodev,noatime,nodiratime,inline_xattr wait,check -/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,noauto_da_alloc,barrier=0 wait,encryptable=footer,length=-16384 -/dev/block/platform/msm_sdcc.1/by-name/userdata /data f2fs rw,discard,nosuid,nodev,noatime,nodiratime,inline_xattr wait,check,encryptable=footer,length=-16384 - -# SD card -/devices/platform/msm_sdcc.3/mmc_host/mmc1* auto vfat defaults voldmanaged=sdcard0:auto,noemulatedsd +# +#/dev/block/platform/msm_sdcc.1/by-name/dsps /firmware_dsps vfat ro,shortname=lower wait +/dev/block/platform/msm_sdcc.1/by-name/radio /firmware_radio vfat ro,shortname=lower,context=u:object_r:firmware_file:s0 wait +/dev/block/platform/msm_sdcc.1/by-name/adsp /firmware_q6 vfat ro,shortname=lower,context=u:object_r:firmware_file:s0 wait +#/dev/block/platform/msm_sdcc.1/by-name/wcnss /firmware_wcnss vfat ro,shortname=lower wait +/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/platform/msm_sdcc.1/by-name/devlog /devlog ext4 rw,noatime,nosuid,nodev,barrier=0 wait +/dev/block/platform/msm_sdcc.1/by-name/userdata /system ext4 ro,noatime,barrier=0 wait +/dev/block/platform/msm_sdcc.1/by-name/system /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered,nomblk_io_submit,noauto_da_alloc,errors=panic wait,check +/dev/block/platform/msm_sdcc.1/by-name/system /cache f2fs rw,discard,nosuid,nodev,noatime,nodiratime,inline_xattr wait,check +/dev/block/platform/msm_sdcc.3/mmcblk1 /data ext4 noatime,nosuid,nodev,barrier=1,data=ordered,nomblk_io_submit,noauto_da_alloc,errors=panic wait,check,encryptable=footer,length=-16384 +/dev/block/platform/msm_sdcc.3/mmcblk1 /data f2fs noatime,nodiratime,nosuid,nodev,inline_xattr,discard,rw wait,check,encryptable=footer,length=-16384 # USB storage -/devices/platform/msm_hsusb_host.0/usb1* auto auto defaults voldmanaged=usbdisk:auto +/devices/platform/msm_hsusb_host.0/usb1 auto auto defaults voldmanaged=usbdisk:auto,noemulatedsd # ZRAM -/dev/block/zram0 none swap defaults zramsize=268435456 +/dev/block/zram0 none swap defaults zramsize=100663296 + +# System as secondary swap +/dev/block/platform/msm_sdcc.1/by-name/cache none swap defaults defaults diff --git a/rootdir/etc/init.pyramid.rc b/rootdir/etc/init.pyramid.rc index 64a68273..e1a84314 100755 --- a/rootdir/etc/init.pyramid.rc +++ b/rootdir/etc/init.pyramid.rc @@ -2,26 +2,27 @@ import init.pyramid.usb.rc on early-init write /sys/devices/system/cpu/cpu1/online 1 - write /sys/block/mmcblk0/bdi/read_ahead_kb 512 - write /sys/block/mmcblk0/queue/scheduler noop - # ZRAM - write /sys/block/zram0/comp_algorithm lz4 - write /sys/block/zram0/max_comp_streams 2 + # ZRAM + write /sys/block/zram0/comp_algorithm lz4 + write /sys/block/zram0/max_comp_streams 2 on init mkdir /devlog 0700 root root - mkdir /mnt/media_rw/sdcard0 0700 media_rw media_rw - mkdir /mnt/media_rw/usbdisk 0700 media_rw media_rw - mkdir /storage/sdcard0 0700 root root - mkdir /storage/usbdisk 0700 root root + # See storage config details at http://source.android.com/tech/storage/ + mkdir /mnt/shell/emulated 0700 shell shell + mkdir /storage/emulated 0555 root root - # for backwards compatibility - symlink /storage/sdcard0 /sdcard - symlink /storage/sdcard0 /mnt/sdcard - symlink /storage/usbdisk /usbdisk - symlink /storage/usbdisk /mnt/usbdisk + export EXTERNAL_STORAGE /storage/emulated/legacy + export EMULATED_STORAGE_SOURCE /mnt/shell/emulated + export EMULATED_STORAGE_TARGET /storage/emulated + + # Support legacy paths + symlink /storage/emulated/legacy /sdcard + symlink /storage/emulated/legacy /mnt/sdcard + symlink /storage/emulated/legacy /storage/sdcard0 + symlink /mnt/shell/emulated/0 /storage/emulated/legacy setprop ro.usb.idproduct.ums 0c86 setprop ro.usb.idproduct.rndis 0c86 @@ -29,17 +30,16 @@ on init setprop ro.usb.idproduct.mtp_adb 0f87 setprop ro.usb.idproduct.ptp 0f87 - export EXTERNAL_STORAGE /storage/sdcard0 - export SECONDARY_STORAGE /storage/usbdisk - on fs - # create firmware mount points mkdir /firmware_radio 0771 system system mkdir /firmware_q6 0771 system system # mount all mmc partitions mount_all /fstab.pyramid + # init and enable swap partitions (zram and cache) + mkswap /dev/block/platform/msm_sdcc.1/by-name/cache swapon_all /fstab.pyramid + write /proc/sys/vm/swappiness 60 mkdir /data/tombstones 0771 system system symlink /data/tombstones /tombstones @@ -51,11 +51,12 @@ on fs chmod 0644 /proc/cmdline setprop ro.crypto.tmpfs_options size=128m,mode=0771,uid=1000,gid=1000 + setprop ro.crypto.fuse_sdcard true # Force loading of modem and Q6 images write /dev/smd_pkt_loopback 1 - # link widevine drm library path + # link widevine drm library path symlink /system/vendor/lib /vendor/lib mount_all /remount.pyramid @@ -65,6 +66,8 @@ on post-fs-data chown root root /devlog chmod 0700 /devlog + mkdir /data/media 0770 media_rw media_rw + # Set indication (checked by vold) that we have finished this action setprop vold.post_fs_data_done 1 @@ -251,29 +254,24 @@ service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL oneshot service dhcpcd_p2p /system/bin/dhcpcd -aABKL - disabled - oneshot + disabled + oneshot service dhcpcd_bt-pan /system/bin/dhcpcd -ABKL - disabled - oneshot + disabled + oneshot service iprenew_bt-pan /system/bin/dhcpcd -n - disabled - oneshot + disabled + oneshot service iprenew_wlan0 /system/bin/dhcpcd -n - disabled - oneshot -# wifi-- - -service fuse_sdcard0 /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/sdcard0 /storage/sdcard0 - class late_start - disabled + disabled + oneshot -service fuse_usbdisk /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/usbdisk /storage/usbdisk - class late_start - disabled +# virtual sdcard daemon running as media_rw (1023) +service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated + class late_start on property:init.svc.bootanim=stopped start qcom-post-boot @@ -328,9 +326,5 @@ on property:sys.boot_completed=1 write /sys/keyboard/vol_wakeup 1 start thermald -on property:init.svc.bootanim=stopped - write /sys/block/mmcblk0/queue/scheduler fiops - on property:sys.radio.shutdown=true exec /system/bin/sh /system/etc/init.qcom.efs.sync.sh - diff --git a/rootdir/etc/remount.pyramid b/rootdir/etc/remount.pyramid old mode 100755 new mode 100644 index 6dfc0ed8..b65a7edd --- a/rootdir/etc/remount.pyramid +++ b/rootdir/etc/remount.pyramid @@ -1,3 +1,3 @@ # Android fstab file. -# -/dev/block/mmcblk0p22 /system ext4 remount,ro,noatime,barrier=0 wait +# +/dev/block/mmcblk0p22 /system ext4 remount,ro,noatime,barrier=0 wait diff --git a/system_prop.mk b/system_prop.mk index f658125f..7e2c3f28 100644 --- a/system_prop.mk +++ b/system_prop.mk @@ -5,27 +5,25 @@ PRODUCT_PROPERTY_OVERRIDES += \ ro.sf.lcd_density=240 -# radio +# Radio PRODUCT_PROPERTY_OVERRIDES += \ mobiledata.interfaces=rmnet0 \ rild.libpath=/system/lib/libhtc_ril.so \ ro.telephony.ril_class=HtcMsm8660RIL -# wifi +# WiFi PRODUCT_PROPERTY_OVERRIDES += \ - wifi.interface=wlan0 + wifi.interface=wlan0 # UMS PRODUCT_PROPERTY_OVERRIDES += \ - persist.sys.usb.config=mtp,adb \ + persist.sys.usb.config=mtp \ ro.vold.umsdirtyratio=20 -# tweaks +# Tweaks PRODUCT_PROPERTY_OVERRIDES += \ - dalvik.vm.dexopt-data-only=1 \ - dalvik.vm.dexopt-flags=m=y \ - windowsmgr.max_events_per_sec=300 \ - pm.sleep_mode=1 + windowsmgr.max_events_per_sec=300 \ + pm.sleep_mode=1 # Display PRODUCT_PROPERTY_OVERRIDES += \ @@ -38,11 +36,14 @@ PRODUCT_PROPERTY_OVERRIDES += \ ro.opengles.version=131072 \ debug.egl.recordable.rgba8888=1 -## misc +# Misc PRODUCT_PROPERTY_OVERRIDES += \ ro.setupwizard.enable_bypass=1 \ - dalvik.vm.lockprof.threshold=500 \ ro.com.google.locationfeatures=1 # USB-OTG persist.sys.isUsbOtgEnabled=true + +# Scheduler +PRODUCT_PROPERTY_OVERRIDES += \ + sys.io.scheduler=bfq