From 197fbe0997ccd0a3b96025da2532cf456687028a Mon Sep 17 00:00:00 2001 From: Jon Medhurst Date: Fri, 4 Nov 2011 15:00:34 -0400 Subject: Seed new Versatile Express device by copying device/linaro/snowball.git Signed-off-by: Jon Medhurst --- AndroidBoard.mk | 42 ++++ AndroidProducts.mk | 2 + BoardConfig.mk | 56 +++++ Logitech_Logitech_USB_Keyboard.kcm | 64 ++++++ Logitech_Logitech_USB_Keyboard.kl | 90 ++++++++ MLO | Bin 0 -> 22072 bytes README.txt | 11 + device.mk | 21 ++ egl.cfg | 2 + gpio-keys.kcm | 64 ++++++ gpio-keys.kl | 1 + init.rc | 433 +++++++++++++++++++++++++++++++++++++ init.snowball.sh | 3 + init.st-ericsson.rc | 117 ++++++++++ initlogo.rle | Bin 0 -> 27288 bytes snowball.mk | 7 + system.prop | 6 + ueventd.st-ericsson.rc | 3 + vendorsetup.sh | 1 + vold.fstab | 15 ++ 20 files changed, 938 insertions(+) create mode 100644 AndroidBoard.mk create mode 100644 AndroidProducts.mk create mode 100644 BoardConfig.mk create mode 100644 Logitech_Logitech_USB_Keyboard.kcm create mode 100644 Logitech_Logitech_USB_Keyboard.kl create mode 100644 MLO create mode 100644 README.txt create mode 100644 device.mk create mode 100644 egl.cfg create mode 100644 gpio-keys.kcm create mode 100644 gpio-keys.kl create mode 100644 init.rc create mode 100755 init.snowball.sh create mode 100644 init.st-ericsson.rc create mode 100644 initlogo.rle create mode 100644 snowball.mk create mode 100644 system.prop create mode 100644 ueventd.st-ericsson.rc create mode 100644 vendorsetup.sh create mode 100644 vold.fstab diff --git a/AndroidBoard.mk b/AndroidBoard.mk new file mode 100644 index 0000000..3f69a35 --- /dev/null +++ b/AndroidBoard.mk @@ -0,0 +1,42 @@ +LOCAL_PATH := $(call my-dir) + +file := $(TARGET_OUT_KEYLAYOUT)/gpio-keys.kl +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/gpio-keys.kl | $(ACP) + $(transform-prebuilt-to-target) + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := gpio-keys.kcm +LOCAL_MODULE_TAGS := optional +include $(BUILD_KEY_CHAR_MAP) + +file := $(TARGET_OUT_KEYLAYOUT)/Logitech_Logitech_USB_Keyboard.kl +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/Logitech_Logitech_USB_Keyboard.kl | $(ACP) + $(transform-prebuilt-to-target) + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := Logitech_Logitech_USB_Keyboard.kcm +LOCAL_MODULE_TAGS := optional +include $(BUILD_KEY_CHAR_MAP) + +file := $(TARGET_ROOT_OUT)/init.rc +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/init.rc | $(ACP) + $(transform-prebuilt-to-target) + +file := $(TARGET_ROOT_OUT)/init.st-ericsson.rc +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/init.st-ericsson.rc | $(ACP) + $(transform-prebuilt-to-target) + +file := $(PRODUCT_OUT)/system/etc/init.snowball.sh +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/init.snowball.sh | $(ACP) + $(transform-prebuilt-to-target) + +file := $(TARGET_ROOT_OUT)/initlogo.rle +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/initlogo.rle | $(ACP) + $(transform-prebuilt-to-target) + diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..6adbfef --- /dev/null +++ b/AndroidProducts.mk @@ -0,0 +1,2 @@ +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/snowball.mk diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..dae661f --- /dev/null +++ b/BoardConfig.mk @@ -0,0 +1,56 @@ +# config.mk +# +# Product-specific compile-time definitions. +# + +TARGET_BOARD_PLATFORM := snowball +TARGET_NO_BOOTLOADER := true # Uses u-boot instead +TARGET_NO_KERNEL := false +KERNEL_CONFIG := u8500_snowball_android_defconfig +TARGET_USE_UBOOT := true +UBOOT_CONFIG := u8500_snowball_config +TARGET_USE_XLOADER := false +TARGET_NO_RECOVERY := true +TARGET_NO_RADIOIMAGE := true +TARGET_PROVIDES_INIT_RC := true +BOARD_USES_GENERIC_AUDIO := true +BOARD_USES_ALSA_AUDIO := false +OMAP_ENHANCEMENT := true +HARDWARE_OMX := false +USE_CAMERA_STUB := false + +BOARD_HAVE_BLUETOOTH := false +BOARD_HAVE_BLUETOOTH_BCM := false + +TARGET_CPU_ABI := armeabi-v7a +TARGET_CPU_ABI2 := armeabi + +ifdef HARDWARE_OMX +OMX_VENDOR := ti +OMX_VENDOR_INCLUDES := \ + hardware/ti/omx/system/src/openmax_il/omx_core/inc \ + hardware/ti/omx/image/src/openmax_il/jpeg_enc/inc +OMX_VENDOR_WRAPPER := TI_OMX_Wrapper +BOARD_OPENCORE_LIBRARIES := libOMX_Core +BOARD_OPENCORE_FLAGS := -DHARDWARE_OMX=1 +endif + +ifdef OMAP_ENHANCEMENT +COMMON_GLOBAL_CFLAGS += -DOMAP_ENHANCEMENT -DTARGET_OMAP4 +endif + +# Enable NEON feature +TARGET_ARCH_VARIANT := armv7-a-neon +ARCH_ARM_HAVE_TLS_REGISTER := true + +EXTRA_PACKAGE_MANAGEMENT := false + +TARGET_USERIMAGES_USE_EXT4 := true +TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true + +# bootargs +BOARD_KERNEL_CMDLINE := omapdss.def_disp=hdmi consoleblank=0 + +# Snowball uses a Nova A9500 -- Dual-Core Cortex A9 +TARGET_CPU_SMP := true +TARGET_EXTRA_CFLAGS += -mtune=cortex-a9 -mcpu=cortex-a9 diff --git a/Logitech_Logitech_USB_Keyboard.kcm b/Logitech_Logitech_USB_Keyboard.kcm new file mode 100644 index 0000000..8056364 --- /dev/null +++ b/Logitech_Logitech_USB_Keyboard.kcm @@ -0,0 +1,64 @@ +[type=QWERTY] + +# keycode display number base caps fn caps_fn + +A 'A' '2' 'a' 'A' '#' 0x00 +B 'B' '2' 'b' 'B' '<' 0x00 +C 'C' '2' 'c' 'C' '9' 0x00E7 +D 'D' '3' 'd' 'D' '5' 0x00 +E 'E' '3' 'e' 'E' '2' 0x0301 +F 'F' '3' 'f' 'F' '6' 0x00A5 +G 'G' '4' 'g' 'G' '-' '_' +H 'H' '4' 'h' 'H' '[' '{' +I 'I' '4' 'i' 'I' '$' 0x0302 +J 'J' '5' 'j' 'J' ']' '}' +K 'K' '5' 'k' 'K' '"' '~' +L 'L' '5' 'l' 'L' ''' '`' +M 'M' '6' 'm' 'M' '!' 0x00 +N 'N' '6' 'n' 'N' '>' 0x0303 +O 'O' '6' 'o' 'O' '(' 0x00 +P 'P' '7' 'p' 'P' ')' 0x00 +Q 'Q' '7' 'q' 'Q' '*' 0x0300 +R 'R' '7' 'r' 'R' '3' 0x20AC +S 'S' '7' 's' 'S' '4' 0x00DF +T 'T' '8' 't' 'T' '+' 0x00A3 +U 'U' '8' 'u' 'U' '&' 0x0308 +V 'V' '8' 'v' 'V' '=' '^' +W 'W' '9' 'w' 'W' '1' 0x00 +X 'X' '9' 'x' 'X' '8' 0xEF00 +Y 'Y' '9' 'y' 'Y' '%' 0x00A1 +Z 'Z' '9' 'z' 'Z' '7' 0x00 + +# on pc keyboards +COMMA ',' ',' ',' ';' ';' '|' +PERIOD '.' '.' '.' ':' ':' 0x2026 +AT '@' '0' '@' '0' '0' 0x2022 +SLASH '/' '/' '/' '?' '?' '\' + +SPACE 0x20 0x20 0x20 0x20 0xEF01 0xEF01 +ENTER 0xa 0xa 0xa 0xa 0xa 0xa + +TAB 0x9 0x9 0x9 0x9 0x9 0x9 +0 '0' '0' '0' ')' ')' ')' +1 '1' '1' '1' '!' '!' '!' +2 '2' '2' '2' '@' '@' '@' +3 '3' '3' '3' '#' '#' '#' +4 '4' '4' '4' '$' '$' '$' +5 '5' '5' '5' '%' '%' '%' +6 '6' '6' '6' '^' '^' '^' +7 '7' '7' '7' '&' '&' '&' +8 '8' '8' '8' '*' '*' '*' +9 '9' '9' '9' '(' '(' '(' + +GRAVE '`' '`' '`' '~' '`' '~' +MINUS '-' '-' '-' '_' '-' '_' +EQUALS '=' '=' '=' '+' '=' '+' +LEFT_BRACKET '[' '[' '[' '{' '[' '{' +RIGHT_BRACKET ']' ']' ']' '}' ']' '}' +BACKSLASH '\' '\' '\' '|' '\' '|' +SEMICOLON ';' ';' ';' ':' ';' ':' +APOSTROPHE ''' ''' ''' '"' ''' '"' +STAR '*' '*' '*' '*' '*' '*' +POUND '#' '#' '#' '#' '#' '#' +PLUS '+' '+' '+' '+' '+' '+' + diff --git a/Logitech_Logitech_USB_Keyboard.kl b/Logitech_Logitech_USB_Keyboard.kl new file mode 100644 index 0000000..fef2d92 --- /dev/null +++ b/Logitech_Logitech_USB_Keyboard.kl @@ -0,0 +1,90 @@ +key 399 GRAVE +key 2 1 +key 3 2 +key 4 3 +key 5 4 +key 6 5 +key 7 6 +key 8 7 +key 9 8 +key 10 9 +key 11 0 +key 158 BACK WAKE_DROPPED +key 230 SOFT_RIGHT WAKE +key 60 SOFT_RIGHT WAKE +key 107 ENDCALL WAKE_DROPPED +key 62 ENDCALL WAKE_DROPPED +key 229 MENU WAKE_DROPPED +key 139 MENU WAKE_DROPPED +key 59 MENU WAKE_DROPPED +key 88 MENU WAKE_DROPPED +key 127 SEARCH WAKE_DROPPED +key 217 SEARCH WAKE_DROPPED +key 228 POUND +key 227 STAR +key 231 CALL WAKE_DROPPED +key 61 CALL WAKE_DROPPED +key 232 DPAD_CENTER WAKE_DROPPED +key 108 DPAD_DOWN WAKE_DROPPED +key 103 DPAD_UP WAKE_DROPPED +key 102 HOME WAKE +key 105 DPAD_LEFT WAKE_DROPPED +key 106 DPAD_RIGHT WAKE_DROPPED +key 115 VOLUME_UP +key 114 VOLUME_DOWN +key 116 POWER WAKE +key 212 CAMERA + +key 16 Q +key 17 W +key 18 E +key 19 R +key 20 T +key 21 Y +key 22 U +key 23 I +key 24 O +key 25 P +key 26 LEFT_BRACKET +key 27 RIGHT_BRACKET +key 43 BACKSLASH + +key 30 A +key 31 S +key 32 D +key 33 F +key 34 G +key 35 H +key 36 J +key 37 K +key 38 L +key 39 SEMICOLON +key 40 APOSTROPHE +key 14 DEL + +key 44 Z +key 45 X +key 46 C +key 47 V +key 48 B +key 49 N +key 50 M +key 51 COMMA +key 52 PERIOD +key 53 SLASH +key 28 ENTER + +key 56 ALT_LEFT +key 100 ALT_RIGHT +key 42 SHIFT_LEFT +key 54 SHIFT_RIGHT +key 15 TAB +key 57 SPACE +key 150 EXPLORER +key 155 ENVELOPE + +key 12 MINUS +key 13 EQUALS +key 215 AT + + diff --git a/MLO b/MLO new file mode 100644 index 0000000..f8b99fc Binary files /dev/null and b/MLO differ diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..0fd2438 --- /dev/null +++ b/README.txt @@ -0,0 +1,11 @@ +Summary: Linaro Evaluation Build for Android + +Author: Linaro Limited + +Description: + In order to ensure that Software Components developed and improved work + well and really matter in a production like environment, Linaro Platform + Releases introduced a concept called "Evaluation Builds". + + Evaluation Builds are images that can be installed on high volume member + boards supported by Linaro Platform and Landing Teams. diff --git a/device.mk b/device.mk new file mode 100644 index 0000000..237dc70 --- /dev/null +++ b/device.mk @@ -0,0 +1,21 @@ +# Copyright (C) 2011 Linaro Limited +# +# 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. + +PRODUCT_COPY_FILES := \ + device/linaro/snowball/vold.fstab:system/etc/vold.fstab \ + device/linaro/snowball/egl.cfg:system/lib/egl/egl.cfg + +PRODUCT_COPY_FILES += \ + device/linaro/snowball/init.st-ericsson.rc:root/init.st-ericsson.rc \ + device/linaro/snowball/ueventd.st-ericsson.rc:root/ueventd.st-ericsson.rc diff --git a/egl.cfg b/egl.cfg new file mode 100644 index 0000000..45af426 --- /dev/null +++ b/egl.cfg @@ -0,0 +1,2 @@ +0 0 android +0 1 POWERVR_SGX540_120 diff --git a/gpio-keys.kcm b/gpio-keys.kcm new file mode 100644 index 0000000..8056364 --- /dev/null +++ b/gpio-keys.kcm @@ -0,0 +1,64 @@ +[type=QWERTY] + +# keycode display number base caps fn caps_fn + +A 'A' '2' 'a' 'A' '#' 0x00 +B 'B' '2' 'b' 'B' '<' 0x00 +C 'C' '2' 'c' 'C' '9' 0x00E7 +D 'D' '3' 'd' 'D' '5' 0x00 +E 'E' '3' 'e' 'E' '2' 0x0301 +F 'F' '3' 'f' 'F' '6' 0x00A5 +G 'G' '4' 'g' 'G' '-' '_' +H 'H' '4' 'h' 'H' '[' '{' +I 'I' '4' 'i' 'I' '$' 0x0302 +J 'J' '5' 'j' 'J' ']' '}' +K 'K' '5' 'k' 'K' '"' '~' +L 'L' '5' 'l' 'L' ''' '`' +M 'M' '6' 'm' 'M' '!' 0x00 +N 'N' '6' 'n' 'N' '>' 0x0303 +O 'O' '6' 'o' 'O' '(' 0x00 +P 'P' '7' 'p' 'P' ')' 0x00 +Q 'Q' '7' 'q' 'Q' '*' 0x0300 +R 'R' '7' 'r' 'R' '3' 0x20AC +S 'S' '7' 's' 'S' '4' 0x00DF +T 'T' '8' 't' 'T' '+' 0x00A3 +U 'U' '8' 'u' 'U' '&' 0x0308 +V 'V' '8' 'v' 'V' '=' '^' +W 'W' '9' 'w' 'W' '1' 0x00 +X 'X' '9' 'x' 'X' '8' 0xEF00 +Y 'Y' '9' 'y' 'Y' '%' 0x00A1 +Z 'Z' '9' 'z' 'Z' '7' 0x00 + +# on pc keyboards +COMMA ',' ',' ',' ';' ';' '|' +PERIOD '.' '.' '.' ':' ':' 0x2026 +AT '@' '0' '@' '0' '0' 0x2022 +SLASH '/' '/' '/' '?' '?' '\' + +SPACE 0x20 0x20 0x20 0x20 0xEF01 0xEF01 +ENTER 0xa 0xa 0xa 0xa 0xa 0xa + +TAB 0x9 0x9 0x9 0x9 0x9 0x9 +0 '0' '0' '0' ')' ')' ')' +1 '1' '1' '1' '!' '!' '!' +2 '2' '2' '2' '@' '@' '@' +3 '3' '3' '3' '#' '#' '#' +4 '4' '4' '4' '$' '$' '$' +5 '5' '5' '5' '%' '%' '%' +6 '6' '6' '6' '^' '^' '^' +7 '7' '7' '7' '&' '&' '&' +8 '8' '8' '8' '*' '*' '*' +9 '9' '9' '9' '(' '(' '(' + +GRAVE '`' '`' '`' '~' '`' '~' +MINUS '-' '-' '-' '_' '-' '_' +EQUALS '=' '=' '=' '+' '=' '+' +LEFT_BRACKET '[' '[' '[' '{' '[' '{' +RIGHT_BRACKET ']' ']' ']' '}' ']' '}' +BACKSLASH '\' '\' '\' '|' '\' '|' +SEMICOLON ';' ';' ';' ':' ';' ':' +APOSTROPHE ''' ''' ''' '"' ''' '"' +STAR '*' '*' '*' '*' '*' '*' +POUND '#' '#' '#' '#' '#' '#' +PLUS '+' '+' '+' '+' '+' '+' + diff --git a/gpio-keys.kl b/gpio-keys.kl new file mode 100644 index 0000000..d19ab04 --- /dev/null +++ b/gpio-keys.kl @@ -0,0 +1 @@ +key 276 MENU WAKE diff --git a/init.rc b/init.rc new file mode 100644 index 0000000..2c5e7ba --- /dev/null +++ b/init.rc @@ -0,0 +1,433 @@ +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_ROOT /system + export ANDROID_ASSETS /system/app + export ANDROID_DATA /data + export EXTERNAL_STORAGE /mnt/sdcard + export ASEC_MOUNTPOINT /mnt/asec + export LOOP_MOUNTPOINT /mnt/obb + 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 0770 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 + + 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 + + # Set access for camera + chmod 0666 /dev/video0 + +on fs +# mount mmc partitions + +# ! Snowall Hack Alert ! +# The current 3.0 kernel has problems mounting the mmc card. +# Disabling the emmc and allowing more time for the mmc +# card to be probed seems to help. This should be reverted +# back to 'mmcblk1pX' but for now, it yields a bootable system. + + mount ext4 /dev/block/mmcblk0p2 /system ro + mount ext4 /dev/block/mmcblk0p3 /cache + mount ext4 /dev/block/mmcblk0p5 /data + +on post-fs + # once everything is setup, no need to modify / + mount rootfs rootfs / rw remount + + # We chown/chmod /data again so because mount is run as root + defaults + chown system system /data + chmod 0771 /data + + # 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 0770 /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/data 0771 system system + mkdir /data/app-private 0771 system system + mkdir /data/app 0771 system system + mkdir /data/property 0700 root root + + # Setup paths used for socket communication with the dhcp daemon(dhcpd) + mkdir /data/misc/dhcp 0770 dhcp dhcp + chown dhcp dhcp /data/misc/dhcp + + # 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 + + # 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 + +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 + + #userspace configuration for adb + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/functions adb,acm + write /sys/class/android_usb/android0/f_acm/instances 2 + write /sys/class/android_usb/android0/enable 1 + + # 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 + + 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 dhcpcd_eth0 /system/bin/dhcpcd -dABKL + group dhcp + disabled + oneshot + +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 + +service debuggerd /system/bin/debuggerd + +service ril-daemon /system/bin/rild + socket rild stream 660 root radio + socket rild-debug stream 660 radio system + user root + group radio cache inet misc audio sdcard_rw + +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 flash_recovery /system/etc/install-recovery.sh + oneshot + +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 diff --git a/init.snowball.sh b/init.snowball.sh new file mode 100755 index 0000000..302d8bd --- /dev/null +++ b/init.snowball.sh @@ -0,0 +1,3 @@ +#!/system/bin/sh + +setprop ro.runtime.device snowball diff --git a/init.st-ericsson.rc b/init.st-ericsson.rc new file mode 100644 index 0000000..dc54260 --- /dev/null +++ b/init.st-ericsson.rc @@ -0,0 +1,117 @@ +on init + # mount debugfs + mount debugfs /sys/kernel/debug /sys/kernel/debug + +# power management +# Enable off mode by default + #write /sys/kernel/debug/pm_debug/enable_off_mode 1 + +# Enable Smart Reflex in debugfs + write /sys/kernel/debug/pm_debug/smartreflex/sr_core/autocomp 1 + write /sys/kernel/debug/pm_debug/smartreflex/sr_iva/autocomp 1 + write /sys/kernel/debug/pm_debug/smartreflex/sr_mpu/autocomp 1 + +on boot + # create dhcpcd dir + mkdir /data/misc/dhcp 0770 dhcp dhcp + chmod 0770 /data/misc/dhcp + chmod 0666 /dev/pvrsrvkm + + # switch CPUfreq from performance to hotplug + #write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor hotplug + #write /sys/devices/system/cpu/cpufreq/hotplug/down_threshold 30 + + #Give system ownership and permission to boost clock for specified timeout + #Note boost_timeout cannot be changed from application because of dynamic sysfs creation. It will have default value of 3 sec. + chown system system /sys/devices/system/cpu/cpu0/cpufreq/boost_cpufreq + chmod 0664 /sys/devices/system/cpu/cpu0/cpufreq/boost_cpufreq + + # Boost the CPU for 60 sec for boot optimization + #write /sys/devices/system/cpu/cpufreq/hotplug/boost_timeout 60000000 + #write /sys/devices/system/cpu/cpu0/cpufreq/boost_cpufreq 1 + + # change permissions for alsa nodes + chmod 0777 /dev/snd/pcmC0D0c + chmod 0777 /dev/snd/pcmC0D0p + chmod 0777 /dev/snd/controlC0 + chmod 0777 /dev/snd/timer + + #change permissions for alsa nodes for audio modem + chmod 0777 /dev/snd/pcmC0D5c + chmod 0777 /dev/snd/pcmC0D5p + + #change permissions for alsa nodes for HDMI + chmod 777 /dev/snd/pcmC0D7p + + # change permissions for Overlay + chown system system /dev/video1 + chown system system /dev/video2 + chown system system /dev/video3 + # change permissions for overlay managers and display devices + chown system system /sys/devices/platform/omapdss/display0/enabled + chown system system /sys/devices/platform/omapdss/display1/enabled + chown system system /sys/devices/platform/omapdss/display2/enabled + chown system system /sys/devices/platform/omapdss/display3/enabled + chown system system /sys/devices/platform/omapdss/display0/name + chown system system /sys/devices/platform/omapdss/display1/name + chown system system /sys/devices/platform/omapdss/display2/name + chown system system /sys/devices/platform/omapdss/display3/name + chown system system /sys/devices/platform/omapdss/overlay0/manager + chown system system /sys/devices/platform/omapdss/overlay1/manager + chown system system /sys/devices/platform/omapdss/overlay2/manager + chown system system /sys/devices/platform/omapdss/overlay3/manager + chown system system /sys/devices/platform/omapdss/overlay0/zorder + chown system system /sys/devices/platform/omapdss/overlay1/zorder + chown system system /sys/devices/platform/omapdss/overlay2/zorder + chown system system /sys/devices/platform/omapdss/overlay3/zorder + # change permissions for manager tranparency parameters + chown system system /sys/devices/platform/omapdss/manager0/name + chown system system /sys/devices/platform/omapdss/manager0/display + chown system system /sys/devices/platform/omapdss/manager1/name + chown system system /sys/devices/platform/omapdss/manager1/display + chown system system /sys/devices/platform/omapdss/manager2/name + chown system system /sys/devices/platform/omapdss/manager2/display + chown system system /sys/devices/platform/omapdss/overlay0/enabled + chown system system /sys/devices/platform/omapdss/overlay1/enabled + chown system system /sys/devices/platform/omapdss/overlay2/enabled + chown system system /sys/devices/platform/omapdss/overlay3/enabled + # change permissions for display timings to get the resolutions + chown system system /sys/devices/platform/omapdss/display0/timings + chown system system /sys/devices/platform/omapdss/display1/timings + chown system system /sys/devices/platform/omapdss/display2/timings + chown system system /sys/devices/platform/omapdss/display3/timings + chown system system /sys/devices/platform/omapdss/display2/code + # change permissions for Tiler driver + chown media media /dev/tiler + chmod 0660 /dev/tiler + chmod 0660 /dev/dmm + + # Revert the boost_timeout to the default value of 3 sec. Note this won't affect the prev boost + # request for boot time reduction + # write /sys/devices/system/cpu/cpufreq/hotplug/boost_timeout 3000000 + + # Enable hotplug detection for HDMI + # write /sys/devices/platform/omapdss/display2/hpd_enabled 1 + + chown system system /sys/class/graphics/fb0/overlays + chown system system /sys/class/graphics/fb0/fit_to_screen + chown system system /sys/class/graphics/fb1/overlays + chmod 0666 /dev/pvrsrvkm + + insmod /system/modules/gator.ko + +# Initialize the SGX driver +#service pvrsrvinit /system/bin/pvrsrvinit +# user root +# oneshot + +service faketsd /system/bin/faketsd + user bluetooth + group bluetooth + oneshot + +#userspace daemon needed for gator +service gatord /system/bin/gatord + user root + oneshot + diff --git a/initlogo.rle b/initlogo.rle new file mode 100644 index 0000000..9bf8bef Binary files /dev/null and b/initlogo.rle differ diff --git a/snowball.mk b/snowball.mk new file mode 100644 index 0000000..4409224 --- /dev/null +++ b/snowball.mk @@ -0,0 +1,7 @@ +# The snowball product that is specialized for snowball. +$(call inherit-product, device/linaro/common/common.mk) +$(call inherit-product, device/linaro/snowball/device.mk) + +PRODUCT_BRAND := snowball +PRODUCT_DEVICE := snowball +PRODUCT_NAME := snowball diff --git a/system.prop b/system.prop new file mode 100644 index 0000000..91c3bcf --- /dev/null +++ b/system.prop @@ -0,0 +1,6 @@ +# +# system.prop +# + +rild.libpath=/system/lib/libreference-ril.so +rild.libargs=-d /dev/ttyUSB2 diff --git a/ueventd.st-ericsson.rc b/ueventd.st-ericsson.rc new file mode 100644 index 0000000..5f1ccc5 --- /dev/null +++ b/ueventd.st-ericsson.rc @@ -0,0 +1,3 @@ + +/dev/pvrsrvkm 0666 system system + diff --git a/vendorsetup.sh b/vendorsetup.sh new file mode 100644 index 0000000..30c29e0 --- /dev/null +++ b/vendorsetup.sh @@ -0,0 +1 @@ +add_lunch_combo snowball-eng diff --git a/vold.fstab b/vold.fstab new file mode 100644 index 0000000..7215142 --- /dev/null +++ b/vold.fstab @@ -0,0 +1,15 @@ +## Vold 2.0 Generic fstab +## - San Mehat (san@android.com) +## + +####################### +## Regular device mount +## +## Format: dev_mount