142 Commits

Author SHA1 Message Date
milaq
f288784d3d goomanager: update to 2.1.2 2012-10-26 14:57:51 +02:00
Micha LaQua
aafeeb796b update gb lunchcombo 2012-10-16 22:22:43 +03:00
21568c23d1 update goomanager apk 2012-06-07 10:27:12 +01:00
7f59896ab0 include GooManager and goo.im build props 2012-05-23 09:04:04 +01:00
Michael
525cc98c92 remove tts voice files to save some space (can still be downloaded from within tts settings) 2012-05-03 12:41:10 +03:00
milaq
a3ad693d9f bootlogo: readd a logo to circumvent ugly artifacts at boottime 2012-04-09 18:12:33 +02:00
milaq
874aad284b revert webkit accel - not stable enough (causes occasional kps) (1/2) 2012-03-29 17:44:04 +02:00
Michael
a4b907fe2d scrolling cache: dont disable it by default; while it increases performance for some it degrades performance for too many other apps. depend on this commit instead: http://review.cyanogenmod.com/#change,12555 2012-03-19 13:50:33 +01:00
Michael
638140c968 init: read_ahead tweaks only for system, cache and userdata 2012-03-15 16:04:45 +01:00
Michael
3158c6432a follow bravo, passion: Decreased max file size, height and width for MMS to comply with the 300kb file size limit 2012-03-11 16:22:45 +01:00
Michael
5d11aa1e77 power profile: correct battery capacity and larger values for screen vs bravo because of the bigger screen (taken from ace) 2012-03-11 16:16:38 +01:00
Michael
c4122e8165 camera: enable touchfocus 2012-03-09 19:48:40 +01:00
Michael
be1436191d follow bravo, passion: increase default heap 2012-03-09 19:24:11 +01:00
Michael
821247dd13 autobacklight: further tweak values, only use valid lightsensor value steps and improve readablity. also use correct keyboard backlight array size (even though we dont have one);
general: remove duplicate config_keyboardTapVibePattern entry
2012-03-09 16:28:14 +01:00
milaq
704acb8b90 media: add profiles for fake frontcamera (e.g. to prevent camera app fc when selecting front camera) 2012-03-07 18:04:35 +01:00
milaq
4050e34266 media: readd 720p profile 2012-03-07 17:52:35 +01:00
milaq
d36c7b8096 autobrightness: use a bit more conservative values as default 2012-03-07 16:45:02 +01:00
milaq
6e9881209a dont copy prebuilt firmware, we build the same from source 2012-03-06 20:46:46 +01:00
milaq
d766ef5a69 set c/c++ flags 2012-03-05 16:22:29 +01:00
milaq
a97b2c4938 support for webkit acceleration (1/2) 2012-03-05 16:21:31 +01:00
579f8b58e9 Revert: leo: added htc logo via logo.rle 2012-03-04 01:06:42 +00:00
81806ad79e leo: change place where the postrecoveryboot.sh is copied, better in leo.mk 2012-03-04 01:04:22 +00:00
Michael
dd01708929 as discussed on irc: inherit from languages_full.mk and add hdpi afterwards 2012-03-03 15:25:34 +01:00
zeusk
cc12a3f420 fix: default language and the hdpi resources issue 2012-03-03 19:00:19 +05:30
milaq
60e8019aa3 follow cyanogen: fix PRODUCT_LOCALES 2012-03-03 13:50:12 +01:00
eec7a73147 Merge pull request #7 from milaq/gingerbread
compositing and blur
2012-02-26 11:37:19 -08:00
milaq
84d14bea31 Merge remote-tracking branch 'upstream/gingerbread' into gingerbread 2012-02-26 14:55:06 +01:00
5cea6496ee Merge pull request #6 from zeusk/patch-2
Update full_leo.mk
2012-02-25 12:20:32 -08:00
zeusk
252638d8bd Update leo.mk 2012-02-25 14:19:51 +05:30
Michael
c71060864a disable scrolling cache by default for much more smooth scrolling 2012-02-24 15:41:46 +01:00
Michael
82baa95735 + reenable full alpha compositing
+ deactivate background blur for smoother window animations in some cases
2012-02-24 15:37:13 +01:00
9b5158465c Merge pull request #3 from milaq/gingerbread
new notification lights
2012-02-23 03:36:15 -08:00
milaq
3b9d7a4361 new notification lights in conjunction with custom autobrightness and dim.
the following stuff works properly now:
+ autobrightness
+ custom autobrightness values
+ blinking leds (e.g. for notifications) - green and amber
+ static leds (e.g. for charging) - green and amber
+ screen dimming
+ custom screen dim level
2012-02-23 12:34:55 +01:00
6e7d399ce8 Merge pull request #2 from milaq/gingerbread
media_profiles tweaking
2012-02-08 10:23:01 -08:00
4403e082f2 leo: add GPSSHIM compilation 2012-02-08 09:18:18 +00:00
milaq
9131f97531 media_profiles: lower -hd- preset to a resolution which is smoothly recordable; -high- preset is now w720; fix max bitrate for m4v 2012-02-02 15:53:24 +01:00
bcfb89fdd1 Merge pull request #1 from milaq/gingerbread
leo: various tweaks and fixes
2012-01-31 13:21:29 -08:00
milaq
3474867137 tweak media_profiles to ensure smooth video capture with the -high- profile 2012-01-31 21:34:02 +01:00
milaq
71dd3b0889 init: remove ppp stuff - this is handled by init.d.97ppp 2012-01-31 21:25:37 +01:00
milaq
dbf7872ab3 init: use default bravo read_ahead_kb and readd blocks 0-2 2012-01-31 21:24:16 +01:00
milaq
afd59f046c init: defaulting to vanilla CM7 (android_build.init.rc) values for lowmemkiller 2012-01-31 21:20:06 +01:00
milaq
9811344fed init: remove unused ondemand settings 2012-01-31 21:18:25 +01:00
milaq
2625364d21 init: remove lowmemkiller slot settings - this is also handled by init.rc from android_build. so no need to do it again 2012-01-31 21:14:33 +01:00
milaq
a64f0a963d init: remove duplicate camera symlinking 2012-01-31 21:13:31 +01:00
Michael
429607ba80 fix double entry in propfile extraction process 2012-01-31 21:04:14 +01:00
Michael
6c5838053d update kernel cmdline 2012-01-31 21:04:14 +01:00
Michael
290c650e92 omit minfile and check_filepages for now (may be revisited) 2012-01-31 21:04:14 +01:00
milaq
d1a8fa8c46 bcm4329: update to GRI40 2012-01-31 21:04:14 +01:00
cdf9033ff3 leo: dynamically add all modules in the prebuilt/modules folder 2011-12-08 01:41:47 +00:00
703b1be3bd leo: added htc logo via logo.rle 2011-11-27 21:18:11 +00:00
542be5d897 leo: reverted BOARD_HAS_LARGE_FILESYSTEM 2011-11-18 02:41:41 +00:00
0b536dfc40 leo: re-arrange BoardConfig 2011-11-18 02:10:43 +00:00
e50fb919fd Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_device_htc_leo into gingerbread 2011-11-15 01:30:10 +00:00
e1797ab279 leo: updated proprietary file extraction
Change-Id: Icf9b637ab964d69a0790cfb2e1c19636ff390e7f
2011-11-02 00:23:33 +00:00
1e181a1427 leo: removed libmm-omxcore.so 2011-10-31 22:43:29 +00:00
05743f46f0 leo: fix some proprietary files 2011-10-31 22:31:21 +00:00
afda0ec08e leo: fix some proprietary files 2011-10-31 21:47:31 +00:00
8b6688039d leo: added copy-files.sh 2011-10-30 23:39:36 +00:00
0d86e57b0b leo: more unzip/extract files update to use propritory-files.txt 2011-10-25 22:46:59 +01:00
fced698315 leo: Use a smarter method for extracting proprietary files
Change-Id: I94748f25bbeed32c321c1029908c981504c21de1
2011-10-25 21:11:15 +01:00
832646070d leo: oops accidently added the echo command 2011-10-25 21:05:00 +01:00
ea830913b9 leo: Use a smarter method for extracting proprietary files 2011-10-25 20:35:17 +01:00
98364a4494 leo: update to latest
* use device_htc_7x30-recovery for recovery
* fixed postrecoveryboot
* amended media_profiles.xml

Change-Id: I37bec28702aaa55155bfdb8a1a95d63b4bf45eb6
2011-10-25 13:50:02 +01:00
d5f9c47789 leo: fix recovery to include it properly from device_htc_7x30-recovery 2011-10-25 13:38:30 +01:00
cmhtcleo
f49e29bf84 leo: fix postrecoveryboot.sh 2011-10-24 22:21:16 +02:00
c5bc75241d leo: update to add recovery offmode charging 2011-10-24 21:17:20 +01:00
e829ba64be fix compile issue due to offmode charging in recobery 2011-10-24 15:16:21 +01:00
765f5cc47d leo: touch-foxus not in main yet, and therefore this in does not compile 2011-10-18 15:58:56 +01:00
3a1eed1381 leo: update media_profiles.xml from AmerCanAndroid 2011-10-18 09:39:31 +01:00
e65656ca7a leo: fix recovery compile issue 2011-10-17 03:03:32 +01:00
d421b05c0d leo: updated postrecoveryboot.sh with comments if we want dynamic change of recovery.fstab for sd-ext 2011-10-16 20:40:56 +01:00
40364b7f71 leo: updated work
* removed btld service from init.htcleo.rc
* updated modules, that had never been done before
* Added the LICENSE for the wrapper

Change-Id: I449a6be198610220c42721de91bbac798cc29a81
2011-10-16 20:38:01 +01:00
452d319c9a leo: added ueventd.htcleo.rc 2011-10-16 13:22:55 +01:00
Diogo Ferreira
13798da15e Merge "leo: update code" into gingerbread 2011-10-15 16:11:55 +04:00
Diogo Ferreira
4bdea2329c Merge "leo: Support new touch to focus overlay" into gingerbread 2011-10-15 16:08:01 +04:00
09a19f5d7c leo: removed btld again 2011-10-13 19:14:51 +01:00
77ea40b3e8 leo: update code
* move all prebuilt stuff into the prebuild folder
* Create the system.prop so that we can have spaces in the rild.args
* moved the LEOUPDATE stuff so now uses squisher
* changed the initrd.gz creating, so that everything is in init.htcleo.rc
* 01modules is now moved here, rather than cyanogen vendor files

Change-Id: I7fb7d87503e46f6a11a8228ae29b3f50187d5634
2011-10-12 11:46:10 +01:00
a6b56391f1 leo: fix bluetooth, and some minor tweaks 2011-10-11 23:10:56 +01:00
69ecd93377 leo: removed the btld service 2011-10-08 11:51:57 +01:00
a2723a09ed leo: modified init.htcleo.rc
* make similar to tytung and tyween
* keep some leo specific stuff
2011-10-06 02:04:01 +01:00
6a4d9c2ba1 leo: Added entries into init.htcleo.rc from tytung initrd 2011-10-06 01:41:45 +01:00
f30988f7d5 leo: more cleanup and prebuilt
* Cleaned up some scripts
* moved some more prebuilt stuff
2011-10-04 02:11:48 +01:00
d667d569f4 leo: first attempt with more organised folder structure 2011-10-04 01:44:50 +01:00
5868faf190 leo: fix script so that unmount is successfull 2011-10-03 20:33:45 +01:00
a63180a8a3 fixed the squisher script with the test case, and made echo statements for what the script is doing 2011-10-03 18:46:25 +01:00
975afea5f8 updated the squisher script 2011-10-03 16:49:08 +01:00
2f4a508d25 leo: now all leo specific stuff now in the build rather than other places 2011-10-03 16:35:01 +01:00
5474f86ed3 leo: fix GPS NMEA permission issues 2011-10-03 14:24:36 +01:00
dbf7120621 fixed bluetooth issue, caused by this small typo 2011-10-02 00:18:18 +01:00
51f1b5c413 added more leo specific stuff to init.htcleo.rx 2011-10-01 23:37:04 +01:00
2974fcbacc updated system.prop 2011-10-01 23:14:38 +01:00
5ef184cde2 remove RM.js, don't need it, removed the proprietory files not needed from extract-files.sh 2011-09-30 01:57:39 +01:00
123acb3039 leo: update the properties so that it is now in system.prop 2011-09-30 01:55:38 +01:00
42985a4d74 leo: uncommented all the services from init.htcleo.rc 2011-09-29 15:32:16 +01:00
2fff02bc6c removed more init.rc stuff 2011-09-29 02:08:13 +01:00
f4202152b2 fix rild issues 2011-09-29 01:58:21 +01:00
fccb9fd63e fix the rild args param in leo.mk 2011-09-29 01:02:01 +01:00
ed2b211764 leo: changed init.rc details again
* modified leo.mk to add the rild stuff, didn't need to have that in the init.rc
* modified back the other files so that we don't need the init.rc from leo, but from main CM
2011-09-29 00:14:06 +01:00
356a9ca71a leo: update so that ramdisk is automatically created by compilation 2011-09-28 02:22:46 +01:00
Emilio López
0515d0fe93 leo: Support new touch to focus overlay
Change-Id: Ic9449cfdf7fd0be4296ab1cf0133eaeda9d77ae2
2011-09-26 04:20:09 +00:00
7954b3b196 added init.htcleo.rc 2011-09-25 01:11:59 +01:00
99934e61ef Fix the dnsproxyd issue that was added
'This is a dependency for the DNS proxy CLs.

This CL also adds a new socket for the netd process to inherit which
is owned by the inet group.  (so only apps with the INTERNET
permission can use the DNS proxy...)'
2011-09-25 00:34:57 +01:00
bde4c9ced6 leo: Added the initrd uncompressed
will try to add to the build process somehow to create the initrd.gz from this directory
2011-09-04 11:59:04 +01:00
491578e176 leo: updated to libgps 2.1 NMEA (thanks to tytung) 2011-08-31 22:43:39 +01:00
43c99f3a9e Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_device_htc_leo into gingerbread 2011-08-31 01:30:18 +01:00
e6475587b2 Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_device_htc_leo into gingerbread 2011-08-17 01:30:10 +01:00
61467d0f18 leo: fix dhcpd_eth0 in init.leo.rc 2011-08-16 18:01:47 +01:00
0997cac3d0 leo: Add build barrier for other devices
This was breaking the normal builds on other devices...

Changed leo to htcleo, as that is what is in the vendor files
2011-08-16 09:40:17 +01:00
284b07cd48 use TARGET_BOOTLOADER_BOARD_NAME instead of statically using htcleo, probably need to change more soon 2011-08-13 02:30:20 +01:00
1fa6ce7906 removed duplicate value of config_animateScreenLights, and added comment wrt tablet tweaks 2011-08-12 10:58:27 +01:00
74e6b79ccd Fixed/Added gps.conf for EU 2011-08-11 00:34:54 +01:00
7bb1419ece fixed couple of build.prop and added custom gps.conf 2011-08-11 00:32:26 +01:00
16c60556b3 added entries into gps.conf for v2.0 of GPS 2011-08-07 01:49:42 +01:00
12861a9115 updated to latest GPS libs v2.0 NMEA 2011-08-07 01:02:05 +01:00
5c950fc2c5 enabled allow_in_call_touch_ui in the phone app 2011-08-06 11:08:16 +01:00
3af430148d Added libgps and changed initrd for permissions of /dev/smd27
* Updated to libgps 1.9 NMEA (credits tytung)
* changed initrd so that the permissions of the /dev/smd27 is correct
2011-07-31 01:02:24 +01:00
be412e9874 removed duplicate usb regex, and rmnet from wifi 2011-07-27 17:27:10 +01:00
a7c975743e Added tweaks in config.xml files
* Tablet tweaks
* some functionality that the leo has or it doesn't

Thanks to seadersn for this functionaly add
2011-07-22 15:14:41 +01:00
583934990e added missing gps code 2011-07-22 15:01:45 +01:00
a99e72d7ae added update for libgps from tytung (1.8 NMEA) 2011-07-20 22:44:55 +01:00
af5fc1119f libgps 1.7 (credits tytung) 2011-07-17 16:38:34 +01:00
f078808c05 fixed libhtc_ril_wrapper to compile with CM 2011-06-27 11:01:19 +01:00
bc9a06bdcd another fix 2011-06-27 10:53:10 +01:00
49f7f6d552 fixed typo 2011-06-27 10:46:21 +01:00
6995162644 fixed typo 2011-06-27 10:44:48 +01:00
735eff93ef added extra stuff to libgps to get compiled into CM 2011-06-27 10:41:01 +01:00
1c63b627e5 fix Android.mk (credits to tytung) (forgot to download it) 2011-06-27 00:55:49 +01:00
21c182ea64 updated gps libs to 1.5 (credit to tytung) 2011-06-27 00:42:20 +01:00
945d603e1a revert the time changes from tytung, as didn't compile 2011-06-15 10:20:22 +01:00
root
095a0d6458 added libgps (credit to tytung) and libhtc_ril_wrapper (credit to cedesmith) 2011-06-15 00:08:00 +01:00
root
9c8f0dd4b3 Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_device_htc_leo into gingerbread 2011-06-07 01:30:08 +01:00
747ea0b6e4 fixed postrecoveryboot 2011-05-25 00:52:03 +01:00
499f58e1f3 fixed postrecovery and added led stuff 2011-05-25 00:46:59 +01:00
c327fa2795 added RM js file 2011-05-20 23:35:47 +01:00
9b6e1687a5 fixed 2 ppp stuff 2011-05-17 19:18:45 +01:00
f05ef24973 added the new kernel modules from charan latest nightly 2011-05-14 02:49:55 +01:00
354f24634c initrd: fix eth0 scan issue, removed insmod of msm_rmnet.ko 2011-05-13 20:09:15 +01:00
f3dbfe434c fixed postrecoveryboot script for sh, rather than bash 2011-05-06 18:37:29 +01:00
d0a57d821c add support for dynamicially changing of recovery.fstab 2011-05-06 18:02:25 +01:00
de2f47b646 Merge branch 'gingerbread' of git://github.com/CyanogenMod/android_device_htc_leo into gingerbread 2011-05-01 00:26:47 +01:00
6680f39db9 fixed kernel base back to 0x11800000 2011-04-27 13:08:02 +01:00
4aff6597ba new kernel, fixed recovery size 2011-04-24 22:46:51 +01:00
59 changed files with 924 additions and 1140 deletions

View File

@@ -25,12 +25,5 @@ LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
ALL_PREBUILT += $(INSTALLED_KERNEL_TARGET)
file := $(TARGET_RECOVERY_ROOT_OUT)/sbin/postrecoveryboot.sh
ALL_PREBUILT += $(file)
$(file) : $(LOCAL_PATH)/postrecoveryboot.sh | $(ACP)
$(transform-prebuilt-to-target)
# include the non-open-source counterpart to this file
-include vendor/htc/leo/AndroidBoardVendor.mk

View File

@@ -28,57 +28,30 @@ USE_CAMERA_STUB := false
# inherit from the proprietary version
-include vendor/htc/leo/BoardConfigVendor.mk
TARGET_NO_BOOTLOADER := true
TARGET_BOARD_PLATFORM := qsd8k
TARGET_BOARD_PLATFORM_GPU := qcom-adreno200
# include recovery offmode stuff
-include device/htc/7x30-recovery/BoardConfigCommon.mk
TARGET_CPU_ABI := armeabi-v7a
TARGET_CPU_ABI2 := armeabi
TARGET_ARCH_VARIANT := armv7-a-neon
ARCH_ARM_HAVE_TLS_REGISTER := true
TARGET_GLOBAL_CFLAGS += -mfpu=neon -mfloat-abi=softfp
TARGET_GLOBAL_CPPFLAGS += -mfpu=neon -mfloat-abi=softfp
TARGET_NO_BOOTLOADER := true
BOARD_KERNEL_BASE := 0x11800000
BOARD_KERNEL_CMDLINE := no_console_suspend=1 console=null
TARGET_BOARD_PLATFORM := qsd8k
TARGET_BOARD_PLATFORM_GPU := qcom-adreno200
TARGET_BOOTLOADER_BOARD_NAME := htcleo
# Wifi related defines
BOARD_WPA_SUPPLICANT_DRIVER := WEXT
WPA_SUPPLICANT_VERSION := VER_0_6_X
BOARD_WLAN_DEVICE := bcm4329
WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/bcm4329.ko"
WIFI_DRIVER_FW_STA_PATH := "/vendor/firmware/fw_bcm4329.bin"
WIFI_DRIVER_FW_AP_PATH := "/vendor/firmware/fw_bcm4329_apsta.bin"
WIFI_DRIVER_MODULE_ARG := "firmware_path=/vendor/firmware/fw_bcm4329.bin nvram_path=/proc/calibration"
WIFI_DRIVER_MODULE_NAME := "bcm4329"
BOARD_KERNEL_CMDLINE := no_console_suspend=1 wire.search_count=5
BOARD_USES_GENERIC_AUDIO := false
BOARD_KERNEL_BASE := 0x11800000
BOARD_KERNEL_NEW_PPPOX := true
BOARD_HAVE_BLUETOOTH := true
BOARD_HAVE_BLUETOOTH_BCM := true
BOARD_VENDOR_QCOM_AMSS_VERSION := 1550
BOARD_VENDOR_USE_AKMD := akm8973
BOARD_EGL_CFG := device/htc/leo/egl.cfg
BOARD_USE_FROYO_LIBCAMERA := true
TARGET_USES_16BPPSURFACE_FOR_OPAQUE := true
BOARD_NO_RGBX_8888 := true
BOARD_USES_QCOM_LIBS := true
BOARD_USE_KINETO_COMPATIBILITY := true
BOARD_HAVE_FM_RADIO := true
BOARD_GLOBAL_CFLAGS += -DHAVE_FM_RADIO
# Use Special Leo update
TARGET_USES_LEOUPDATE := true
BOARD_EGL_CFG := device/htc/leo/prebuilt/egl.cfg
TARGET_RELEASETOOLS_EXTENSIONS := device/htc/common
TARGET_CUSTOM_RELEASETOOL := device/htc/leo/releasetools/squisher
# # cat /proc/mtd
# dev: size erasesize name
@@ -95,17 +68,43 @@ BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x09600000 # limited so we enforce room
BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x0d900000
BOARD_FLASH_BLOCK_SIZE := 131072
# Wifi related defines
BOARD_WPA_SUPPLICANT_DRIVER := WEXT
WPA_SUPPLICANT_VERSION := VER_0_6_X
BOARD_WLAN_DEVICE := bcm4329
WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/bcm4329.ko"
WIFI_DRIVER_FW_STA_PATH := "/vendor/firmware/fw_bcm4329.bin"
WIFI_DRIVER_FW_AP_PATH := "/vendor/firmware/fw_bcm4329_apsta.bin"
WIFI_DRIVER_MODULE_ARG := "firmware_path=/vendor/firmware/fw_bcm4329.bin nvram_path=/proc/calibration"
WIFI_DRIVER_MODULE_NAME := "bcm4329"
TARGET_RELEASETOOLS_EXTENSIONS := device/htc/common
TARGET_PREBUILT_KERNEL := device/htc/leo/kernel
BOARD_HAVE_BLUETOOTH := true
BOARD_HAVE_BLUETOOTH_BCM := true
BOARD_USES_GENERIC_AUDIO := false
BOARD_KERNEL_NEW_PPPOX := true
BOARD_USES_QCOM_LIBS := true
BOARD_VENDOR_QCOM_AMSS_VERSION := 1550
BOARD_VENDOR_USE_AKMD := akm8973
BOARD_USE_FROYO_LIBCAMERA := true
BOARD_NO_RGBX_8888 := true
BOARD_USE_KINETO_COMPATIBILITY := true
BOARD_HAVE_FM_RADIO := true
BOARD_GLOBAL_CFLAGS += -DHAVE_FM_RADIO
TARGET_USES_16BPPSURFACE_FOR_OPAQUE := true
TARGET_PREBUILT_KERNEL := device/htc/leo/prebuilt/kernel
TARGET_PREBUILT_RECOVERY_KERNEL := device/htc/leo/prebuilt/recovery_kernel
# to enable the GPS HAL
BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := leo
# AMSS version to use for GPS
BOARD_VENDOR_QCOM_GPS_LOC_API_AMSS_VERSION := 3200
TARGET_PREBUILT_RECOVERY_KERNEL := device/htc/leo/recovery_kernel
BOARD_USES_RECOVERY_CHARGEMODE := true
TARGET_PROVIDES_INIT_RC := true
BOARD_USES_GPSSHIM := true
BOARD_GPS_LIBRARIES := libgps librpc

47
copy-files.sh Executable file
View File

@@ -0,0 +1,47 @@
#!/bin/sh
# 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.
DEVICE=leo
MANUFACTURER=htc
STAGESYS=~/cm-$DEVICE/system
if [ "$1" = "pull" ]; then
if [ -s "$STAGESYS" ]; then
rm -R ~/cm-$DEVICE
fi
mkdir ~/cm-$DEVICE
mkdir $STAGESYS
mkdir $STAGESYS/bin
mkdir $STAGESYS/lib
mkdir $STAGESYS/etc
adb pull /system/bin $STAGESYS/bin
adb pull /system/lib $STAGESYS/lib
adb pull /system/etc $STAGESYS/etc
fi
OUTDIR=../../../vendor/$MANUFACTURER/$DEVICE
BASE=$OUTDIR/proprietary
rm -rf $BASE/*
for FILE in `cat proprietary-files.txt | grep -v ^# | grep -v ^$`; do
DIR=`dirname $FILE`
if [ ! -d $BASE/$DIR ]; then
mkdir -p $BASE/$DIR
fi
cp $STAGESYS/$FILE $BASE/$FILE
done
./setup-makefiles.sh

View File

@@ -19,92 +19,15 @@
DEVICE=leo
MANUFACTURER=htc
mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE/proprietary
adb pull /system/bin/akmd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/akmd
chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/akmd
adb pull /system/bin/parse_radio_log ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/parse_radio_log
chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/parse_radio_log
adb pull /system/etc/AudioBTID.csv ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/AudioBTID.csv
adb pull /system/etc/AdieHWCodecSetting.csv ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/AdieHWCodecSetting.csv
adb pull /system/etc/firmware/BCM4329B1_002.002.023.0360.0362.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/BCM4329B1_002.002.023.0360.0362.hcd
adb pull /system/etc/firmware/BCM4329B1_002.002.023.0436.0439.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/BCM4329B1_002.002.023.0436.0439.hcd
adb pull /system/etc/firmware/BCM4329B1_002.002.023.0436.0439.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/BCM4329B1_002.002.023.0436.0439.hcd
adb pull /system/etc/firmware/BCM4329B1_002.002.023.0511.0538.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/BCM4329B1_002.002.023.0511.0538.hcd
adb pull /system/etc/firmware/bcm4329.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/bcm4329.hcd
adb pull /system/etc/firmware/htcleo.acdb ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/htcleo.acdb
adb pull /system/etc/firmware/default.acdb ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/default.acdb
adb pull /system/etc/firmware/yamato_pfp.fw ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/yamato_pfp.fw
adb pull /system/etc/firmware/yamato_pm4.fw ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/yamato_pm4.fw
adb pull /system/lib/egl/libEGL_adreno200.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libEGL_adreno200.so
adb pull /system/lib/egl/libGLESv1_CM_adreno200.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libGLESv1_CM_adreno200.so
adb pull /system/lib/egl/libGLESv2_adreno200.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libGLESv2_adreno200.so
adb pull /system/lib/egl/libq3dtools_adreno200.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libq3dtools_adreno200.so
adb pull /system/lib/libcamera.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libcamera.so
adb pull /system/lib/libgsl.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libgsl.so
adb pull /system/lib/libhtc_acoustic.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libhtc_acoustic.so
adb pull /system/lib/libhtc_ril.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libhtc_ril.so
adb pull /system/lib/libhtc_ril_wrapper.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libhtc_ril_wrapper.so
adb pull /system/lib/liboemcamera.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/liboemcamera.so
adb pull /system/lib/libOmxVdec.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libOmxVdec.so
adb pull /system/lib/libOmxVidEnc.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libOmxVidEnc.so
adb pull /system/lib/libOmxCore.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libOmxCore.so
adb pull /system/lib/libmm-omxcore.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libmm-omxcore.so
adb pull /system/lib/libgps.so ..h/../../vendor/$MANUFACTURER/$DEVICE/proprietary/libgps.so
adb pull /system/lib/hw/gps.htcleo.so ..h/../../vendor/$MANUFACTURER/$DEVICE/proprietary/gps.htcleo.so
BASE=../../../vendor/$MANUFACTURER/$DEVICE/proprietary
rm -rf $BASE/*
(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/device-vendor-blobs.mk
# 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.
# This file is generated by device/__MANUFACTURER__/__DEVICE__/extract-files.sh - DO NOT EDIT
# Prebuilt libraries that are needed to build open-source libraries
PRODUCT_COPY_FILES := \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libcamera.so:obj/lib/libcamera.so
# All the blobs necessary for leo
PRODUCT_COPY_FILES += \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/akmd:system/bin/akmd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/parse_radio_log:system/bin/parse_radio_log \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/AudioBTID.csv:system/etc/AudioBTID.csv \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/AdieHWCodecSetting.csv:system/etc/AdieHWCodecSetting.csv \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/bcm4329.hcd:system/etc/firmware/bcm4329.hcd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/BCM4329B1_002.002.023.0360.0362.hcd:system/etc/firmware/BCM4329B1_002.002.023.0360.0362.hcd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/BCM4329B1_002.002.023.0436.0439.hcd:system/etc/firmware/BCM4329B1_002.002.023.0436.0439.hcd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/BCM4329B1_002.002.023.0511.0538.hcd:system/etc/firmware/BCM4329B1_002.002.023.0511.0538.hcd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/htcleo.acdb:system/etc/firmware/htcleo.acdb \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/bcm4329.hcd:system/etc/firmware/bcm4329.hcd \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/htcleo.acdb:system/etc/firmware/htcleo.acdb \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/default.acdb:system/etc/firmware/default.acdb \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/yamato_pfp.fw:system/etc/firmware/yamato_pfp.fw \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/yamato_pm4.fw:system/etc/firmware/yamato_pm4.fw \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libEGL_adreno200.so:system/lib/egl/libEGL_adreno200.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv1_CM_adreno200.so:system/lib/egl/libGLESv1_CM_adreno200.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv2_adreno200.so:system/lib/egl/libGLESv2_adreno200.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libq3dtools_adreno200.so:system/lib/egl/libq3dtools_adreno200.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libcamera.so:system/lib/libcamera.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libgsl.so:system/lib/libgsl.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libhtc_acoustic.so:system/lib/libhtc_acoustic.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libhtc_ril.so:system/lib/libhtc_ril.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libhtc_ril_wrapper.so:system/lib/libhtc_ril_wrapper.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/liboemcamera.so:system/lib/liboemcamera.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libOmxVdec.so:system/lib/libOmxVdec.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libOmxVidEnc.so:system/lib/libOmxVidEnc.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libOmxCore.so:system/lib/libOmxCore.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/gps.htcleo.so:system/lib/hw/gps.htcleo.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/libgps.so:system/lib/libgps.so \\
vendor/__MANUFACTURER__/__DEVICE__/proprietary/sensors.bravo.so:system/lib/hw/sensors.bravo.so \\
EOF
for FILE in `cat proprietary-files.txt | grep -v ^# | grep -v ^$`; do
DIR=`dirname $FILE`
if [ ! -d $BASE/$DIR ]; then
mkdir -p $BASE/$DIR
fi
adb pull /system/$FILE $BASE/$FILE
done
./setup-makefiles.sh

Binary file not shown.

Binary file not shown.

View File

@@ -24,6 +24,9 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
$(call inherit-product, device/htc/leo/leo_eu.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full.mk)
# Leo uses high-density artwork where available
PRODUCT_LOCALES += hdpi
# Discard inherited values and use our own instead.
PRODUCT_NAME := full_leo
PRODUCT_DEVICE := leo

14
goo.mk Normal file
View File

@@ -0,0 +1,14 @@
#
# Copyright (C) 2012 the cmhtcleo team
#
# GooManager specific stuff
#
PRODUCT_PROPERTY_OVERRIDES += \
ro.goo.developerid=cmhtcleo \
ro.goo.rom=cm7nightly \
ro.goo.version=$(shell date +%s)
# include goo manager
PRODUCT_COPY_FILES += \
device/htc/leo/prebuilt/GooManager.apk:system/app/GooManager.apk

View File

@@ -1,142 +0,0 @@
on boot
mount debugfs /sys/kernel/debug /sys/kernel/debug
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
# bluetooth power up/down interface
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chmod 0660 /sys/class/rfkill/rfkill0/state
chown radio radio /sys/module/pm/parameters/idle_sleep_mode
# Set error receiver
setprop ro.error.receiver.htc.apps com.android.updater
# ruu
write /data/misc/screen_lock_status 0
chown system system /data/misc/screen_lock_status
chmod 644 /data/misc/screen_lock_status
# for wireless modem
chown system system /sys/module/serial/parameters/modem_enabled
chown system system /dev/ttyHSUSB0
chown system system /dev/smd9
chown media media /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# Power Management
write /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate 40000
# Overwrite framework low memory killer minfree setting
write /sys/module/lowmemorykiller/parameters/minfree 3584,4096,6144,7168,7680,8192
# Enable low memory killer to check file pages
write /sys/module/lowmemorykiller/parameters/minfile 0,0,0,5120,5632,6144
write /sys/module/lowmemorykiller/parameters/check_filepages
service hciattach /system/bin/brcm_patchram_plus --enable_hci\
--baudrate 3000000 --patchram /etc/firmware/bcm4329.hcd /dev/ttyHS0
user bluetooth
group bluetooth net_bt_admin
disabled
#service btld /system/bin/logwrapper /system/bin/btld -lpm 1 -hb 3000000
# user root
# group bluetooth net_bt_admin
# disabled
# oneshot
# compass/accelerometer daemon
service akmd /system/bin/akmd
user compass
group compass misc input
service wpa_supplicant /system/bin/wpa_supplicant \
-Dwext -ieth0 -c/data/misc/wifi/wpa_supplicant.conf
#user wifi
#group wifi inet
socket wpa_eth0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd_eth0 /system/bin/dhcpcd -ABKL
disabled
oneshot
service iprenew_eth0 /system/bin/dhcpcd -n
disabled
oneshot
# for USB internet sharing
service udhcpd /system/bin/udhcpd
disabled
oneshot
#service netsharing_on /system/bin/netsharing net on
# disabled
# oneshot
#service netsharing_off /system/bin/netsharing net off
# disabled
# oneshot
#service netsharing_pass /system/bin/netsharing net_pass on
# disabled
# oneshot
#service modem /system/xbin/wireless_modem
# user system
# group system
# disabled
#service zchgd /system/bin/zchgd
# user root
# group root graphics
# oneshot
service dumpstate /system/bin/dumpstate -s
socket dumpstate stream 0660 shell log
disabled
oneshot
#on property:dev.bootcomplete=1
# start bootcomplete
#service bootcomplete /system/bin/bootcomplete
# user root
# group root
# disabled
# oneshot
#service shutdown /system/bin/shutdown
# user root
# group root
# disabled
# oneshot
#service ipd /system/bin/ipd
# socket ipd stream 666 root inet
# Execute files in /etc/init.d before booting
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
disabled
oneshot
#on property:service.modem.enable=1
# start modem
#on property:service.modem.enable=0
# stop modem
#service srv_ser2net /system/bin/ser2net -n
# disabled
#on property:service.ser2net.enable=1
# start srv_ser2net
#on property:service.ser2net.enable=0
# stop srv_ser2net

View File

@@ -1,131 +0,0 @@
on init
mount rootfs rootfs / remount
mkdir /app-cache 01777 system system
mount tmpfs tmpfs /app-cache size=8m
mount rootfs rootfs / ro remount
# Define the memory thresholds at which the above process classes will
# be killed. These numbers are in pages (4k).
setprop ro.FOREGROUND_APP_MEM 3584
setprop ro.VISIBLE_APP_MEM 4096
setprop ro.SECONDARY_SERVER_MEM 6144
setprop ro.BACKUP_APP_MEM 6144
setprop ro.HOME_APP_MEM 6144
setprop ro.HIDDEN_APP_MEM 7168
setprop ro.CONTENT_PROVIDER_MEM 7680
setprop ro.EMPTY_APP_MEM 8192
on boot
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
# bluetooth power up/down interface
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chmod 0660 /sys/class/rfkill/rfkill0/state
chown radio radio /sys/module/pm/parameters/idle_sleep_mode
# for wireless modem
chown system system /sys/module/serial/parameters/modem_enabled
chown system system /dev/ttyHSUSB0
chown system system /dev/smd9
chown media media /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# Power Management
write /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate 40000
# Overwrite framework low memory killer minfree setting
write /sys/module/lowmemorykiller/parameters/minfree 3584,4096,6144,7168,7680,8192
# Enable low memory killer to check file pages
write /sys/module/lowmemorykiller/parameters/minfile 0,0,0,5120,5632,6144
write /sys/module/lowmemorykiller/parameters/check_filepages 1
service wpa_supplicant /system/bin/logwrapper /system/bin/wpa_supplicant \
-Dwext -ieth0 -c/data/misc/wifi/wpa_supplicant.conf
# we will start as root and wpa_supplicant will switch to user wifi
# after setting up the capabilities required for WEXT
# user wifi
# group wifi inet keystore
socket wpa_eth0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd /system/bin/dhcpcd -ABKL eth0
disabled
oneshot
# compass/accelerometer daemon
service akmd /system/bin/akmd
user compass
group compass misc input
# bugreport is triggered by the KEY_VOLUMEUP and BTN_MOUSE keycodes
service bugreport /system/bin/dumpstate -d -v -o /sdcard/bugreports/bugreport
disabled
oneshot
keycodes 115 272
#service hciattach /system/bin/brcm_patchram_plus --enable_hci --patchram /etc/firmware/bcm4329.hcd /dev/ttyHS0
# user bluetooth
# group bluetooth net_bt_admin
# disabled
# Make sure we startup btld before hcid
# Set target address to emulator host loopback IF
# Limit baudrate to 460800 to ensure reliable uart operation
#service btld /system/bin/logwrapper /system/bin/btld -hwtun 10.0.2.2 -hb 460800 3000000 -lpm 1
service btld /system/bin/logwrapper /system/bin/btld -lpm 1 -hb 3000000
user root
group bluetooth net_bt_admin
disabled
oneshot
# for USB internet sharing
service udhcpd /system/bin/udhcpd
disabled
oneshot
service netsharing_on /system/bin/netsharing net on
disabled
oneshot
service netsharing_off /system/bin/netsharing net off
disabled
oneshot
service netsharing_pass /system/bin/netsharing net_pass on
disabled
oneshot
service modem /system/xbin/wireless_modem
user system
group system
disabled
service zchgd /system/bin/zchgd
user root
group root graphics
oneshot
on property:service.modem.enable=1
start modem
on property:service.modem.enable=0
stop modem
service srv_ser2net /system/bin/ser2net -n
disabled
on property:service.ser2net.enable=1
start srv_ser2net
on property:service.ser2net.enable=0
stop srv_ser2net
service clockd /system/bin/clockd

451
init.rc
View File

@@ -1,451 +0,0 @@
on early-init
start ueventd
on init
sysclktz 0
loglevel 3
# setup the global environment
export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
export LD_LIBRARY_PATH /vendor/lib:/system/lib
export ANDROID_BOOTLOGO 1
export ANDROID_CACHE /cache
export ANDROID_ROOT /system
export ANDROID_ASSETS /system/app
export ANDROID_DATA /data
export DOWNLOAD_CACHE /cache/download
export EXTERNAL_STORAGE /mnt/sdcard
export ASEC_MOUNTPOINT /mnt/asec
export LOOP_MOUNTPOINT /mnt/obb
export SD_EXT_DIRECTORY /sd-ext
export BOOTCLASSPATH /system/framework/core.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/core-junit.jar
# Backward compatibility
symlink /system/etc /etc
symlink /sys/kernel/debug /d
# Right now vendor lives on the same filesystem as system,
# but someday that may change.
symlink /system/vendor /vendor
# create mountpoints
mkdir /mnt 0775 root system
mkdir /mnt/sdcard 0000 system system
# Create cgroup mount point for cpu accounting
mkdir /acct
mount cgroup none /acct cpuacct
mkdir /acct/uid
# Backwards Compat - XXX: Going away in G*
symlink /mnt/sdcard /sdcard
mkdir /system
mkdir /data 0771 system system
mkdir /cache 0771 system cache
mkdir /config 0500 root root
# Directory for putting things only root should see.
mkdir /mnt/secure 0700 root root
# Directory for staging bindmounts
mkdir /mnt/secure/staging 0700 root root
# Directory-target for where the secure container
# imagefile directory will be bind-mounted
mkdir /mnt/secure/asec 0700 root root
# Secure container public mount points.
mkdir /mnt/asec 0700 root system
mount tmpfs tmpfs /mnt/asec mode=0755,gid=1000
# Filesystem image public mount points.
mkdir /mnt/obb 0700 root system
mount tmpfs tmpfs /mnt/obb mode=0755,gid=1000
mkdir /sd-ext 0771 system system
write /proc/sys/kernel/panic_on_oops 1
write /proc/sys/kernel/hung_task_timeout_secs 0
write /proc/cpu/alignment 4
write /proc/sys/kernel/sched_latency_ns 10000000
write /proc/sys/kernel/sched_wakeup_granularity_ns 2000000
write /proc/sys/kernel/sched_compat_yield 1
write /proc/sys/kernel/sched_child_runs_first 0
# Create cgroup mount points for process groups
mkdir /dev/cpuctl
mount cgroup none /dev/cpuctl cpu
chown system system /dev/cpuctl
chown system system /dev/cpuctl/tasks
chmod 0777 /dev/cpuctl/tasks
write /dev/cpuctl/cpu.shares 1024
mkdir /dev/cpuctl/fg_boost
chown system system /dev/cpuctl/fg_boost/tasks
chmod 0777 /dev/cpuctl/fg_boost/tasks
write /dev/cpuctl/fg_boost/cpu.shares 1024
mkdir /dev/cpuctl/bg_non_interactive
chown system system /dev/cpuctl/bg_non_interactive/tasks
chmod 0777 /dev/cpuctl/bg_non_interactive/tasks
# 5.0 %
write /dev/cpuctl/bg_non_interactive/cpu.shares 52
on fs
# mount mtd partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount yaffs2 mtd@system /system
mount yaffs2 mtd@system /system ro remount
mount yaffs2 mtd@userdata /data nosuid nodev
# leo specific for the purpose of RM and unlimited download space
if [ ! -d /data/cachemnt ] ; then
mkdir /data/cachemnt
chown system:system /data/cachemnt
chmod 777 /data/cachemnt
fi
symlink /data/cachemnt /cache
chown system:system /data/cachemnt
on post-fs
# once everything is setup, no need to modify /
mount rootfs rootfs / ro remount
# We chown/chmod /data again so because mount is run as root + defaults
chown system system /data
chmod 0771 /data
# Mount compressed filesystems
mount squashfs loop@/system/lib/modules/modules.sqf /system/lib/modules ro
mount squashfs loop@/system/xbin/xbin.sqf /system/xbin ro
# Create dump dir and collect dumps.
# Do this before we mount cache so eventually we can use cache for
# storing dumps on platforms which do not have a dedicated dump partition.
mkdir /data/dontpanic
chown root log /data/dontpanic
chmod 0750 /data/dontpanic
# Collect apanic data, free resources and re-arm trigger
copy /proc/apanic_console /data/dontpanic/apanic_console
chown root log /data/dontpanic/apanic_console
chmod 0640 /data/dontpanic/apanic_console
copy /proc/apanic_threads /data/dontpanic/apanic_threads
chown root log /data/dontpanic/apanic_threads
chmod 0640 /data/dontpanic/apanic_threads
write /proc/apanic_console 1
# Same reason as /data above
chown system cache /cache
chmod 0771 /cache
# This may have been created by the recovery system with odd permissions
chown system cache /cache/recovery
chmod 0770 /cache/recovery
#change permissions on vmallocinfo so we can grab it from bugreports
chown root log /proc/vmallocinfo
chmod 0440 /proc/vmallocinfo
#change permissions on kmsg & sysrq-trigger so bugreports can grab kthread stacks
chown root system /proc/kmsg
chmod 0440 /proc/kmsg
chown root system /proc/sysrq-trigger
chmod 0220 /proc/sysrq-trigger
# create basic filesystem structure
mkdir /data/misc 01771 system misc
mkdir /data/misc/bluetoothd 0770 bluetooth bluetooth
mkdir /data/misc/bluetooth 0770 system system
mkdir /data/misc/keystore 0700 keystore keystore
mkdir /data/misc/vpn 0770 system system
mkdir /data/misc/systemkeys 0700 system system
mkdir /data/misc/vpn/profiles 0770 system system
# give system access to wpa_supplicant.conf for backup and restore
mkdir /data/misc/wifi 0770 wifi wifi
chmod 0770 /data/misc/wifi
chmod 0660 /data/misc/wifi/wpa_supplicant.conf
mkdir /data/local 0771 shell shell
mkdir /data/local/tmp 0771 shell shell
mkdir /data/local/download 0771 system cache
mkdir /data/data 0771 system system
mkdir /data/app-private 0771 system system
mkdir /data/app 0771 system system
mkdir /data/property 0700 root root
mkdir /cache/download 0771 system cache
# create dalvik-cache and double-check the perms
mkdir /data/dalvik-cache 0771 system system
chown system system /data/dalvik-cache
chmod 0771 /data/dalvik-cache
mkdir /cache/dalvik-cache 0771 system system
chown system system /cache/dalvik-cache
chmod 0771 /cache/dalvik-cache
# create the lost+found directories, so as to enforce our permissions
mkdir /data/lost+found 0770
mkdir /cache/lost+found 0770
# double check the perms, in case lost+found already exists, and set owner
chown root root /data/lost+found
chmod 0770 /data/lost+found
chown root root /cache/lost+found
chmod 0770 /cache/lost+found
# allow net_raw to have access to /dev/socket directory
chown root net_raw /dev/socket
chmod 0775 /dev/socket
# allow system to modify cpufreq control files
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chown root system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
on boot
# basic network init
ifup lo
hostname localhost
domainname localdomain
# set RLIMIT_NICE to allow priorities from 19 to -20
setrlimit 13 40 40
# Define the oom_adj values for the classes of processes that can be
# killed by the kernel. These are used in ActivityManagerService.
setprop ro.FOREGROUND_APP_ADJ 0
setprop ro.VISIBLE_APP_ADJ 1
setprop ro.PERCEPTIBLE_APP_ADJ 2
setprop ro.HEAVY_WEIGHT_APP_ADJ 3
setprop ro.SECONDARY_SERVER_ADJ 4
setprop ro.BACKUP_APP_ADJ 5
setprop ro.HOME_APP_ADJ 6
setprop ro.HIDDEN_APP_MIN_ADJ 7
setprop ro.EMPTY_APP_ADJ 15
# Define the memory thresholds at which the above process classes will
# be killed. These numbers are in pages (4k).
setprop ro.FOREGROUND_APP_MEM 2048
setprop ro.VISIBLE_APP_MEM 3072
setprop ro.PERCEPTIBLE_APP_MEM 4096
setprop ro.HEAVY_WEIGHT_APP_MEM 4096
setprop ro.SECONDARY_SERVER_MEM 6144
setprop ro.BACKUP_APP_MEM 6144
setprop ro.HOME_APP_MEM 6144
setprop ro.HIDDEN_APP_MEM 7168
setprop ro.EMPTY_APP_MEM 8192
# Write value must be consistent with the above properties.
# Note that the driver only supports 6 slots, so we have combined some of
# the classes into the same memory level; the associated processes of higher
# classes will still be killed first.
write /sys/module/lowmemorykiller/parameters/adj 0,1,2,4,7,15
write /proc/sys/vm/overcommit_memory 1
write /proc/sys/vm/min_free_order_shift 4
write /sys/module/lowmemorykiller/parameters/minfree 2048,3072,4096,6144,7168,8192
# Set init its forked children's oom_adj.
write /proc/1/oom_adj -16
# Tweak background writeout
write /proc/sys/vm/dirty_expire_centisecs 200
write /proc/sys/vm/dirty_background_ratio 5
# Permissions for System Server and daemons.
chown radio system /sys/android_power/state
chown radio system /sys/android_power/request_state
chown radio system /sys/android_power/acquire_full_wake_lock
chown radio system /sys/android_power/acquire_partial_wake_lock
chown radio system /sys/android_power/release_wake_lock
chown radio system /sys/power/state
chown radio system /sys/power/wake_lock
chown radio system /sys/power/wake_unlock
chmod 0660 /sys/power/state
chmod 0660 /sys/power/wake_lock
chmod 0660 /sys/power/wake_unlock
chown system system /sys/class/timed_output/vibrator/enable
chown system system /sys/class/leds/keyboard-backlight/brightness
chown system system /sys/class/leds/lcd-backlight/brightness
chown system system /sys/class/leds/button-backlight/brightness
chown system system /sys/class/leds/jogball-backlight/brightness
chown system system /sys/class/leds/red/brightness
chown system system /sys/class/leds/green/brightness
chown system system /sys/class/leds/blue/brightness
chown system system /sys/class/leds/red/device/grpfreq
chown system system /sys/class/leds/red/device/grppwm
chown system system /sys/class/leds/red/device/blink
chown system system /sys/class/leds/red/brightness
chown system system /sys/class/leds/green/brightness
chown system system /sys/class/leds/blue/brightness
chown system system /sys/class/leds/red/device/grpfreq
chown system system /sys/class/leds/red/device/grppwm
chown system system /sys/class/leds/red/device/blink
chown system system /sys/class/timed_output/vibrator/enable
chown system system /sys/module/sco/parameters/disable_esco
chown system system /sys/kernel/ipv4/tcp_wmem_min
chown system system /sys/kernel/ipv4/tcp_wmem_def
chown system system /sys/kernel/ipv4/tcp_wmem_max
chown system system /sys/kernel/ipv4/tcp_rmem_min
chown system system /sys/kernel/ipv4/tcp_rmem_def
chown system system /sys/kernel/ipv4/tcp_rmem_max
chown root radio /proc/cmdline
# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
setprop net.tcp.buffersize.default 4096,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.wifi 4095,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680
# Include extra init file
import /system/etc/init.local.rc
# Run sysinit
exec /system/bin/sysinit
class_start default
## Daemon processes to be run by init.
##
service ueventd /sbin/ueventd
critical
service console /system/bin/sh
console
disabled
user shell
group log
on property:ro.secure=0
start console
# adbd is controlled by the persist.service.adb.enable system property
service adbd /sbin/adbd
disabled
# adbd on at boot in emulator
on property:ro.kernel.qemu=1
start adbd
on property:persist.service.adb.enable=1
start adbd
on property:persist.service.adb.enable=0
stop adbd
service servicemanager /system/bin/servicemanager
user system
critical
onrestart restart zygote
onrestart restart media
service vold /system/bin/vold
socket vold stream 0660 root mount
ioprio be 2
service netd /system/bin/netd
socket netd stream 0660 root system
socket dnsproxyd stream 0660 root inet
service debuggerd /system/bin/debuggerd
service ril-daemon /system/bin/rild -l /system/lib/libhtc_ril_wrapper.so -- -d /dev/smd0 nand_init rmnet_mode
socket rild stream 660 root radio
socket rild-debug stream 660 radio system
user root
group radio cache inet misc audio sdcard_rw net_admin net_raw
service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server
socket zygote stream 666
onrestart write /sys/android_power/request_state wake
onrestart write /sys/power/state on
onrestart restart media
onrestart restart netd
service media /system/bin/mediaserver
user media
group system audio camera graphics inet net_bt net_bt_admin net_raw
ioprio rt 4
service bootanim /system/bin/bootanimation
user graphics
group graphics
disabled
oneshot
service dbus /system/bin/dbus-daemon --system --nofork
socket dbus stream 660 bluetooth bluetooth
user bluetooth
group bluetooth net_bt_admin
service bluetoothd /system/bin/bluetoothd -n
socket bluetooth stream 660 bluetooth bluetooth
socket dbus_bluetooth stream 660 bluetooth bluetooth
# init.rc does not yet support applying capabilities, so run as root and
# let bluetoothd drop uid to bluetooth with the right linux capabilities
group bluetooth net_bt_admin misc
disabled
service hfag /system/bin/sdptool add --channel=10 HFAG
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service hsag /system/bin/sdptool add --channel=11 HSAG
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service opush /system/bin/sdptool add --channel=12 OPUSH
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service pbap /system/bin/sdptool add --channel=19 PBAP
user bluetooth
group bluetooth net_bt_admin
disabled
oneshot
service installd /system/bin/installd
socket installd stream 600 system system
service racoon /system/bin/racoon
socket racoon stream 600 system system
# racoon will setuid to vpn after getting necessary resources.
group net_admin
disabled
oneshot
service mtpd /system/bin/mtpd
socket mtpd stream 600 system system
user vpn
group vpn net_admin net_raw
disabled
oneshot
service keystore /system/bin/keystore /data/misc/keystore
user keystore
group keystore
socket keystore stream 666
service dumpstate /system/bin/dumpstate -s
socket dumpstate stream 0660 shell log
disabled
oneshot

100
leo.mk
View File

@@ -23,57 +23,17 @@
## (1) First, the most specific values, i.e. the aspects that are specific to GSM
PRODUCT_COPY_FILES += \
device/htc/leo/init.htcleo.rc:root/init.htcleo.rc \
device/htc/leo/init.rc:root/init.rc \
PRODUCT_PROPERTY_OVERRIDES += \
ro.sf.lcd_density=240 \
rild.libpath=/system/lib/libhtc_ril.so \
ro.ril.ecc.HTC-ELL=92,93,94 \
ro.ril.ecc.HTC-WWE=999 \
ro.ril.enable.a52.HTC-ITA=1 \
ro.ril.enable.a53.HTC-ITA=1 \
ro.ril.enable.a52=0 \
ro.ril.enable.a53=1 \
ro.ril.enable.dtm=1 \
ro.ril.gprsclass=12 \
ro.ril.hsdpa.category=8 \
ro.ril.hsupa.category=5 \
ro.ril.hsxpa=2 \
mobiledata.interfaces=rmnet0,rmnet1,rmnet2,ppp0 \
wifi.interface=eth0 \
wifi.supplicant_scan_interval=15
# Default network type.
# 0 => WCDMA preferred.
PRODUCT_PROPERTY_OVERRIDES += \
ro.telephony.default_network=0
# Set default_france.acdb to audio_ctl driver if the ro.cid is HTC__203
PRODUCT_PROPERTY_OVERRIDES += \
ro.ril.enable.prl.recognition=1
# The OpenGL ES API level that is natively supported by this device.
# This is a 16.16 fixed point number
PRODUCT_PROPERTY_OVERRIDES += \
ro.opengles.version=131072
device/htc/leo/prebuilt/init.htcleo.rc:root/init.htcleo.rc \
device/htc/leo/prebuilt/ueventd.htcleo.rc:root/ueventd.htcleo.rc \
device/htc/leo/prebuilt/logo.rle:root/logo.rle
# Copy the postrecoveryboot.sh to the relevant directory
PRODUCT_COPY_FILES += \
device/htc/leo/postrecoveryboot.sh:recovery/root/sbin/postrecoveryboot.sh
# we have enough storage space to hold precise GC data
PRODUCT_TAGS += dalvik.gc.type-precise
PRODUCT_PROPERTY_OVERRIDES += \
ro.media.dec.jpeg.memcap=20000000
# This is a high density device with more memory, so larger vm heaps for it.
PRODUCT_PROPERTY_OVERRIDES += \
dalvik.vm.heapsize=32m
# leo have huge 250Mb unwritable system and small 50Mb cache .
PRODUCT_PROPERTY_OVERRIDES += \
dalvik.vm.dexopt-data-only=1
## (2) Also get non-open-source GSM-specific aspects if available
$(call inherit-product-if-exists, vendor/htc/leo/leo-vendor.mk)
@@ -93,7 +53,11 @@ PRODUCT_COPY_FILES += \
# media config xml file
PRODUCT_COPY_FILES += \
device/htc/leo/media_profiles.xml:system/etc/media_profiles.xml
device/htc/leo/prebuilt/media_profiles.xml:system/etc/media_profiles.xml
# This file is used to install the enable RMNET and corresponding modules which dont get activated by normal module script
PRODUCT_COPY_FILES += \
device/htc/leo/prebuilt/01modules:system/etc/init.d/01modules
PRODUCT_PACKAGES += \
sensors.htcleo \
@@ -107,49 +71,38 @@ PRODUCT_PACKAGES += \
libhtc_ril_wrapper
# leo uses high-density artwork where available
PRODUCT_LOCALES := hdpi
PRODUCT_COPY_FILES += \
device/htc/leo/vold.fstab:system/etc/vold.fstab
device/htc/leo/prebuilt/vold.fstab:system/etc/vold.fstab
# Keylayouts
PRODUCT_COPY_FILES += \
device/htc/leo/leo-keypad.kl:system/usr/keylayout/leo-keypad.kl \
device/htc/leo/leo-keypad.kcm.bin:system/usr/keychars/leo-keypad.kcm.bin \
device/htc/leo/h2w_headset.kl:system/usr/keylayout/h2w_headset.kl
# Firmware
PRODUCT_COPY_FILES += \
device/htc/leo/firmware/fw_bcm4329.bin:system/etc/firmware/fw_bcm4329.bin \
device/htc/leo/firmware/fw_bcm4329_apsta.bin:system/etc/firmware/fw_bcm4329_apsta.bin
device/htc/leo/prebuilt/keylayout/leo-keypad.kl:system/usr/keylayout/leo-keypad.kl \
device/htc/leo/prebuilt/keylayout/leo-keypad.kcm.bin:system/usr/keychars/leo-keypad.kcm.bin \
device/htc/leo/prebuilt/keylayout/h2w_headset.kl:system/usr/keylayout/h2w_headset.kl
#GSM APN LIST
PRODUCT_COPY_FILES += \
vendor/cyanogen/prebuilt/common/etc/apns-conf.xml:system/etc/apns-conf.xml
vendor/cyanogen/prebuilt/common/etc/apns-conf.xml:system/etc/apns-conf.xml
# Kernel Modules
PRODUCT_COPY_FILES += $(shell \
find device/htc/leo/prebuilt/modules -name '*.ko' \
| sed -r 's/^\/?(.*\/)([^/ ]+)$$/\1\2:system\/lib\/modules\/\2/' \
| tr '\n' ' ')
# kernel
PRODUCT_COPY_FILES += \
device/htc/leo/modules/bcm4329.ko:system/lib/modules/bcm4329.ko \
device/htc/leo/modules/cifs.ko:system/lib/modules/cifs.ko \
device/htc/leo/modules/msm_rmnet.ko:system/lib/modules/msm_rmnet.ko \
device/htc/leo/modules/nls_utf8.ko:system/lib/modules/nls_utf8.ko \
device/htc/leo/modules/tun.ko:system/lib/modules/tun.ko \
device/htc/leo/modules/fuse.ko:system/lib/modules/fuse.ko
PRODUCT_COPY_FILES += \
device/htc/leo/kernel:boot/zImage \
device/htc/leo/prebuilt/kernel:boot/zImage \
ifeq ($(TARGET_PREBUILT_KERNEL),)
LOCAL_KERNEL := device/htc/leo/kernel
LOCAL_KERNEL := device/htc/leo/prebuilt/kernel
else
LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
endif
# The gps config appropriate for this device
PRODUCT_COPY_FILES += \
device/htc/leo/gps.conf:system/etc/gps.conf
device/htc/leo/prebuilt/gps.conf:system/etc/gps.conf
PRODUCT_COPY_FILES += \
$(LOCAL_KERNEL):kernel
@@ -160,5 +113,8 @@ $(call inherit-product, device/htc/leo/media_a1026.mk)
# stuff common to all HTC phones
$(call inherit-product, device/htc/common/common.mk)
# goo.im stuff
$(call inherit-product, device/htc/leo/goo.mk)
PRODUCT_NAME := htc_leo
PRODUCT_DEVICE := leo

View File

@@ -21,7 +21,7 @@
# The gps config appropriate for this device
PRODUCT_COPY_FILES += \
device/htc/leo/gps_eu.conf:system/etc/gps.conf
device/htc/leo/prebuilt/gps_eu.conf:system/etc/gps.conf
# The rest of the configuration is inherited from a generic config

0
libhtc_ril_wrapper/Android.mk Normal file → Executable file
View File

View File

0
libhtc_ril_wrapper/NOTICE Normal file → Executable file
View File

0
libhtc_ril_wrapper/libhtc_ril_wrapper.c Normal file → Executable file
View File

View File

@@ -1,5 +1,6 @@
/*
* Copyright (C) 2008 The Android Open Source Project
* Copyright (C) 2012 milaq
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -44,9 +45,6 @@ static char const*const GREEN_LED_FILE
static char const*const AMBER_LED_FILE
= "/sys/class/leds/amber/brightness";
static char const*const RED_LED_FILE
= "/sys/class/leds/red/brightness";
static char const*const LCD_FILE
= "/sys/class/leds/lcd-backlight/brightness";
@@ -56,13 +54,16 @@ static char const*const AMBER_BLINK_FILE
static char const*const GREEN_BLINK_FILE
= "/sys/class/leds/green/blink";
static char const*const RED_BLINK_FILE
= "/sys/class/leds/red/blink";
static char const*const BUTTON_FILE
= "/sys/class/leds/button-backlight/brightness";
enum {
LED_AMBER,
LED_GREEN,
LED_BLUE,
LED_BLANK,
};
/**
* device methods
@@ -128,69 +129,75 @@ set_light_buttons(struct light_device_t* dev,
return err;
}
static int
static void
set_speaker_light_locked(struct light_device_t* dev,
struct light_state_t const* state)
{
int len;
int alpha, red, green, blue;
int blink, freq, pwm;
int onMS, offMS;
unsigned int colorRGB;
unsigned int colorRGB = state->color & 0xFFFFFF;
unsigned int color = LED_BLANK;
switch (state->flashMode) {
case LIGHT_FLASH_TIMED:
blink = 1;
onMS = state->flashOnMS;
offMS = state->flashOffMS;
break;
case LIGHT_FLASH_HARDWARE:
blink = 1;
onMS = state->flashOnMS;
offMS = state->flashOffMS;
break;
case LIGHT_FLASH_NONE:
blink = 0;
onMS = 0;
offMS = 0;
break;
default:
blink = 1;
onMS = 0;
offMS = 0;
break;
}
if (colorRGB & 0xFF)
color = LED_BLUE;
if ((colorRGB >> 8)&0xFF)
color = LED_GREEN;
if ((colorRGB >> 16)&0xFF)
color = LED_AMBER;
colorRGB = state->color;
int amber = (colorRGB >> 16)&0xFF;
int green = (colorRGB >> 8)&0xFF;
int blue = (colorRGB)&0xFF;
#if 0
LOGD("set_speaker_light_locked colorRGB=%08X, onMS=%d, offMS=%d\n",
colorRGB, onMS, offMS);
#endif
switch (state->flashMode) {
case LIGHT_FLASH_TIMED:
switch (color) {
case LED_AMBER:
write_int (AMBER_BLINK_FILE, 2);
write_int (GREEN_LED_FILE, 0);
break;
case LED_GREEN:
write_int (GREEN_BLINK_FILE, 3);
write_int (AMBER_LED_FILE, 0);
break;
case LED_BLUE:
write_int (GREEN_BLINK_FILE, 3);
write_int (AMBER_LED_FILE, 0);
break;
case LED_BLANK:
write_int (AMBER_BLINK_FILE, 0);
write_int (GREEN_BLINK_FILE, 0);
break;
default:
LOGE("set_led_state colorRGB=%08X, unknown color\n",
colorRGB);
break;
}
break;
case LIGHT_FLASH_NONE:
switch (color) {
case LED_AMBER:
write_int (AMBER_LED_FILE, 1);
write_int (GREEN_LED_FILE, 0);
break;
case LED_GREEN:
write_int (AMBER_LED_FILE, 0);
write_int (GREEN_LED_FILE, 1);
break;
case LED_BLUE:
write_int (AMBER_LED_FILE, 0);
write_int (GREEN_LED_FILE, 1);
break;
case LED_BLANK:
write_int (AMBER_LED_FILE, 0);
write_int (GREEN_LED_FILE, 0);
break;
red = (colorRGB >> 16) & 0xFF;
green = (colorRGB >> 8) & 0xFF;
blue = colorRGB & 0xFF;
}
break;
default:
LOGE("set_led_state colorRGB=%08X, unknown mode %d\n",
colorRGB, state->flashMode);
}
if (red) {
write_int(GREEN_LED_FILE, 0);
write_int(AMBER_LED_FILE, 1);
if (blink) {
//blink must come after brightness change
write_int(AMBER_BLINK_FILE, 1);
}
} else if (green || blue) {
write_int(AMBER_LED_FILE, 0);
write_int(GREEN_LED_FILE, 1);
if (blink) {
write_int(GREEN_BLINK_FILE, 1);
}
} else {
write_int(GREEN_LED_FILE, 0);
write_int(AMBER_LED_FILE, 0);
}
return 0;
}
static void
@@ -292,7 +299,7 @@ const struct hw_module_t HAL_MODULE_INFO_SYM = {
.version_major = 1,
.version_minor = 0,
.id = LIGHTS_HARDWARE_MODULE_ID,
.name = "QCT MSM7K lights Module",
.author = "Google, Inc.",
.name = "HTC leo lights module",
.author = "Micha LaQua",
.methods = &lights_module_methods,
};

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -21,17 +21,21 @@
for different hardware and product builds. -->
<resources>
<!-- Flag indicating whether the surface flinger has limited
<!-- Flag indicating whether the surface flinger has limited
alpha compositing functionality in hardware. If set, the window
manager will disable alpha trasformation in animations where not
strictly needed. -->
<bool name="config_sf_limitedAlpha">true</bool>
<bool name="config_sf_limitedAlpha">false</bool>
<!-- Flag indicating whether the surface flinger is inefficient
at performing a blur. Used by parts of the UI to turn off
the blur effect where it isn't worth the performance hit. -->
<bool name="config_sf_slowBlur">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">true</bool>
<!-- disable menu hard key on HD2 in non-pattern lockscreen -->
<bool name="config_disableMenuKeyInLockScreen">true</bool>
@@ -46,15 +50,13 @@
Must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLevels">
<item>11</item>
<item>41</item>
<item>91</item>
<item>161</item>
<item>226</item>
<item>321</item>
<item>641</item>
<item>1281</item>
<item>2601</item>
<item>160</item>
<item>225</item>
<item>320</item>
<item>640</item>
<item>1280</item>
<item>2600</item>
<item>5800</item>
</integer-array>
<!-- Array of output values for LCD backlight corresponding to the LUX values
@@ -62,15 +64,13 @@
than the size of the config_autoBrightnessLevels array.
-->
<integer-array name="config_autoBrightnessLcdBacklightValues">
<item>89</item>
<item>89</item>
<item>126</item>
<item>164</item>
<item>164</item>
<item>164</item>
<item>187</item>
<item>210</item>
<item>233</item>
<item>80</item>
<item>100</item>
<item>120</item>
<item>140</item>
<item>160</item>
<item>180</item>
<item>220</item>
<item>255</item>
</integer-array>
@@ -79,8 +79,6 @@
than the size of the config_autoBrightnessLevels array.
-->
<integer-array name="config_autoBrightnessButtonBacklightValues">
<item>255</item>
<item>255</item>
<item>255</item>
<item>255</item>
<item>0</item>
@@ -94,7 +92,7 @@
<!-- Array of output values for keyboard backlight corresponding to the LUX values
in the config_autoBrightnessLevels array. This array should have size one greater
than the size of the config_autoBrightnessLevels array.
Passion has no keyboard so all values are zero.
Leo has no keyboard so all values are zero.
-->
<integer-array name="config_autoBrightnessKeyboardBacklightValues">
<item>0</item>
@@ -102,6 +100,9 @@
<item>0</item>
<item>0</item>
<item>0</item>
<item>0</item>
<item>0</item>
<item>0</item>
</integer-array>
<!-- Component name of the default wallpaper. This will be ImageWallpaper if not
@@ -163,12 +164,6 @@
<item>"wl0.1"</item>
</string-array>
<!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap -->
<integer-array name="config_keyboardTapVibePattern">
<item>30</item>
</integer-array>
<!-- Boolean indicating if we require the use of DUN on mobile for tethering -->
<bool translatable="false" name="config_tether_dun_required">false</bool>

View File

@@ -19,12 +19,12 @@
<device name="Android">
<item name="none">0</item>
<item name="screen.on">100</item>
<item name="screen.on">110</item>
<item name="bluetooth.active">142</item> <!-- In call -->
<item name="bluetooth.on">0.3</item>
<!-- CPU wakelock held for 830ms on bluetooth headset at command. 43mA * 830 -->
<item name="bluetooth.at">35690</item>
<item name="screen.full">160</item>
<item name="screen.full">250</item>
<item name="wifi.on">4</item>
<item name="wifi.active">120</item>
<item name="wifi.scan">220</item>
@@ -32,7 +32,7 @@
<item name="dsp.video">88</item>
<item name="radio.active">300</item>
<item name="gps.on">170</item>
<item name="battery.capacity">1390</item>
<item name="battery.capacity">1230</item>
<item name="radio.scanning">70</item>
<array name="radio.on"> <!-- Strength 0 to BINS-1 -->
<value>3</value>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2011, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for different hardware and product builds. -->
<resources>
<!-- Autofocus parameters -->
<string name="touchFocusParameter">touch-focus</string>
</resources>

View File

@@ -22,13 +22,13 @@
<mms_config version="3">
<!-- Maximum message size in bytes for a MMS message -->
<int name="maxMessageSize">1048576</int>
<int name="maxMessageSize">307200</int>
<!-- Maximum height for an attached image -->
<int name="maxImageHeight">1944</int>
<int name="maxImageHeight">768</int>
<!-- Maximum width for an attached image -->
<int name="maxImageWidth">2592</int>
<int name="maxImageWidth">1024</int>
<!-- User-Agent parameter used in MMS http request -->
<string name="userAgent">Passion</string>

14
postrecoveryboot.sh Normal file → Executable file
View File

@@ -5,3 +5,17 @@ sleep 2
if [[ "`grep clk= /proc/cmdline`" == "" ]]; then
sed -i 's/\/boot\t\tmtd/\/boot\t\tyaffs2/g' /etc/recovery.fstab
fi
## Required for twrp recovery
#mount /dev/block/mmcblk0p2 /sd-ext | grep sd-ext | awk '{print $5}'
#FS=`mount | grep sd-ext | awk '{print $5}'`
#umount /sd-ext
#sed -i 's/\/sd-ext\ \ \ \ \ auto/\/sd-ext\t\t'$FS'/g' /etc/recovery.fstab
#
#if [[ "`grep mmcblk0p2 /etc/fstab` " != "" ]]; then
#sed -i /mmcblk0p2/d /etc/fstab
#fi
#
#cat >> /etc/fstab << EOF
#/dev/block/mmcblk0p2 /sd-ext $FS rw
#EOF

16
prebuilt/01modules Normal file
View File

@@ -0,0 +1,16 @@
#!/system/bin/sh
#
# Load MODULES
sleep 1
if [ -f /system/ppp ]
then
echo "Not loading RMNET module as /system/ppp exists"
else
echo "Loading RMNET module as /system/ppp doesn't exist"
insmod /system/lib/modules/msm_rmnet.ko
fi
insmod /system/lib/modules/tun.ko
insmod /system/lib/modules/cifs.ko
insmod /system/lib/modules/nls_utf8.ko
insmod /system/lib/modules/fuse.ko
echo "+++ TUN / CIFS activated +++";

BIN
prebuilt/GooManager.apk Normal file

Binary file not shown.

227
prebuilt/init.htcleo.rc Normal file
View File

@@ -0,0 +1,227 @@
on init
export TERMINFO /system/etc/terminfo
write /proc/sys/kernel/sched_min_granularity_ns 100000
on fs
mount yaffs2 mtd@system /system remount
mount rootfs rootfs / rw remount
mkdir /sd-ext 0771 system system
# DRMv1 rights storage
symlink /data/local /data/drm
mkdir /data/local/rights 0777 shell shell
chown shell shell /data/drm
write /data/drm/rights/mid.txt 0
chmod 0777 /data/drm/rights/mid.txt
on boot
mount debugfs /sys/kernel/debug /sys/kernel/debug
mkdir /data/misc/wifi 0770 wifi wifi
mkdir /data/misc/wifi/sockets 0770 wifi wifi
mkdir /data/misc/dhcp 0770 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
# bluetooth power up/down interface
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/type
chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
chmod 0660 /sys/class/rfkill/rfkill0/state
# bluetooth MAC address programming
chown bluetooth bluetooth /sys/module/board_htcleo/parameters/bdaddr
setprop ro.bt.bdaddr_path /sys/module/board_htcleo/parameters/bdaddr
# bluetooth car dock pin
chown system system /sys/class/switch/dock/bt_pin
chown radio radio /sys/module/pm/parameters/idle_sleep_mode
# Set error receiver
setprop ro.error.receiver.htc.apps com.android.updater
# ruu
write /data/misc/screen_lock_status 0
chown system system /data/misc/screen_lock_status
chmod 644 /data/misc/screen_lock_status
# Permissions for liblights
chown system system /sys/class/leds/green/brightness
chown system system /sys/class/leds/green/blink
chown system system /sys/class/leds/amber/brightness
chown system system /sys/class/leds/amber/blink
chown system system /sys/class/leds/red/brightness
chown system system /sys/class/leds/red/blink
chown system system /sys/class/leds/blue/brightness
chown system system /sys/class/leds/blue/blink
chown system system /sys/class/leds/jogball-backlight/brightness
chown system system /sys/class/leds/jogball-backlight/color
chown system system /sys/class/leds/jogball-backlight/period
chown system system /sys/class/leds/button-backlight/brightness
chown system system /sys/class/leds/lcd-backlight/brightness
# Permissions for camera
chown radio system /sys/camera_led_status/led_ril_status
chown system system /sys/camera_led_status/led_wimax_status
chown system system /sys/camera_led_status/led_hotspot_status
chown media system /sys/android_camera/cam_mode
# enable the GPS
setprop ro.ril.def.agps.mode 2
# performance tweaks for flash
write /sys/block/mtdblock3/bdi/read_ahead_kb 4
write /sys/block/mtdblock4/bdi/read_ahead_kb 4
write /sys/block/mtdblock5/bdi/read_ahead_kb 4
# for wireless modem
chown system system /sys/module/serial/parameters/modem_enabled
chown system system /dev/ttyHSUSB0
chown system system /dev/smd9
chown media media /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# Power Management
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 245000
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 998400
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand
write /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate 40000
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
# Wakelock debug
write /sys/module/wakelock/parameters/debug_mask 7
# Fast dormancy settings
setprop ro.ril.fast.dormancy.rule 1
setprop ro.ril.fd.scron.timeout 4
setprop ro.ril.fd.scroff.timeout 3
# GPRS class
#setprop ro.ril.gprsclass 10
chown root radio /proc/cmdline
chown system system /dev/ttyHS0
chown system system /dev/smd0
chown system system /dev/smd1
chown system system /dev/smd27
chmod 0666 /dev/rfkill
chmod 0666 /dev/q6venc
chmod 0666 /dev/ttyHS0
chmod 0666 /dev/ttyHS1
chmod 666 /proc/cmdline
chmod 666 /dev/input/event0
chmod 666 /dev/input/event1
chmod 666 /dev/input/event2
chmod 666 /dev/input/event3
chmod 666 /dev/input/event4
chmod 666 /dev/input/event5
chmod 666 /dev/input/event6
chmod 666 /dev/uinput
chmod 666 /dev/msm_aac_in
chmod 666 /dev/msm_audio_ctl
chmod 666 /dev/msm_audio_route
chmod 666 /dev/msm_mp3
chmod 666 /dev/msm_qcelp_in
chmod 666 /dev/msm_snd
chmod 666 /dev/msm_audpre
chmod 666 /dev/msm_pcm_in
chmod 666 /dev/msm_pcm_out
chmod 666 /dev/msm_pcm_ctl
chmod 666 /dev/msm_hw3dm
chmod 666 /dev/msm_hw3dc
chmod 666 /dev/qmi0
chmod 666 /dev/qmi1
chmod 666 /dev/qmi2
chmod 666 /etc/bluez/audio.conf
chmod 666 /etc/bluez/hcid.conf
chmod 666 /etc/bluez/input.conf
chmod 0777 /dev/kgsl
chmod 0777 /dev/smd0
chmod 0777 /dev/smd1
chmod 0777 /dev/smd27
chmod 0777 /dev/vfe
chmod 0777 /dev/camera
chmod 0777 /dev/msm_camera
chmod 0777 /dev/vogue_gps
chmod 0777 /dev/akm8973_aot
chmod 0777 /dev/akm8973_daemon
chmod 0777 /dev/compass
chmod 0777 /dev/lightsensor
chmod 0777 /dev/bma150
chmod 0777 /dev/cm3602
chmod 0777 /dev/htc-acoustic
# flashlight
chown system camera /sys/class/leds/flashlight/brightness
chmod 0666 /sys/class/leds/flashlight/brightness
chmod 0666 /sys/class/leds/flashlight/max_brightness
chown system camera /sys/devices/platform/flashlight.0/leds/flashlight/brightness
chmod 0660 /sys/devices/platform/flashlight.0/leds/flashlight/brightness
#720p cam support
symlink /dev/msm_camera/control0 /dev/msm_camera/control1
symlink /dev/msm_camera/frame0 /dev/msm_camera/frame1
symlink /dev/msm_camera/config0 /dev/msm_camera/config1
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0018/enable
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0019/enable
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0018/rate
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0019/rate
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0018/scale
chmod 666 /sys/class/i2c-adapter/i2c-0/0-0019/scale
# Enable low memory killer to check file pages
#write /sys/module/lowmemorykiller/parameters/minfile 0,0,0,5120,5632,6144
#write /sys/module/lowmemorykiller/parameters/check_filepages 1
service hciattach /system/bin/brcm_patchram_plus --enable_hci --enable_lpm \
--baudrate 3000000 --patchram /etc/firmware/bcm4329.hcd /dev/ttyHS0
user bluetooth
group bluetooth net_bt_admin
disabled
#service btld /system/bin/logwrapper /system/bin/btld -lpm 1 -hb 3000000
# user root
# group bluetooth net_bt_admin
# disabled
# oneshot
# compass/accelerometer daemon
service akmd /system/bin/akmd
user compass
group compass misc input
service wpa_supplicant /system/bin/wpa_supplicant \
-Dwext -ieth0 -c/data/misc/wifi/wpa_supplicant.conf
#user wifi
#group wifi inet
socket wpa_eth0 dgram 660 wifi wifi
disabled
oneshot
service dhcpcd_eth0 /system/bin/dhcpcd -ABKL
disabled
oneshot
service iprenew_eth0 /system/bin/dhcpcd -n
disabled
oneshot
# for USB internet sharing
service udhcpd /system/bin/udhcpd
disabled
oneshot
# Execute files in /etc/init.d before booting
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
disabled
oneshot

1
prebuilt/init.leo.rc Symbolic link
View File

@@ -0,0 +1 @@
init.htcleo.rc

BIN
prebuilt/logo.rle Executable file

Binary file not shown.

View File

@@ -22,7 +22,7 @@
AudioDecoderCap)>
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
<!ELEMENT EncoderProfile (Video, Audio)>
<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
<!ATTLIST EncoderProfile quality (hd|high|low) #REQUIRED>
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
<!ELEMENT Video EMPTY>
@@ -78,9 +78,9 @@
<MediaSettings>
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
<CamcorderProfiles cameraId="0">
<!--
<EncoderProfile quality="hd" fileFormat="mp4" duration="60">
<Video codec="m4v"
<Video codec="h264"
bitRate="6000000"
width="1280"
height="720"
@@ -88,14 +88,14 @@
<Audio codec="aac"
bitRate="96000"
sampleRate="16000"
sampleRate="48000"
channels="1" />
</EncoderProfile>
-->
<EncoderProfile quality="high" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="3000000"
width="720"
<Video codec="m4v"
bitRate="6000000"
width="800"
height="480"
frameRate="24" />
@@ -122,13 +122,29 @@
<ImageEncoding quality="90" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
</CamcorderProfiles>
<ImageDecoding memCap="20000000" />
<CamcorderProfiles cameraId="1">
<EncoderProfile quality="high" fileFormat="mp4" duration="60">
</CamcorderProfiles>
<CamcorderProfiles cameraId="1">
<EncoderProfile quality="hd" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="2000000"
width="640"
bitRate="6000000"
width="1280"
height="720"
frameRate="24" />
<Audio codec="aac"
bitRate="96000"
sampleRate="48000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="high" fileFormat="mp4" duration="60">
<Video codec="m4v"
bitRate="6000000"
width="800"
height="480"
frameRate="24" />
@@ -136,7 +152,6 @@
bitRate="96000"
sampleRate="16000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
@@ -150,17 +165,17 @@
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<ImageEncoding quality="90" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
<ImageDecoding memCap="20000000" />
<ImageDecoding memCap="10000000" />
<Camera previewFrameRate="0" />
</CamcorderProfiles>
<EncoderOutputFileFormat name="3gp" />
<EncoderOutputFileFormat name="mp4" />
@@ -171,25 +186,25 @@
-->
<VideoEncoderCap name="h264" enabled="true"
minBitRate="64000" maxBitRate="6000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameWidth="176" maxFrameWidth="1280"
minFrameHeight="144" maxFrameHeight="720"
minFrameRate="1" maxFrameRate="30" />
<VideoEncoderCap name="h263" enabled="true"
minBitRate="64000" maxBitRate="6000000"
minBitRate="64000" maxBitRate="2000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="1" maxFrameRate="30" />
<VideoEncoderCap name="m4v" enabled="true"
minBitRate="64000" maxBitRate="8000000"
minFrameWidth="176" maxFrameWidth="1280"
minFrameHeight="144" maxFrameHeight="720"
minBitRate="64000" maxBitRate="6000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="1" maxFrameRate="30" />
<AudioEncoderCap name="aac" enabled="true"
minBitRate="8192" maxBitRate="96000"
minSampleRate="8000" maxSampleRate="16000"
minSampleRate="8000" maxSampleRate="48000"
minChannels="1" maxChannels="1" />
<AudioEncoderCap name="amrwb" enabled="true"

BIN
prebuilt/modules/cifs.ko Normal file

Binary file not shown.

BIN
prebuilt/modules/fuse.ko Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
prebuilt/modules/tun.ko Normal file

Binary file not shown.

1
prebuilt/ueventd.leo.rc Symbolic link
View File

@@ -0,0 +1 @@
ueventd.htcleo.rc

29
proprietary-files.txt Executable file
View File

@@ -0,0 +1,29 @@
bin/akmd
bin/parse_radio_log
bin/vold
etc/AudioBTID.csv
etc/AdieHWCodecSetting.csv
etc/firmware/BCM4329B1_002.002.023.0360.0362.hcd
etc/firmware/BCM4329B1_002.002.023.0436.0439.hcd
etc/firmware/BCM4329B1_002.002.023.0511.0538.hcd
etc/firmware/bcm4329.hcd
etc/firmware/htcleo.acdb
etc/firmware/default.acdb
etc/firmware/yamato_pfp.fw
etc/firmware/yamato_pm4.fw
lib/egl/libEGL_adreno200.so
lib/egl/libGLESv1_CM_adreno200.so
lib/egl/libGLESv2_adreno200.so
lib/egl/libq3dtools_adreno200.so
lib/libaudio.so
lib/libcamera.so
lib/libgsl.so
lib/libhtc_acoustic.so
lib/libhtc_ril.so
lib/liboemcamera.so
lib/libOmxVdec.so
lib/libOmxVidEnc.so
lib/libOmxCore.so
lib/hw/gps.htcleo.so
lib/hw/gps.leo.so
lib/hw/sensors.bravo.so

185
releasetools/squisher Executable file
View File

@@ -0,0 +1,185 @@
#!/bin/sh
#
# Squish a CM otapackage for distribution
# cyanogen
#
OUT_TARGET_HOST=`uname -a | grep Darwin`
if [ -z "$OUT_TARGET_HOST" ]
then
OUT_TARGET_HOST=linux-x86
MD5=md5sum
XARGS="xargs --max-args=1 --max-procs `grep 'processor' /proc/cpuinfo|wc -l`"
SED=sed
else
OUT_TARGET_HOST=darwin-x86
MD5=md5
XARGS="xargs -n 1 -P `sysctl hw.ncpu | awk '{print $2}'`"
SED=gsed
fi
if [ -z "$OUT" -o ! -d "$OUT" ]; then
echo "ERROR: $0 only works with a full build environment. $OUT should exist."
exit 1
fi
if [ "$TARGET_BUILD_TYPE" = "debug" ]; then
OTAPACKAGE=$OUT/${TARGET_PRODUCT}_debug-ota-$TARGET_BUILD_VARIANT.$USER.zip
else
OTAPACKAGE=$OUT/$TARGET_PRODUCT-ota-$TARGET_BUILD_VARIANT.$USER.zip
fi
if [ ! -f "$OTAPACKAGE" ]; then
echo "$OTAPACKAGE doesn't exist!";
exit 1
fi
OPTICHARGER=$ANDROID_BUILD_TOP/vendor/cyanogen/tools/opticharger
QUIET=-q
DELETE_BINS="applypatch applypatch_static check_prereq recovery updater"
# Some products want a squashfs for xbin for space
case "$TARGET_PRODUCT" in
cyanogen_dream_sapphire) WANT_SQUASHFS=1 ;;
*) WANT_SQUASHFS=0 ;;
esac
if [ "$WANT_SQUASHFS" -eq 1 ]; then
fatal=0
MKSQUASHFS_VER_REQ=4
if type mksquashfs >/dev/null 2>&1; then
if mksquashfs -version | grep -q "version $MKSQUASHFS_VER_REQ"; then :; else
echo
echo "ERROR: mksquashfs must be at least version $MKSQUASHFS_VER_REQ for this build."
fatal=1
fi
else
echo
echo "ERROR: $TARGET_PRODUCT requires mksquashfs."
fatal=1
fi
if [ "$fatal" -ne 0 ]; then
echo
echo " Unoptimized package is still available at"
echo " $OTAPACKAGE"
exit $fatal
fi
fi
REPACK=$OUT/repack.d
printf "Sanitizing environment..."
rm -rf $REPACK
mkdir -p $REPACK
echo
# Unpack the otapackage and opticharge all apks
mkdir $REPACK/ota
(
cd $REPACK/ota
printf "Unpacking $OTAPACKAGE..."
unzip $QUIET $OTAPACKAGE
echo
printf "leo has limited diskspace so lets remove some unwanted stuff..."
rm -rf $REPACK/ota/system/tts
echo
cd $REPACK/ota/system/framework
$OPTICHARGER framework-res.apk
cd $REPACK/ota/system/app
find ./ -name \*.apk | $XARGS $OPTICHARGER
)
if [ "$WANT_SQUASHFS" -eq 1 ]; then
squash_opts="-force-uid 1000 -force-gid 1000 -no-progress -noappend -no-exports -no-recovery"
updater=$REPACK/ota/META-INF/com/google/android/updater-script
# Relocate su
cp -a $REPACK/ota/system/xbin $REPACK/_xbin/
rm -f $REPACK/_xbin/su $REPACK/ota/system/bin/su
mv $REPACK/ota/system/xbin/su $REPACK/ota/system/bin/su
chmod -R 555 $REPACK/_xbin/*
# Create symlinks for su and busybox (since updater-script can't work on the squashfs filesystem).
# Forgive me for the regex hell here.
ln -s ../bin/su $REPACK/_xbin/su
for link in `sed -n -e's/,//g' -e'/symlink(.*busybox/,/xbin.*);/p' $updater | tr '"' '\n' | sed -n -e'\,/system/xbin/,s,/system/xbin/,,p'`
do
ln -s busybox $REPACK/_xbin/$link
done
# Create the squashfs with new and improved symlinkage!
mksquashfs $REPACK/_xbin/* $REPACK/_xbin.sqf $squash_opts
rm -rf $REPACK/ota/system/xbin/*
mv $REPACK/_xbin.sqf $REPACK/ota/system/xbin/xbin.sqf
chmod 444 $REPACK/ota/system/xbin/xbin.sqf
# Remove xbin stuff and fix up updater-script
$SED -i -e's,system/xbin/su,system/bin/su,g' -e'/xbin/d' $updater
fi
# Fix build.prop
$SED -i \
-e '/ro\.kernel\.android\.checkjni/d' \
-e '/ro\.build\.type/s/eng/user/' \
$REPACK/ota/system/build.prop
# Include device specific script
if [ "$TARGET_PRODUCT" = "cyanogen_leo" ]; then
. $ANDROID_BUILD_TOP/device/htc/leo/releasetools/squisher.sh
fi
# Delete unnecessary binaries
( cd $REPACK/ota/system/bin; echo $DELETE_BINS | xargs rm -f; )
# Delete leftover wireless driver
# rm -rf $REPACK/ota/system/lib/modules/*/kernel/drivers/net
# No need for recovery
rm -rf $REPACK/ota/recovery
# Strip modules
[ -d $REPACK/ota/system/lib/modules ] && \
find $REPACK/ota/system/lib/modules -name "*.ko" -print0 | xargs -0 arm-eabi-strip --strip-unneeded
# Determine what to name the new signed package
if [ -z "$CYANOGEN_NIGHTLY" ]; then
MODVERSION=`sed -n -e'/ro\.modversion/s/^.*CyanogenMod-//p' $REPACK/ota/system/build.prop`
: ${MODVERSION:=nightly}
OUTFILE=$OUT/update-cm-$MODVERSION-signed.zip
else
OUTFILE=$OUT/update-squished.zip
fi
# Pack it up and sign
printf "Zipping package..."
( cd $REPACK/ota; zip $QUIET -r $REPACK/update.zip . )
echo
printf "Signing package..."
SECURITYDIR=$ANDROID_BUILD_TOP/build/target/product/security
java -Xmx512m \
-jar $ANDROID_BUILD_TOP/out/host/$OUT_TARGET_HOST/framework/signapk.jar \
-w $SECURITYDIR/testkey.x509.pem $SECURITYDIR/testkey.pk8 \
$REPACK/update.zip $OUTFILE
echo
printf "Cleaning up..."
rm -rf $REPACK
echo
# Create a md5 checksum image of the repacked package
(
img=`basename $OUTFILE`
cd `dirname $OUTFILE`
$MD5 $img >$img.md5sum
echo
echo "Package complete: $OUTFILE"
cat $img.md5sum
echo
)
exit 0

28
releasetools/squisher.sh Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/sh
# This script is included in squisher
# It is the final build step (after OTA package)
echo "updater-script: Making Compatible Update script"
cd $REPACK/ota/META-INF/com/google/android
echo 'mount("yaffs2", "MTD", "boot", "/boot");' >> temp
echo 'package_extract_dir("boot", "/boot");' >> temp
echo 'unmount("/boot");' >> temp
grep -vw assert updater-script >> temp
rm -rf updater-script
grep -vw boot.img temp > updater-script
rm -rf temp
cd $REPACK/ota
echo "Removing: $REPACK/ota/boot.img"
rm -rf $REPACK/ota/boot.img
echo "Removing: $REPACK/ota/boot"
rm -rf $REPACK/ota/boot
echo "Copying: $OUT/boot ($REPACK/ota/boot)"
cp -a $OUT/boot $REPACK/ota/boot
if [ ! -e $REPACK/ota/boot/initrd.gz ] ; then
echo "Copying: $OUT/ramdisk.img ($REPACK/ota/boot/initrd.gz)"
cp -a $OUT/ramdisk.img $REPACK/ota/boot/initrd.gz
fi

View File

@@ -18,8 +18,10 @@ DEVICE=leo
MANUFACTURER=htc
mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE
OUTDIR=vendor/$MANUFACTURER/$DEVICE
MAKEFILE=../../../$OUTDIR/$DEVICE-vendor-blobs.mk
(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/$DEVICE-vendor.mk
(cat << EOF) > $MAKEFILE
# Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -34,7 +36,42 @@ mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/__MANUFACTURER__/__DEVICE__/setup-makefiles.sh
# This file is generated by device/$MANUFACTURER/$DEVICE/setup-makefiles.sh - DO NOT EDIT
# Prebuilt libraries that are needed to build open-source libraries
PRODUCT_COPY_FILES := \\
$OUTDIR/proprietary/lib/libcamera.so:obj/lib/libcamera.so
# All the blobs necessary for leo
PRODUCT_COPY_FILES += \\
EOF
LINEEND=" \\"
COUNT=`cat proprietary-files.txt | grep -v ^# | grep -v ^$ | wc -l | awk {'print $1'}`
for FILE in `cat proprietary-files.txt | grep -v ^# | grep -v ^$`; do
COUNT=`expr $COUNT - 1`
if [ $COUNT = "0" ]; then
LINEEND=""
fi
echo " $OUTDIR/proprietary/$FILE:system/$FILE$LINEEND" >> $MAKEFILE
done
(cat << EOF) > ../../../$OUTDIR/$DEVICE-vendor.mk
# 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.
# This file is generated by device/$MANUFACTURER/$DEVICE/setup-makefiles.sh
# Live wallpaper packages
PRODUCT_PACKAGES := \\
@@ -49,12 +86,12 @@ PRODUCT_COPY_FILES := \\
packages/wallpapers/LivePicker/android.software.live_wallpaper.xml:/system/etc/permissions/android.software.live_wallpaper.xml
# Pick up overlay for features that depend on non-open-source files
DEVICE_PACKAGE_OVERLAYS := vendor/__MANUFACTURER__/__DEVICE__/overlay
DEVICE_PACKAGE_OVERLAYS := $OUTDIR/overlay
\$(call inherit-product, vendor/__MANUFACTURER__/__DEVICE__/device-vendor-blobs.mk)
\$(call inherit-product, $OUTDIR/$DEVICE-vendor-blobs.mk)
EOF
(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/BoardConfigVendor.mk
(cat << EOF) > ../../../$OUTDIR/BoardConfigVendor.mk
# Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -69,13 +106,13 @@ EOF
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/__MANUFACTURER__/__DEVICE__/setup-makefiles.sh
# This file is generated by device/$MANUFACTURER/$DEVICE/setup-makefiles.sh
USE_CAMERA_STUB := false
EOF
mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE/overlay/packages/apps/Launcher2/res/layout
(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/overlay/packages/apps/Launcher2/res/layout/all_apps.xml
mkdir -p ../../../$OUTDIR/overlay/packages/apps/Launcher2/res/layout
(cat << EOF) > ../../../$OUTDIR/overlay/packages/apps/Launcher2/res/layout/all_apps.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 The Android Open Source Project
@@ -92,7 +129,7 @@ mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE/overlay/packages/apps/Launcher2/r
limitations under the License.
-->
<!-- This file is generated by device/__MANUFACTURER__/__DEVICE__/setup-makefiles.sh -->
<!-- This file is generated by device/$MANUFACTURER/$DEVICE/setup-makefiles.sh -->
<!-- switch to all_apps_3d on devices that support RenderScript -->
<merge xmlns:android="http://schemas.android.com/apk/res/android">

49
system.prop Executable file
View File

@@ -0,0 +1,49 @@
#
# system.prop for leo
#
# RIL specific configuration
rild.libpath=/system/lib/libhtc_ril_wrapper.so
rild.libargs=-d /dev/smd0 nand_init rmnet_mode
ro.ril.ecc.HTC-ELL=92,93,94
ro.ril.ecc.HTC-WWE=999
ro.ril.enable.a52.HTC-ITA=1
ro.ril.enable.a53.HTC-ITA=1
ro.ril.enable.a52=0
ro.ril.enable.a53=1
ro.ril.enable.dtm=1
ro.ril.gprsclass=12
ro.ril.hsdpa.category=8
ro.ril.hsupa.category=5
ro.ril.hsxpa=2
ro.ril.enable.prl.recognition=1
# Time between scans in seconds. Keep it high to minimize battery drain.
# This only affects the case in which there are remembered access points,
# but none are in range.
wifi.interface=eth0
wifi.supplicant_scan_interval=120
# Default network type.
# 0 => WCDMA preferred.
ro.telephony.default_network=0
# density in DPI of the LCD of this board. This is used to scale the UI
# appropriately. If this property is not defined, the default value is 240 dpi.
ro.sf.lcd_density=240
# All the interfaces which can use data on
mobiledata.interfaces=rmnet0,rmnet1,rmnet2,ppp0
# This is a high density device with more memory, so larger vm heaps for it.
dalvik.vm.heapsize=48m
# leo have huge 250Mb unwritable system and small 50Mb cache .
dalvik.vm.dexopt-data-only=1
# The OpenGL ES API level that is natively supported by this device.
# This is a 16.16 fixed point number
ro.opengles.version=131072
ro.media.dec.jpeg.memcap=20000000

View File

@@ -15,73 +15,18 @@
# limitations under the License.
DEVICE=leo
MANUFACTURER=htc
mkdir -p ../../../vendor/htc/$DEVICE/proprietary
unzip -j -o ../../../${DEVICE}_update.zip system/bin/akmd system/bin/mm-venc-omx-test system/bin/parse_radio_log system/etc/01_qcomm_omx.cfg system/etc/AudioBTID.csv system/etc/firmware/bcm4329.hcd system/etc/firmware/default.acdb system/etc/firmware/default_nel.acdb system/etc/firmware/default_france.acdb system/etc/firmware/fw_bcm4329_apsta.bin system/etc/firmware/fw_bcm4329.bin system/etc/firmware/yamato_pfp.fw system/etc/firmware/yamato_pm4.fw system/lib/egl/libEGL_adreno200.so system/lib/egl/libGLESv1_CM_adreno200.so system/lib/egl/libGLESv2_adreno200.so system/lib/egl/libq3dtools_adreno200.so system/lib/libcamera.so system/lib/libgps.so system/lib/libgsl.so system/lib/libhtc_acoustic.so system/lib/libhtc_ril.so system/lib/liblvmxipc.so system/lib/liboemcamera.so system/lib/libOmxVdec.so system/lib/libomx_wmadec_sharedlibrary.so system/lib/libomx_wmvdec_sharedlibrary.so system/lib/libpvasfcommon.so system/lib/libpvasflocalpbreg.so system/lib/libpvasflocalpb.so system/etc/pvasflocal.cfg -d ../../../vendor/htc/$DEVICE/proprietary
chmod 755 ../../../vendor/htc/$DEVICE/proprietary/akmd
chmod 755 ../../../vendor/htc/$DEVICE/proprietary/mm-venc-omx-test
chmod 755 ../../../vendor/htc/$DEVICE/proprietary/parse_radio_log
OUTDIR=../../../vendor/$MANUFACTURER/$DEVICE
BASE=$OUTDIR/proprietary
rm -rf $BASE/*
(cat << EOF) | sed s/__DEVICE__/$DEVICE/g > ../../../vendor/htc/$DEVICE/$DEVICE-vendor-blobs.mk
# 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.
# This file is generated by device/htc/__DEVICE__/extract-files.sh
# Prebuilt libraries that are needed to build open-source libraries
PRODUCT_COPY_FILES := \\
vendor/htc/__DEVICE__/proprietary/libgps.so:obj/lib/libgps.so \\
vendor/htc/__DEVICE__/proprietary/libcamera.so:obj/lib/libcamera.so
# All the blobs necessary for leo
PRODUCT_COPY_FILES += \\
vendor/htc/__DEVICE__/proprietary/akmd:/system/bin/akmd \\
vendor/htc/__DEVICE__/proprietary/mm-venc-omx-test:/system/bin/mm-venc-omx-test \\
vendor/htc/__DEVICE__/proprietary/parse_radio_log:/system/bin/parse_radio_log \\
vendor/htc/__DEVICE__/proprietary/01_qcomm_omx.cfg:/system/etc/01_qcomm_omx.cfg \\
vendor/htc/__DEVICE__/proprietary/AudioBTID.csv:/system/etc/AudioBTID.csv \\
vendor/htc/__DEVICE__/proprietary/bcm4329.hcd:/system/etc/firmware/bcm4329.hcd \\
vendor/htc/__DEVICE__/proprietary/default.acdb:/system/etc/firmware/default.acdb \\
vendor/htc/__DEVICE__/proprietary/default_france.acdb:/system/etc/firmware/default_france.acdb \\
vendor/htc/__DEVICE__/proprietary/default_nel.acdb:/system/etc/firmware/default_nel.acdb \\
vendor/htc/__DEVICE__/proprietary/fw_bcm4329_apsta.bin:/system/etc/firmware/fw_bcm4329_apsta.bin \\
vendor/htc/__DEVICE__/proprietary/fw_bcm4329.bin:/system/etc/firmware/fw_bcm4329.bin \\
vendor/htc/__DEVICE__/proprietary/yamato_pfp.fw:/system/etc/firmware/yamato_pfp.fw \\
vendor/htc/__DEVICE__/proprietary/yamato_pm4.fw:/system/etc/firmware/yamato_pm4.fw \\
vendor/htc/__DEVICE__/proprietary/libEGL_adreno200.so:/system/lib/egl/libEGL_adreno200.so \\
vendor/htc/__DEVICE__/proprietary/libGLESv1_CM_adreno200.so:/system/lib/egl/libGLESv1_CM_adreno200.so \\
vendor/htc/__DEVICE__/proprietary/libGLESv2_adreno200.so:/system/lib/egl/libGLESv2_adreno200.so \\
vendor/htc/__DEVICE__/proprietary/libq3dtools_adreno200.so:/system/lib/egl/libq3dtools_adreno200.so \\
vendor/htc/__DEVICE__/proprietary/libcamera.so:/system/lib/libcamera.so \\
vendor/htc/__DEVICE__/proprietary/libgps.so:/system/lib/libgps.so \\
vendor/htc/__DEVICE__/proprietary/libgsl.so:/system/lib/libgsl.so \\
vendor/htc/__DEVICE__/proprietary/libhtc_acoustic.so:/system/lib/libhtc_acoustic.so \\
vendor/htc/__DEVICE__/proprietary/libhtc_ril.so:/system/lib/libhtc_ril.so \\
vendor/htc/__DEVICE__/proprietary/liblvmxipc.so:/system/lib/liblvmxipc.so \\
vendor/htc/__DEVICE__/proprietary/liboemcamera.so:/system/lib/liboemcamera.so \\
vendor/htc/__DEVICE__/proprietary/libOmxVdec.so:/system/lib/libOmxVdec.so
ifdef WITH_WINDOWS_MEDIA
PRODUCT_COPY_FILES += \\
vendor/htc/__DEVICE__/proprietary/libomx_wmadec_sharedlibrary.so:system/lib/libomx_wmadec_sharedlibrary.so \\
vendor/htc/__DEVICE__/proprietary/libomx_wmvdec_sharedlibrary.so:system/lib/libomx_wmvdec_sharedlibrary.so \\
vendor/htc/__DEVICE__/proprietary/libpvasfcommon.so:system/lib/libpvasfcommon.so \\
vendor/htc/__DEVICE__/proprietary/libpvasflocalpbreg.so:system/lib/libpvasflocalpbreg.so \\
vendor/htc/__DEVICE__/proprietary/libpvasflocalpb.so:system/lib/libpvasflocalpb.so \\
vendor/htc/__DEVICE__/proprietary/pvasflocal.cfg:system/etc/pvasflocal.cfg
endif
EOF
for FILE in `cat proprietary-files.txt | grep -v ^# | grep -v ^$`; do
DIR=`dirname $FILE`
if [ ! -d $BASE/$DIR ]; then
mkdir -p $BASE/$DIR
fi
unzip -j -o ../../../${DEVICE}_update.zip system/$FILE -d $BASE/$DIR
done
./setup-makefiles.sh

View File

@@ -20,5 +20,4 @@
# In particular, you can add lunch options with the add_lunch_combo
# function: add_lunch_combo generic-eng
add_lunch_combo htc_leo-userdebug
add_lunch_combo htc_leo-eng
add_lunch_combo cyanogen_leo-eng