Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

iyokan: Initial import

This is the initial support commit for the Xperia Pro
  • Loading branch information...
commit e42f344c31f4831b77d13ea64eb535a5e019faec 0 parents
@defer defer authored
Showing with 2,781 additions and 0 deletions.
  1. +5 −0 Android.mk
  2. +31 −0 AndroidBoard.mk
  3. +29 −0 AndroidProducts.mk
  4. +5 −0 BoardConfig.mk
  5. +49 −0 CleanSpec.mk
  6. +24 −0 KeyboardChanger/Android.mk
  7. +18 −0 KeyboardChanger/AndroidManifest.xml
  8. +2 −0  KeyboardChanger/README
  9. BIN  KeyboardChanger/res/drawable-mdpi/icon.png
  10. +32 −0 KeyboardChanger/res/layout/main.xml
  11. +23 −0 KeyboardChanger/res/values/strings.xml
  12. +249 −0 KeyboardChanger/src/bin4ry/FreeXperia/KeyboardChanger/KeyboardChangerActivity.java
  13. +130 −0 KeyboardChanger/src/bin4ry/FreeXperia/KeyboardChanger/ShellCommand.java
  14. 0  README
  15. +87 −0 device_iyokan.mk
  16. +221 −0 extract-files.sh
  17. +54 −0 include/linux/ashmem.h
  18. +354 −0 include/linux/msm_audio_7x30.h
  19. +89 −0 include/linux/msm_audio_aac.h
  20. +51 −0 include/linux/msm_audio_amrnb.h
  21. +66 −0 include/linux/msm_audio_qcp.h
  22. +253 −0 include/linux/msm_mdp.h
  23. BIN  kernel
  24. BIN  overlay/frameworks/base/core/res/res/drawable-hdpi/default_wallpaper.jpg
  25. +70 −0 overlay/frameworks/base/core/res/res/values/config.xml
  26. +22 −0 overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
  27. +21 −0 overlay/frameworks/base/tests/ImfTest/res/values/config.xml
  28. +8 −0 overlay/packages/apps/CMParts/res/values/config.xml
  29. +21 −0 overlay/packages/apps/Contacts/res/values/config.xml
  30. BIN  overlay/packages/apps/Launcher2/res/drawable-hdpi/wallpaper_black.png
  31. BIN  overlay/packages/apps/Launcher2/res/drawable-hdpi/wallpaper_black_small.jpg
  32. +6 −0 overlay/packages/apps/Launcher2/res/values/config.xml
  33. +39 −0 overlay/packages/apps/Mms/res/xml/mms_config.xml
  34. +41 −0 overlay/packages/apps/Phone/res/values/config.xml
  35. +23 −0 overlay/packages/apps/Settings/res/values/bools.xml
  36. +31 −0 overlay/packages/apps/Torch/res/values/config.xml
  37. +33 −0 prebuilt/bootrec
  38. +66 −0 prebuilt/hw_config.sh
  39. +211 −0 prebuilt/media_profiles.xml
  40. +8 −0 recovery.fstab
  41. +105 −0 recovery/recovery_ui.c
  42. +303 −0 setup-makefiles.sh
  43. +1 −0  vendorsetup.sh
5 Android.mk
@@ -0,0 +1,5 @@
+LOCAL_PATH := $(call my-dir)
+
+ifeq ($(TARGET_DEVICE),iyokan)
+ include $(call all-makefiles-under,$(LOCAL_PATH))
+endif
31 AndroidBoard.mk
@@ -0,0 +1,31 @@
+# Copyright (C) 2007 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.
+
+LOCAL_PATH := device/semc/iyokan/
+
+#
+# Boot files
+#
+#ifeq ($(TARGET_PREBUILT_KERNEL),)
+TARGET_PREBUILT_KERNEL := $(LOCAL_PATH)/kernel
+#endif
+
+file := $(INSTALLED_KERNEL_TARGET)
+ALL_PREBUILT += $(file)
+$(file): $(TARGET_PREBUILT_KERNEL) | $(ACP)
+ $(transform-prebuilt-to-target)
+
+
+
+
29 AndroidProducts.mk
@@ -0,0 +1,29 @@
+#
+# Copyright (C) 2008 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 should set PRODUCT_MAKEFILES to a list of product makefiles
+# to expose to the build system. LOCAL_DIR will already be set to
+# the directory containing this file.
+#
+# This file may not rely on the value of any variable other than
+# LOCAL_DIR; do not use any conditionals, and do not look up the
+# value of any variable that isn't set in this file or in a file that
+# it includes.
+#
+
+PRODUCT_MAKEFILES := \
+ $(LOCAL_DIR)/device_iyokan.mk
5 BoardConfig.mk
@@ -0,0 +1,5 @@
+-include device/semc/mogami-common/BoardConfigCommon.mk
+
+TARGET_SPECIFIC_HEADER_PATH := device/semc/iyokan/include
+
+TARGET_OTA_ASSERT_DEVICE := MK16i,MK16a,iyokan
49 CleanSpec.mk
@@ -0,0 +1,49 @@
+# Copyright (C) 2007 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.
+#
+
+# If you don't need to do a full clean build but would like to touch
+# a file or delete some intermediate files, add a clean step to the end
+# of the list. These steps will only be run once, if they haven't been
+# run before.
+#
+# E.g.:
+# $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
+# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
+#
+# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
+# files that are missing or have been moved.
+#
+# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
+# Use $(OUT_DIR) to refer to the "out" directory.
+#
+# If you need to re-do something that's already mentioned, just copy
+# the command and add it to the bottom of the list. E.g., if a change
+# that you made last week required touching a file and a change you
+# made today requires touching the same file, just copy the old
+# touch step and add it to the end of the list.
+#
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
+
+# For example:
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
+#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
+#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
+
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
24 KeyboardChanger/Android.mk
@@ -0,0 +1,24 @@
+#
+# Copyright (C) 2008 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.
+#
+
+LOCAL_PATH := $(call my-dir)
+#LOCAL_MODULE_TAGS := optional
+
+include $(CLEAR_VARS)
+LOCAL_SRC_FILES := $(call all-subdir-java-files)
+LOCAL_PACKAGE_NAME := KeyboardChanger
+LOCAL_CERTIFICATE := platform
+include $(BUILD_PACKAGE)
18 KeyboardChanger/AndroidManifest.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="bin4ry.FreeXperia.KeyboardChanger"
+ android:versionCode="1"
+ android:versionName="1.0" android:installLocation="internalOnly">
+ <uses-sdk android:minSdkVersion="10" />
+
+ <application android:debuggable="true" android:icon="@drawable/icon" android:label="@string/app_name">
+ <activity android:name=".KeyboardChangerActivity"
+ android:label="@string/app_name">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+
+ </application>
+</manifest>
2  KeyboardChanger/README
@@ -0,0 +1,2 @@
+FreeXperia KeyboardChanger for Xperia Mini Pro / Xperia Pro
+Eclipse Project
BIN  KeyboardChanger/res/drawable-mdpi/icon.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
32 KeyboardChanger/res/layout/main.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent" android:layout_height="fill_parent">
+
+<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent" android:layout_height="fill_parent">
+ <TextView android:layout_height="wrap_content"
+ android:text="@string/header"
+ android:layout_width="wrap_content"
+ android:textSize="15sp"
+ android:paddingBottom="10dip">
+ </TextView>
+ <TextView android:text="@string/current"></TextView>
+ <TextView android:text="@string/qwertz" android:id="@+id/TVcurrent"></TextView>
+ <RadioButton android:text="@string/radio_button_1" android:id="@+id/rbqwertz"/>
+ <RadioButton android:text="@string/radio_button_2" android:id="@+id/rbqwertyen" />
+ <RadioButton android:text="@string/radio_button_3" android:id="@+id/rbazerty" />
+ <RadioButton android:text="@string/radio_button_4" android:id="@+id/rbqwertybr" />
+ <RadioButton android:text="@string/radio_button_5" android:id="@+id/rbqwertynodk" />
+ <RadioButton android:text="@string/radio_button_6" android:id="@+id/rbqwertysefi" />
+ <RadioButton android:text="@string/radio_button_7" android:id="@+id/rblatinonarabic" />
+ <RadioButton android:text="@string/radio_button_8" android:id="@+id/rblatinonarabicazerty" />
+ <RadioButton android:text="@string/radio_button_9" android:id="@+id/rblatinonbopomofo" />
+ <RadioButton android:text="@string/radio_button_10" android:id="@+id/rblatinoncyrillic" />
+ <RadioButton android:text="@string/radio_button_11" android:id="@+id/rblatinongreek" />
+ <RadioButton android:text="@string/radio_button_12" android:id="@+id/rblatinonhebrew" />
+ <RadioButton android:text="@string/radio_button_13" android:id="@+id/rblatinonkorean" />
+ <RadioButton android:text="@string/radio_button_14" android:id="@+id/rblatinonpinyin" />
+ <RadioButton android:text="@string/radio_button_15" android:id="@+id/rblatinonthai" />
+ <Button android:layout_height="wrap_content" android:id="@+id/button1" android:text="@string/button" android:layout_width="101dp"></Button>
+</RadioGroup>
+</ScrollView>
23 KeyboardChanger/res/values/strings.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">FreeXperia KeyboardChanger by Bin4ry</string>
+ <string name="header">Please choose your HW-Keyboard Layout:</string>
+ <string name="qwertz">qwertz</string>
+ <string name="radio_button_1">qwertz</string>
+ <string name="radio_button_2">qwerty-en</string>
+ <string name="radio_button_3">azerty</string>
+ <string name="radio_button_4">qwerty-br</string>
+ <string name="radio_button_5">qwerty-no-dk</string>
+ <string name="radio_button_6">qwerty-se-fi</string>
+ <string name="radio_button_7">latin-on-arabic</string>
+ <string name="radio_button_8">latin-on-arabic-azerty</string>
+ <string name="radio_button_9">latin-on-bopomofo</string>
+ <string name="radio_button_10">latin-on-cyrillic</string>
+ <string name="radio_button_11">latin-on-greek</string>
+ <string name="radio_button_12">latin-on-hebrew</string>
+ <string name="radio_button_13">latin-on-korean</string>
+ <string name="radio_button_14">latin-on-pinyin</string>
+ <string name="radio_button_15">latin-on-thai</string>
+ <string name="button">Save and Reboot</string>
+ <string name="current">Current Keyboard: </string>
+</resources>
249 KeyboardChanger/src/bin4ry/FreeXperia/KeyboardChanger/KeyboardChangerActivity.java
@@ -0,0 +1,249 @@
+package bin4ry.FreeXperia.KeyboardChanger;
+
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
+import java.io.DataOutputStream;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+
+import bin4ry.FreeXperia.KeyboardChanger.ShellCommand.CommandResult;
+
+import android.app.Activity;
+import android.os.Bundle;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.Button;
+import android.widget.RadioButton;
+import android.widget.TextView;
+
+public class KeyboardChangerActivity extends Activity {
+
+ TextView currentKey;
+ RadioButton qwertzRB;
+ RadioButton qwertyenRB;
+ RadioButton azertyRB;
+ RadioButton qwertybrRB;
+ RadioButton qwertynodkRB;
+ RadioButton qwertysefiRB;
+ RadioButton latinonarabicRB;
+ RadioButton latinonarabicazertyRB;
+ RadioButton latinonbopomofoRB;
+ RadioButton latinoncyrillicRB;
+ RadioButton latinongreekRB;
+ RadioButton latinonhebrewRB;
+ RadioButton latinonkoreanRB;
+ RadioButton latinonpinyinRB;
+ RadioButton latinonthaiRB;
+ TextView sampleTV;
+ String oldlayout;
+ String newlayout;
+ Process p;
+ DataOutputStream os;
+ ShellCommand cmd = new ShellCommand();
+
+
+ /** Called when the activity is first created. */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.main);
+
+ /*
+ * Find the views declared in main.xml.
+ */
+ currentKey = (TextView) findViewById(R.id.TVcurrent);
+ qwertzRB = (RadioButton) findViewById(R.id.rbqwertz);
+ qwertyenRB = (RadioButton) findViewById(R.id.rbqwertyen);
+ azertyRB = (RadioButton) findViewById(R.id.rbazerty);
+ qwertybrRB = (RadioButton) findViewById(R.id.rbqwertybr);
+ qwertynodkRB = (RadioButton) findViewById(R.id.rbqwertynodk);
+ qwertysefiRB = (RadioButton) findViewById(R.id.rbqwertysefi);
+ latinonarabicRB = (RadioButton) findViewById(R.id.rblatinonarabic);
+ latinonarabicazertyRB = (RadioButton) findViewById(R.id.rblatinonarabicazerty);
+ latinonbopomofoRB = (RadioButton) findViewById(R.id.rblatinonbopomofo);
+ latinoncyrillicRB = (RadioButton) findViewById(R.id.rblatinoncyrillic);
+ latinongreekRB = (RadioButton) findViewById(R.id.rblatinongreek);
+ latinonhebrewRB = (RadioButton) findViewById(R.id.rblatinonhebrew);
+ latinonkoreanRB = (RadioButton) findViewById(R.id.rblatinonkorean);
+ latinonpinyinRB = (RadioButton) findViewById(R.id.rblatinonpinyin);
+ latinonthaiRB = (RadioButton) findViewById(R.id.rblatinonthai);
+
+ /*
+ * Set a listener that will listen for clicks on the radio buttons and
+ * perform suitable actions.
+ */
+ qwertzRB.setOnClickListener(radio_listener);
+ qwertyenRB.setOnClickListener(radio_listener);
+ azertyRB.setOnClickListener(radio_listener);
+ qwertybrRB.setOnClickListener(radio_listener);
+ qwertynodkRB.setOnClickListener(radio_listener);
+ qwertysefiRB.setOnClickListener(radio_listener);
+ latinonarabicRB.setOnClickListener(radio_listener);
+ latinonarabicazertyRB.setOnClickListener(radio_listener);
+ latinonbopomofoRB.setOnClickListener(radio_listener);
+ latinoncyrillicRB.setOnClickListener(radio_listener);
+ latinongreekRB.setOnClickListener(radio_listener);
+ latinonhebrewRB.setOnClickListener(radio_listener);
+ latinonkoreanRB.setOnClickListener(radio_listener);
+ latinonpinyinRB.setOnClickListener(radio_listener);
+ latinonthaiRB.setOnClickListener(radio_listener);
+
+ Process r;
+ try {
+ String[] cmd = {
+ "/system/bin/sh",
+ "-c",
+ "cat /system/usr/keyboard-config/keyprint.xml | grep latin | awk '{print $3}' | sed -e 's/keylayout=\"//g' | sed -e 's/\"\\/>//g'"
+ };
+ r = Runtime.getRuntime().exec(cmd);
+ BufferedReader in = new BufferedReader(new
+ InputStreamReader(r.getInputStream()));
+ try {
+ oldlayout = in.readLine();
+ currentKey.setText(oldlayout);
+ } catch (IOException e) {}
+ } catch (IOException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ setActiveButton(oldlayout);
+ cmd.su.run("busybox mount -o remount,rw /dev/block/mtdblock0 /system");
+
+ final Button button = (Button) findViewById(R.id.button1);
+ button.setOnClickListener(new View.OnClickListener() {
+ public void onClick(View v) {
+ cmd.su.run("sed -i 's/" + oldlayout + "/" + newlayout + "/g' /system/usr/keyboard-config/keyprint.xml");
+ try {
+ Thread.sleep(500);
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ cmd.su.run("busybox mount -o remount,r0 /dev/block/mtdblock0 /system");
+ try {
+ Thread.sleep(500);
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ cmd.su.run("reboot");
+ }
+ });
+ }
+
+ private void setActiveButton (String s){
+ if (s.equals("qwertz")) {
+ qwertzRB.toggle();
+ };
+ if (s.equals("qwerty-en")) {
+ qwertyenRB.toggle();
+ };
+ if (s.equals("azerty")) {
+ azertyRB.toggle();
+ };
+ if (s.equals("qwerty-br")) {
+ qwertybrRB.toggle();
+ };
+ if (s.equals("qwerty-no-dk")) {
+ qwertynodkRB.toggle();
+ };
+ if (s.equals("qwerty-se-fi")) {
+ qwertysefiRB.toggle();
+ };
+ if (s.equals("latin-on-arabic")) {
+ latinonarabicRB.toggle();
+ };
+ if (s.equals("latin-on-arabic-azerty")) {
+ latinonarabicazertyRB.toggle();
+ };
+ if (s.equals("latin-on-bopomofo")) {
+ latinonbopomofoRB.toggle();
+ };
+ if (s.equals("latin-on-cyrillic")) {
+ latinoncyrillicRB.toggle();
+ };
+ if (s.equals("latin-on-greek")) {
+ latinongreekRB.toggle();
+ };
+ if (s.equals("latin-on-hebrew")) {
+ latinonhebrewRB.toggle();
+ };
+ if (s.equals("latin-on-korean")) {
+ latinonkoreanRB.toggle();
+ };
+ if (s.equals("latin-on-pinyin")) {
+ latinonpinyinRB.toggle();
+ };
+ if (s.equals("latin-on-thai")) {
+ latinonthaiRB.toggle();
+ };
+ }
+
+
+ /*
+ * Define a OnClickListener that will change the size of the sample text
+ * depending on which of the radio button that has been clicked.
+ */
+ private OnClickListener radio_listener = new OnClickListener() {
+ public void onClick(View v) {
+ ShellCommand cmd = new ShellCommand();
+ switch (v.getId()) {
+ case R.id.rbqwertz:
+ newlayout = "qwertz";
+ break;
+ case R.id.rbqwertyen:
+ newlayout = "qwerty-en";
+ break;
+ case R.id.rbazerty:
+ newlayout = "azerty";
+ break;
+ case R.id.rbqwertybr:
+ newlayout = "qwerty-br";
+ break;
+ case R.id.rbqwertynodk:
+ newlayout = "qwerty-no-dk";
+ break;
+ case R.id.rbqwertysefi:
+ newlayout = "qwerty-se-fi";
+ break;
+ case R.id.rblatinonarabic:
+ newlayout = "latin-on-arabic";
+ break;
+ case R.id.rblatinonarabicazerty:
+ newlayout = "latin-on-arabic-azerty";
+ break;
+ case R.id.rblatinonbopomofo:
+ newlayout = "latin-on-bopomofo";
+ break;
+ case R.id.rblatinoncyrillic:
+ newlayout = "latin-on-cyrillic";
+ break;
+ case R.id.rblatinongreek:
+ newlayout = "latin-on-greek";
+ break;
+ case R.id.rblatinonhebrew:
+ newlayout = "latin-on-hebrew";
+ break;
+ case R.id.rblatinonkorean:
+ newlayout = "latin-on-korean";
+ break;
+ case R.id.rblatinonpinyin:
+ newlayout = "latin-on-pinyin";
+ break;
+ case R.id.rblatinonthai:
+ newlayout = "latin-on-thai";
+ break;
+ default:
+ }
+ }
+ };
+}
130 KeyboardChanger/src/bin4ry/FreeXperia/KeyboardChanger/ShellCommand.java
@@ -0,0 +1,130 @@
+/*
+ * Thanks to kevin@TeslaCoil from XDA for this :)
+*/
+package bin4ry.FreeXperia.KeyboardChanger;
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
+import java.io.InputStream;
+
+import android.util.Log;
+
+public class ShellCommand {
+ private static final String TAG = "ShellCommand.java";
+ private Boolean can_su;
+
+ public SH sh;
+ public SH su;
+
+ public ShellCommand() {
+ sh = new SH("sh");
+ su = new SH("su");
+ }
+
+ public boolean canSU() {
+ return canSU(false);
+ }
+
+ public boolean canSU(boolean force_check) {
+ if (can_su == null || force_check) {
+ CommandResult r = su.runWaitFor("id");
+ StringBuilder out = new StringBuilder();
+
+ if (r.stdout != null)
+ out.append(r.stdout).append(" ; ");
+ if (r.stderr != null)
+ out.append(r.stderr);
+
+ Log.v(TAG, "canSU() su[" + r.exit_value + "]: " + out);
+ can_su = r.success();
+ }
+ return can_su;
+ }
+
+ public SH suOrSH() {
+ return canSU() ? su : sh;
+ }
+
+ public class CommandResult {
+ public final String stdout;
+ public final String stderr;
+ public final Integer exit_value;
+
+ CommandResult(Integer exit_value_in, String stdout_in, String stderr_in)
+ {
+ exit_value = exit_value_in;
+ stdout = stdout_in;
+ stderr = stderr_in;
+ }
+
+ CommandResult(Integer exit_value_in) {
+ this(exit_value_in, null, null);
+ }
+
+ public boolean success() {
+ return exit_value != null && exit_value == 0;
+ }
+ }
+
+ public class SH {
+ private String SHELL = "sh";
+
+ public SH(String SHELL_in) {
+ SHELL = SHELL_in;
+ }
+
+ public Process run(String s) {
+ Process process = null;
+ try {
+ process = Runtime.getRuntime().exec(SHELL);
+ DataOutputStream toProcess = new DataOutputStream(process.getOutputStream());
+ toProcess.writeBytes("exec " + s + "\n");
+ toProcess.flush();
+ } catch(Exception e) {
+ Log.e(TAG, "Exception while trying to run: '" + s + "' " + e.getMessage());
+ process = null;
+ }
+ return process;
+ }
+
+ private String getStreamLines(InputStream is) {
+ String out = null;
+ StringBuffer buffer = null;
+ DataInputStream dis = new DataInputStream(is);
+
+ try {
+ if (dis.available() > 0) {
+ buffer = new StringBuffer(dis.readLine());
+ while(dis.available() > 0)
+ buffer.append("\n").append(dis.readLine());
+ }
+ dis.close();
+ } catch (Exception ex) {
+ Log.e(TAG, ex.getMessage());
+ }
+ if (buffer != null)
+ out = buffer.toString();
+ return out;
+ }
+
+ public CommandResult runWaitFor(String s) {
+ Process process = run(s);
+ Integer exit_value = null;
+ String stdout = null;
+ String stderr = null;
+ if (process != null) {
+ try {
+ exit_value = process.waitFor();
+
+ stdout = getStreamLines(process.getInputStream());
+ stderr = getStreamLines(process.getErrorStream());
+
+ } catch(InterruptedException e) {
+ Log.e(TAG, "runWaitFor " + e.toString());
+ } catch(NullPointerException e) {
+ Log.e(TAG, "runWaitFor " + e.toString());
+ }
+ }
+ return new CommandResult(exit_value, stdout, stderr);
+ }
+ }
+}
0  README
No changes.
87 device_iyokan.mk
@@ -0,0 +1,87 @@
+$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
+$(call inherit-product, device/common/gps/gps_eu_supl.mk)
+
+# proprietary side of the device
+$(call inherit-product-if-exists, vendor/semc/iyokan/iyokan-vendor.mk)
+
+
+# Discard inherited values and use our own instead.
+PRODUCT_NAME := iyokan
+PRODUCT_DEVICE := iyokan
+PRODUCT_MODEL := iyokan
+
+ifeq ($(TARGET_PREBUILT_KERNEL),)
+LOCAL_KERNEL := device/semc/iyokan/kernel
+else
+LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
+endif
+
+-include device/semc/mogami-common/mogami.mk
+
+USE_CAMERA_STUB:=true
+
+PRODUCT_COPY_FILES += \
+ $(LOCAL_KERNEL):kernel
+
+DISABLE_DEXPREOPT := false
+
+# These is the hardware-specific overlay, which points to the location
+# of hardware-specific resource overrides, typically the frameworks and
+# application settings that are stored in resourced.
+DEVICE_PACKAGE_OVERLAYS += device/semc/iyokan/overlay
+
+PRODUCT_PACKAGES += KeyboardChanger
+
+# These are the hardware-specific configuration files
+PRODUCT_COPY_FILES += \
+ device/semc/iyokan/prebuilt/media_profiles.xml:system/etc/media_profiles.xml
+
+# Init files
+PRODUCT_COPY_FILES += \
+ device/semc/iyokan/prebuilt/hw_config.sh:system/etc/hw_config.sh \
+ device/semc/msm7x30-common/prebuilt/logo_H.rle:root/logo.rle \
+ device/semc/iyokan/prebuilt/bootrec:root/sbin/bootrec \
+ device/semc/iyokan/recovery.fstab:root/recovery.fstab
+
+# iyokan uses MDPI artwork where available
+PRODUCT_LOCALES += hdpi
+
+#Offline charging animation
+PRODUCT_COPY_FILES += \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_01_H.png:system/semc/chargemon/data/charging_animation_01.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_02_H.png:system/semc/chargemon/data/charging_animation_02.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_03_H.png:system/semc/chargemon/data/charging_animation_03.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_04_H.png:system/semc/chargemon/data/charging_animation_04.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_05_H.png:system/semc/chargemon/data/charging_animation_05.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_06_H.png:system/semc/chargemon/data/charging_animation_06.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_07_H.png:system/semc/chargemon/data/charging_animation_07.png \
+ device/semc/msm7x30-common/prebuilt/animations/charging_animation_blank_H.png:system/semc/chargemon/data/charging_animation_blank.png
+
+PRODUCT_PROPERTY_OVERRIDES += \
+ rild.libpath=/system/lib/libril-qc-1.so \
+ rild.libargs=-d/dev/smd0 \
+ ro.ril.hsxpa=1 \
+ ro.ril.gprsclass=10 \
+ ro.telephony.default_network=0 \
+ ro.telephony.call_ring.multiple=false \
+ ro.telephony.ril_class=semc \
+ wifi.interface=tiwlan0 \
+ wifi.supplicant_scan_interval=15 \
+ ro.sf.lcd_density=240 \
+ keyguard.no_require_sim=true \
+ ro.com.google.locationfeatures=1 \
+ dalvik.vm.dexopt-flags=m=y \
+ dalvik.vm.heapsize=32m \
+ dalvik.vm.dexopt-data-only=1 \
+ dalvik.vm.lockprof.threshold=500 \
+ dalvik.vm.execution-mode=int:jit \
+ dalvik.vm.checkjni=false \
+ ro.opengles.version=131072 \
+ ro.compcache.default=0 \
+ ro.product.locale.language=en \
+ ro.product.locale.region=US \
+ persist.ro.ril.sms_sync_sending=1 \
+ ro.use_data_netmgrd=true \
+ wifi.hotspot.ti=1\
+ BUILD_UTC_DATE=0
221 extract-files.sh
@@ -0,0 +1,221 @@
+#!/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.
+
+VENDOR=semc
+DEVICE=iyokan
+
+rm -r ../../../vendor/$VENDOR/$DEVICE
+mkdir -p ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+# Prebuilt kl keymaps
+adb pull /system/usr/keychars/qwerty.kcm.bin ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keychars/qwerty.kcm.bin ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keychars/qwerty2.kcm.bin ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/atdaemon.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/AVRCP.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/msm_pmic_pwr_key.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/pm8058-keypad.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/qwerty.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keylayout/simple_remote.kl ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+## RIL related stuff
+adb pull /system/lib/libril.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/port-bridge ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/qmuxd ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libauth.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcm.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdiag.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdll.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdsm.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdss.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libgsdi_exp.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libgstk_exp.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libmmgsdilib.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libnv.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/liboem_rapi.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/liboncrpc.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libpbmlib.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libqmi.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libqueue.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libuim.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libreference-ril.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libril-qc-1.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libwms.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libwmsts.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdsi_netctrl.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libdsutils.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libidl.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libnetmgr.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libqdp.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/netmgrd ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+## Adreno 200 files
+adb pull /system/lib/libgsl.so ../../../vendor/$VENDOR/$DEVICE/proprietary/libgsl.so
+adb pull /system/lib/egl/libGLESv1_CM_adreno200.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/egl/libq3dtools_adreno200.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/egl/libEGL_adreno200.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/egl/libGLESv2_adreno200.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+## Camera proprietaries
+adb pull /system/lib/liboemcamera.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libmmjpeg.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libmmipl.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcamera.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_client.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_debugger.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_hal.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_imageutil.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_pal.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcald_server.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libface.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libgemini.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcameraextensionclient.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcameraextensionjni.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcameraextensionservice.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libcameralight.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN1.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN1.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN0.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN0_IMX073.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN0_IMX105.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LM3560_02_flash.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN0_DW9714.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN1_DW9714.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/APT00YP0_MT9V144.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/APT00YP0.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN1_IMX105.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/SOD08BN0_DW9714.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN1_DW9714.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN0.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/semc/camera/LGI08BN1_IMX105.dat ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+## FIRMWARE
+adb pull /system/etc/firmware/bq27520_fw-0506_filever-0111_proj-hall_golden.bqfs ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/bq27520_fw-0506_filever-0111_proj-hall_golden.dffs ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fm_rx_init_1273.1.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fm_rx_init_1273.2.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fm_tx_init_1273.1.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fm_tx_init_1273.2.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fmc_init_1273.1.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/fmc_init_1273.2.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/TIInit_7.5.20.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/TIInit_7.6.15.bts ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_command_control.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_h263_dec_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_h264_dec_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_h264_enc_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_mp4_dec_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_mp4_enc_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/vidc_720p_vc1_dec_mc.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/yamato_pfp.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/firmware/yamato_pm4.fw ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+
+## WIFI & BT TI1271
+adb pull /system/bin/nvimport ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/hciattach ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/init.qcom.bt.sh ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/tiwlan.ini ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/wifi/wpa_supplicant.conf ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/wifi/softap/hostapd.conf ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/tiwlan_firmware.bin ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/wifi/softap/tiwlan_ap.ini ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/wifi/softap/softap_firmware.bin ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+## Other libraries and proprietary binaries
+adb pull /system/lib/libaudioalsa.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libaudioalsa.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/vold.fstab ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/etc/sensors.conf ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/hw/sensors.default.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/bq275xx_fwloader ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/akmd8975 ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/bin/chargemon ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/lib/libmiscta.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+#Temporary GPS Fix untill we have 50001 gps
+adb pull /system/lib/hw/gps.msm7x30.so ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+#touch
+adb pull /system/etc/firmware/touch_iyokan_ttsp.hex ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+#hardware keyboard layout
+adb pull /system/usr/keyboard-config/keyprint.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/scancode_mapping.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ara.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_bos.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_bul.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_cat.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ces.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_dan.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_deu.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ell.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_eng.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_esp.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_est.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_eus.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_fas.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_fin.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_fra.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_glg.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_heb.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_hrv.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_hun.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ind.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_isl.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ita.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_jav.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_kaz.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_lav.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_lit.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_mkd.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_msa.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_nld.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_nor.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_pol.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_por.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ron.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_rus.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_slk.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_slv.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_sqi.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_srp.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_sun.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_swe.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_tgl.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_tha.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_tur.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_ukr.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/languages/language_vie.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/arabic.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/azerty.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/bopomofo.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/cyrillic.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/greek.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/hebrew.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/korean.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-br.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-cn-hk.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-en.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-jp.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-no-dk.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwerty-se-fi.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/qwertz.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+adb pull /system/usr/keyboard-config/layouts/thai.xml ../../../vendor/$VENDOR/$DEVICE/proprietary
+
+
+./setup-makefiles.sh
+
54 include/linux/ashmem.h
@@ -0,0 +1,54 @@
+/*
+ * include/linux/ashmem.h
+ *
+ * Copyright 2008 Google Inc.
+ * Author: Robert Love
+ *
+ * This file is dual licensed. It may be redistributed and/or modified
+ * under the terms of the Apache 2.0 License OR version 2 of the GNU
+ * General Public License.
+ */
+
+#ifndef _LINUX_ASHMEM_H
+#define _LINUX_ASHMEM_H
+
+#include <linux/limits.h>
+#include <linux/ioctl.h>
+
+#define ASHMEM_NAME_LEN 256
+
+#define ASHMEM_NAME_DEF "dev/ashmem"
+
+/* Return values from ASHMEM_PIN: Was the mapping purged while unpinned? */
+#define ASHMEM_NOT_PURGED 0
+#define ASHMEM_WAS_PURGED 1
+
+/* Return values from ASHMEM_GET_PIN_STATUS: Is the mapping pinned? */
+#define ASHMEM_IS_UNPINNED 0
+#define ASHMEM_IS_PINNED 1
+
+struct ashmem_pin {
+ __u32 offset; /* offset into region, in bytes, page-aligned */
+ __u32 len; /* length forward from offset, in bytes, page-aligned */
+};
+
+#define __ASHMEMIOC 0x77
+
+#define ASHMEM_SET_NAME _IOW(__ASHMEMIOC, 1, char[ASHMEM_NAME_LEN])
+#define ASHMEM_GET_NAME _IOR(__ASHMEMIOC, 2, char[ASHMEM_NAME_LEN])
+#define ASHMEM_SET_SIZE _IOW(__ASHMEMIOC, 3, size_t)
+#define ASHMEM_GET_SIZE _IO(__ASHMEMIOC, 4)
+#define ASHMEM_SET_PROT_MASK _IOW(__ASHMEMIOC, 5, unsigned long)
+#define ASHMEM_GET_PROT_MASK _IO(__ASHMEMIOC, 6)
+#define ASHMEM_PIN _IOW(__ASHMEMIOC, 7, struct ashmem_pin)
+#define ASHMEM_UNPIN _IOW(__ASHMEMIOC, 8, struct ashmem_pin)
+#define ASHMEM_GET_PIN_STATUS _IO(__ASHMEMIOC, 9)
+#define ASHMEM_PURGE_ALL_CACHES _IO(__ASHMEMIOC, 10)
+#define ASHMEM_CACHE_FLUSH_RANGE _IO(__ASHMEMIOC, 11)
+#define ASHMEM_CACHE_CLEAN_RANGE _IO(__ASHMEMIOC, 12)
+
+int get_ashmem_file(int fd, struct file **filp, struct file **vm_file,
+ unsigned long *len);
+void put_ashmem_file(struct file *file);
+
+#endif /* _LINUX_ASHMEM_H */
354 include/linux/msm_audio_7x30.h
@@ -0,0 +1,354 @@
+/* include/linux/msm_audio.h
+ *
+ * Copyright (C) 2008 Google, Inc.
+ * Copyright (c) 2009-2010, Code Aurora Forum. All rights reserved.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ */
+
+#ifndef __LINUX_MSM_AUDIO_H
+#define __LINUX_MSM_AUDIO_H
+
+#include <linux/types.h>
+#include <linux/ioctl.h>
+
+/* PCM Audio */
+
+#define AUDIO_IOCTL_MAGIC 'a'
+
+#define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned)
+#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned)
+#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned)
+#define AUDIO_GET_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, unsigned)
+#define AUDIO_SET_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 4, unsigned)
+#define AUDIO_GET_STATS _IOR(AUDIO_IOCTL_MAGIC, 5, unsigned)
+#define AUDIO_ENABLE_AUDPP _IOW(AUDIO_IOCTL_MAGIC, 6, unsigned)
+#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned)
+#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned)
+#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned)
+#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned)
+#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
+#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
+#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, unsigned)
+#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
+#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned)
+#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned)
+#define AUDIO_ASYNC_WRITE _IOW(AUDIO_IOCTL_MAGIC, 17, unsigned)
+#define AUDIO_ASYNC_READ _IOW(AUDIO_IOCTL_MAGIC, 18, unsigned)
+#define AUDIO_SET_INCALL _IOW(AUDIO_IOCTL_MAGIC, 19, struct msm_voicerec_mode)
+#define AUDIO_GET_NUM_SND_DEVICE _IOR(AUDIO_IOCTL_MAGIC, 20, unsigned)
+#define AUDIO_GET_SND_DEVICES _IOWR(AUDIO_IOCTL_MAGIC, 21, \
+ struct msm_snd_device_list)
+#define AUDIO_ENABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 22, unsigned)
+#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned)
+#define AUDIO_ROUTE_STREAM _IOW(AUDIO_IOCTL_MAGIC, 24, \
+ struct msm_audio_route_config)
+#define AUDIO_GET_PCM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 30, unsigned)
+#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned)
+#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned)
+#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned)
+#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned)
+#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned)
+#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned)
+#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned)
+#define AUDIO_OUTPORT_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 40, unsigned short)
+#define AUDIO_SET_ERR_THRESHOLD_VALUE _IOW(AUDIO_IOCTL_MAGIC, 41, \
+ unsigned short)
+#define AUDIO_GET_BITSTREAM_ERROR_INFO _IOR(AUDIO_IOCTL_MAGIC, 42, \
+ struct msm_audio_bitstream_error_info)
+/* Qualcomm extensions */
+#define AUDIO_SET_STREAM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 80, \
+ struct msm_audio_stream_config)
+#define AUDIO_GET_STREAM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 81, \
+ struct msm_audio_stream_config)
+#define AUDIO_GET_SESSION_ID _IOR(AUDIO_IOCTL_MAGIC, 82, unsigned short)
+#define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 83, \
+ struct msm_audio_bitstream_info)
+#define AUDIO_SET_PAN _IOW(AUDIO_IOCTL_MAGIC, 84, unsigned)
+#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned)
+#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned)
+#define AUDIO_SET_VOLUME_PATH _IOW(AUDIO_IOCTL_MAGIC, 87, \
+ struct msm_vol_info)
+#define AUDIO_SET_MAX_VOL_ALL _IOW(AUDIO_IOCTL_MAGIC, 88, unsigned)
+#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned)
+#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned)
+#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned)
+#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned)
+#define AUDIO_GET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 93, \
+ struct msm_audio_buf_cfg)
+#define AUDIO_SET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 94, \
+ struct msm_audio_buf_cfg)
+#define AUDIO_SET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 95, \
+ struct msm_acdb_cmd_device)
+#define AUDIO_GET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 96, \
+ struct msm_acdb_cmd_device)
+
+#define AUDIO_MAX_COMMON_IOCTL_NUM 100
+
+
+#define HANDSET_MIC 0x01
+#define HANDSET_SPKR 0x02
+#define HEADSET_MIC 0x03
+#define HEADSET_SPKR_MONO 0x04
+#define HEADSET_SPKR_STEREO 0x05
+#define SPKR_PHONE_MIC 0x06
+#define SPKR_PHONE_MONO 0x07
+#define SPKR_PHONE_STEREO 0x08
+#define BT_SCO_MIC 0x09
+#define BT_SCO_SPKR 0x0A
+#define BT_A2DP_SPKR 0x0B
+#define TTY_HEADSET_MIC 0x0C
+#define TTY_HEADSET_SPKR 0x0D
+
+/* Default devices are not supported in a */
+/* device switching context. Only supported */
+/* for stream devices. */
+/* DO NOT USE */
+#define DEFAULT_TX 0x0E
+#define DEFAULT_RX 0x0F
+
+#define BT_A2DP_TX 0x10
+
+#define HEADSET_MONO_PLUS_SPKR_MONO_RX 0x11
+#define HEADSET_MONO_PLUS_SPKR_STEREO_RX 0x12
+#define HEADSET_STEREO_PLUS_SPKR_MONO_RX 0x13
+#define HEADSET_STEREO_PLUS_SPKR_STEREO_RX 0x14
+
+#define I2S_RX 0x20
+#define I2S_TX 0x21
+
+#define ADRC_ENABLE 0x0001
+#define EQ_ENABLE 0x0002
+#define IIR_ENABLE 0x0004
+#define QCONCERT_PLUS_ENABLE 0x0008
+#define MBADRC_ENABLE 0x0010
+
+#define AGC_ENABLE 0x0001
+#define NS_ENABLE 0x0002
+#define TX_IIR_ENABLE 0x0004
+#define FLUENCE_ENABLE 0x0008
+
+#define VOC_REC_UPLINK 0x00
+#define VOC_REC_DOWNLINK 0x01
+#define VOC_REC_BOTH 0x02
+
+struct msm_audio_config {
+ uint32_t buffer_size;
+ uint32_t buffer_count;
+ uint32_t channel_count;
+ uint32_t sample_rate;
+ uint32_t type;
+ uint32_t meta_field;
+ uint32_t bits;
+ uint32_t unused[3];
+};
+
+struct msm_audio_stream_config {
+ uint32_t buffer_size;
+ uint32_t buffer_count;
+};
+
+struct msm_audio_buf_cfg{
+ uint32_t meta_info_enable;
+ uint32_t frames_per_buf;
+};
+
+struct msm_audio_stats {
+ uint32_t byte_count;
+ uint32_t sample_count;
+ uint32_t unused[2];
+};
+
+struct msm_audio_pmem_info {
+ int fd;
+ void *vaddr;
+};
+
+struct msm_audio_aio_buf {
+ void *buf_addr;
+ uint32_t buf_len;
+ uint32_t data_len;
+ void *private_data;
+ unsigned short mfield_sz; /*only useful for data has meta field */
+};
+
+/* Audio routing */
+
+#define SND_IOCTL_MAGIC 's'
+
+#define SND_MUTE_UNMUTED 0
+#define SND_MUTE_MUTED 1
+
+struct msm_mute_info {
+ uint32_t mute;
+ uint32_t path;
+};
+
+struct msm_vol_info {
+ uint32_t vol;
+ uint32_t path;
+};
+
+struct msm_voicerec_mode {
+ uint32_t rec_mode;
+};
+
+struct msm_snd_device_config {
+ uint32_t device;
+ uint32_t ear_mute;
+ uint32_t mic_mute;
+};
+
+#define SND_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_device_config *)
+
+#define SND_METHOD_VOICE 0
+
+struct msm_snd_volume_config {
+ uint32_t device;
+ uint32_t method;
+ uint32_t volume;
+};
+
+#define SND_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_snd_volume_config *)
+
+/* Returns the number of SND endpoints supported. */
+
+#define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
+
+struct msm_snd_endpoint {
+ int id; /* input and output */
+ char name[64]; /* output only */
+};
+
+/* Takes an index between 0 and one less than the number returned by
+ * SND_GET_NUM_ENDPOINTS, and returns the SND index and name of a
+ * SND endpoint. On input, the .id field contains the number of the
+ * endpoint, and on exit it contains the SND index, while .name contains
+ * the description of the endpoint.
+ */
+
+#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
+
+
+#define SND_AVC_CTL _IOW(SND_IOCTL_MAGIC, 6, unsigned *)
+#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned *)
+
+struct msm_audio_pcm_config {
+ uint32_t pcm_feedback; /* 0 - disable > 0 - enable */
+ uint32_t buffer_count; /* Number of buffers to allocate */
+ uint32_t buffer_size; /* Size of buffer for capturing of
+ PCM samples */
+};
+
+#define AUDIO_EVENT_SUSPEND 0
+#define AUDIO_EVENT_RESUME 1
+#define AUDIO_EVENT_WRITE_DONE 2
+#define AUDIO_EVENT_READ_DONE 3
+#define AUDIO_EVENT_STREAM_INFO 4
+#define AUDIO_EVENT_BITSTREAM_ERROR_INFO 5
+
+#define AUDIO_CODEC_TYPE_MP3 0
+#define AUDIO_CODEC_TYPE_AAC 1
+
+struct msm_audio_bitstream_info {
+ uint32_t codec_type;
+ uint32_t chan_info;
+ uint32_t sample_rate;
+ uint32_t bit_stream_info;
+ uint32_t bit_rate;
+ uint32_t unused[3];
+};
+
+struct msm_audio_bitstream_error_info {
+ uint32_t dec_id;
+ uint32_t err_msg_indicator;
+ uint32_t err_type;
+};
+
+union msm_audio_event_payload {
+ struct msm_audio_aio_buf aio_buf;
+ struct msm_audio_bitstream_info stream_info;
+ struct msm_audio_bitstream_error_info error_info;
+ int reserved;
+};
+
+struct msm_audio_event {
+ int event_type;
+ int timeout_ms;
+ union msm_audio_event_payload event_payload;
+};
+
+#define MSM_SNDDEV_CAP_RX 0x1
+#define MSM_SNDDEV_CAP_TX 0x2
+#define MSM_SNDDEV_CAP_VOICE 0x4
+
+struct msm_snd_device_info {
+ uint32_t dev_id;
+ uint32_t dev_cap; /* bitmask describe capability of device */
+ char dev_name[64];
+};
+
+struct msm_snd_device_list {
+ uint32_t num_dev; /* Indicate number of device info to be retrieved */
+ struct msm_snd_device_info *list;
+};
+
+struct msm_dtmf_config {
+ uint16_t path;
+ uint16_t dtmf_hi;
+ uint16_t dtmf_low;
+ uint16_t duration;
+ uint16_t tx_gain;
+ uint16_t rx_gain;
+ uint16_t mixing;
+};
+
+#define AUDIO_ROUTE_STREAM_VOICE_RX 0
+#define AUDIO_ROUTE_STREAM_VOICE_TX 1
+#define AUDIO_ROUTE_STREAM_PLAYBACK 2
+#define AUDIO_ROUTE_STREAM_REC 3
+
+struct msm_audio_route_config {
+ uint32_t stream_type;
+ uint32_t stream_id;
+ uint32_t dev_id;
+};
+
+#define AUDIO_MAX_EQ_BANDS 12
+
+struct msm_audio_eq_band {
+ uint16_t band_idx; /* The band index, 0 .. 11 */
+ uint32_t filter_type; /* Filter band type */
+ uint32_t center_freq_hz; /* Filter band center frequency */
+ uint32_t filter_gain; /* Filter band initial gain (dB) */
+ /* Range is +12 dB to -12 dB with 1dB increments. */
+ uint32_t q_factor;
+} __attribute__ ((packed));
+
+struct msm_audio_eq_stream_config {
+ uint32_t enable; /* Number of consequtive bands specified */
+ uint32_t num_bands;
+ struct msm_audio_eq_band eq_bands[AUDIO_MAX_EQ_BANDS];
+} __attribute__ ((packed));
+
+struct msm_acdb_cmd_device {
+ uint32_t command_id;
+ uint32_t device_id;
+ uint32_t network_id;
+ uint32_t sample_rate_id; /* Actual sample rate value */
+ uint32_t interface_id; /* See interface id's above */
+ uint32_t algorithm_block_id; /* See enumerations above */
+ uint32_t total_bytes; /* Length in bytes used by buffer */
+ uint32_t *phys_buf; /* Physical Address of data */
+};
+
+
+#endif
89 include/linux/msm_audio_aac.h
@@ -0,0 +1,89 @@
+/* arch/arm/mach-msm/include/mach/msm_audio_aac.h
+ *
+ * Copyright (c) 2009, Code Aurora Forum. All rights reserved.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * See the GNU General Public License for more details.
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, you can find it at http://www.fsf.org.
+ *
+ */
+
+#ifndef __MSM_AUDIO_AAC_H
+#define __MSM_AUDIO_AAC_H
+
+#include <linux/msm_audio.h>
+
+#define AUDIO_SET_AAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
+#define AUDIO_GET_AAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
+
+#define AUDIO_SET_AAC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_aac_enc_config)
+
+#define AUDIO_GET_AAC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+4), struct msm_audio_aac_enc_config)
+
+#define AUDIO_AAC_FORMAT_ADTS -1
+#define AUDIO_AAC_FORMAT_RAW 0x0000
+#define AUDIO_AAC_FORMAT_PSUEDO_RAW 0x0001
+#define AUDIO_AAC_FORMAT_LOAS 0x0002
+
+#define AUDIO_AAC_OBJECT_LC 0x0002
+#define AUDIO_AAC_OBJECT_LTP 0x0004
+#define AUDIO_AAC_OBJECT_ERLC 0x0011
+#define AUDIO_AAC_OBJECT_BSAC 0x0016
+
+#define AUDIO_AAC_SEC_DATA_RES_ON 0x0001
+#define AUDIO_AAC_SEC_DATA_RES_OFF 0x0000
+
+#define AUDIO_AAC_SCA_DATA_RES_ON 0x0001
+#define AUDIO_AAC_SCA_DATA_RES_OFF 0x0000
+
+#define AUDIO_AAC_SPEC_DATA_RES_ON 0x0001
+#define AUDIO_AAC_SPEC_DATA_RES_OFF 0x0000
+
+#define AUDIO_AAC_SBR_ON_FLAG_ON 0x0001
+#define AUDIO_AAC_SBR_ON_FLAG_OFF 0x0000
+
+#define AUDIO_AAC_SBR_PS_ON_FLAG_ON 0x0001
+#define AUDIO_AAC_SBR_PS_ON_FLAG_OFF 0x0000
+
+/* Primary channel on both left and right channels */
+#define AUDIO_AAC_DUAL_MONO_PL_PR 0
+/* Secondary channel on both left and right channels */
+#define AUDIO_AAC_DUAL_MONO_SL_SR 1
+/* Primary channel on right channel and 2nd on left channel */
+#define AUDIO_AAC_DUAL_MONO_SL_PR 2
+/* 2nd channel on right channel and primary on left channel */
+#define AUDIO_AAC_DUAL_MONO_PL_SR 3
+
+struct msm_audio_aac_config {
+ signed short format;
+ unsigned short audio_object;
+ unsigned short ep_config; /* 0 ~ 3 useful only obj = ERLC */
+ unsigned short aac_section_data_resilience_flag;
+ unsigned short aac_scalefactor_data_resilience_flag;
+ unsigned short aac_spectral_data_resilience_flag;
+ unsigned short sbr_on_flag;
+ unsigned short sbr_ps_on_flag;
+ unsigned short dual_mono_mode;
+ unsigned short channel_configuration;
+};
+
+struct msm_audio_aac_enc_config {
+ uint32_t channels;
+ uint32_t sample_rate;
+ uint32_t bit_rate;
+ uint32_t stream_format;
+};
+
+#endif /* __MSM_AUDIO_AAC_H */
51 include/linux/msm_audio_amrnb.h
@@ -0,0 +1,51 @@
+/* arch/arm/mach-msm/include/mach/msm_audio_amrnb.h
+ *
+ * Copyright (c) 2009, Code Aurora Forum. All rights reserved.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * See the GNU General Public License for more details.
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, you can find it at http://www.fsf.org.
+ *
+ */
+
+#ifndef __MSM_AUDIO_AMRNB_H
+#define __MSM_AUDIO_AMRNB_H
+
+#include <linux/msm_audio.h>
+
+#define AUDIO_GET_AMRNB_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
+#define AUDIO_SET_AMRNB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
+#define AUDIO_GET_AMRNB_ENC_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+2), \
+ struct msm_audio_amrnb_enc_config_v2)
+#define AUDIO_SET_AMRNB_ENC_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, \
+ (AUDIO_MAX_COMMON_IOCTL_NUM+3), \
+ struct msm_audio_amrnb_enc_config_v2)
+
+struct msm_audio_amrnb_enc_config {
+ unsigned short voicememoencweight1;
+ unsigned short voicememoencweight2;
+ unsigned short voicememoencweight3;
+ unsigned short voicememoencweight4;
+ unsigned short dtx_mode_enable; /* 0xFFFF - enable, 0- disable */
+ unsigned short test_mode_enable; /* 0xFFFF - enable, 0- disable */
+ unsigned short enc_mode; /* 0-MR475,1-MR515,2-MR59,3-MR67,4-MR74
+ 5-MR795, 6- MR102, 7- MR122(default) */
+};
+
+struct msm_audio_amrnb_enc_config_v2 {
+ uint32_t band_mode;
+ uint32_t dtx_enable;
+ uint32_t frame_format;
+};
+#endif /* __MSM_AUDIO_AMRNB_H */
66 include/linux/msm_audio_qcp.h
@@ -0,0 +1,66 @@
+/* Copyright (c) 2009, Code Aurora Forum. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials provided
+ * with the distribution.
+ * * Neither the name of Code Aurora Forum, Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef __MSM_AUDIO_QCP_H
+#define __MSM_AUDIO_QCP_H
+
+#include <linux/msm_audio.h>
+
+#define AUDIO_SET_QCELP_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
+ 0, struct msm_audio_qcelp_enc_config)
+
+#define AUDIO_GET_QCELP_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
+ 1, struct msm_audio_qcelp_enc_config)
+
+#define AUDIO_SET_EVRC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
+ 2, struct msm_audio_evrc_enc_config)
+
+#define AUDIO_GET_EVRC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
+ 3, struct msm_audio_evrc_enc_config)
+
+#define CDMA_RATE_BLANK 0x00
+#define CDMA_RATE_EIGHTH 0x01
+#define CDMA_RATE_QUARTER 0x02
+#define CDMA_RATE_HALF 0x03
+#define CDMA_RATE_FULL 0x04
+#define CDMA_RATE_ERASURE 0x05
+
+struct msm_audio_qcelp_enc_config {
+ uint32_t cdma_rate;
+ uint32_t min_bit_rate;
+ uint32_t max_bit_rate;
+};
+
+struct msm_audio_evrc_enc_config {
+ uint32_t cdma_rate;
+ uint32_t min_bit_rate;
+ uint32_t max_bit_rate;
+};
+
+#endif /* __MSM_AUDIO_QCP_H */
253 include/linux/msm_mdp.h
@@ -0,0 +1,253 @@
+/* include/linux/msm_mdp.h
+ *
+ * Copyright (C) 2007 Google Incorporated
+ * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+#ifndef _MSM_MDP_H_
+#define _MSM_MDP_H_
+
+#include <linux/types.h>
+#include <linux/fb.h>
+
+#define MSMFB_IOCTL_MAGIC 'm'
+#define MSMFB_GRP_DISP _IOW(MSMFB_IOCTL_MAGIC, 1, unsigned int)
+#define MSMFB_BLIT _IOW(MSMFB_IOCTL_MAGIC, 2, unsigned int)
+#define MSMFB_SUSPEND_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 128, unsigned int)
+#define MSMFB_RESUME_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 129, unsigned int)
+#define MSMFB_CURSOR _IOW(MSMFB_IOCTL_MAGIC, 130, struct fb_cursor)
+#define MSMFB_SET_LUT _IOW(MSMFB_IOCTL_MAGIC, 131, struct fb_cmap)
+#define MSMFB_HISTOGRAM _IOWR(MSMFB_IOCTL_MAGIC, 132, struct mdp_histogram)
+/* new ioctls's for set/get ccs matrix */
+#define MSMFB_GET_CCS_MATRIX _IOWR(MSMFB_IOCTL_MAGIC, 133, struct mdp_ccs)
+#define MSMFB_SET_CCS_MATRIX _IOW(MSMFB_IOCTL_MAGIC, 134, struct mdp_ccs)
+#define MSMFB_OVERLAY_SET _IOWR(MSMFB_IOCTL_MAGIC, 135, \
+ struct mdp_overlay)
+#define MSMFB_OVERLAY_UNSET _IOW(MSMFB_IOCTL_MAGIC, 136, unsigned int)
+#define MSMFB_OVERLAY_PLAY _IOW(MSMFB_IOCTL_MAGIC, 137, \
+ struct msmfb_overlay_data)
+#define MSMFB_GET_PAGE_PROTECTION _IOR(MSMFB_IOCTL_MAGIC, 138, \
+ struct mdp_page_protection)
+#define MSMFB_SET_PAGE_PROTECTION _IOW(MSMFB_IOCTL_MAGIC, 139, \
+ struct mdp_page_protection)
+#define MSMFB_OVERLAY_GET _IOR(MSMFB_IOCTL_MAGIC, 140, \
+ struct mdp_overlay)
+#define MSMFB_OVERLAY_PLAY_ENABLE _IOW(MSMFB_IOCTL_MAGIC, 141, unsigned int)
+#define MSMFB_OVERLAY_BLT _IOWR(MSMFB_IOCTL_MAGIC, 142, \
+ struct msmfb_overlay_blt)
+#define MSMFB_OVERLAY_BLT_OFFSET _IOW(MSMFB_IOCTL_MAGIC, 143, unsigned int)
+#define MSMFB_HISTOGRAM_START _IO(MSMFB_IOCTL_MAGIC, 144)
+#define MSMFB_HISTOGRAM_STOP _IO(MSMFB_IOCTL_MAGIC, 145)
+#define MSMFB_NOTIFY_UPDATE _IOW(MSMFB_IOCTL_MAGIC, 146, unsigned int)
+
+#define MSMFB_OVERLAY_3D _IOWR(MSMFB_IOCTL_MAGIC, 146, \
+ struct msmfb_overlay_3d)
+
+#define MDP_IMGTYPE2_START 0x10000
+
+enum {
+ NOTIFY_UPDATE_START,
+ NOTIFY_UPDATE_STOP,
+};
+
+enum {
+ MDP_RGB_565, /* RGB 565 planer */
+ MDP_XRGB_8888, /* RGB 888 padded */
+ MDP_Y_CBCR_H2V2, /* Y and CbCr, pseudo planer w/ Cb is in MSB */
+ MDP_ARGB_8888, /* ARGB 888 */
+ MDP_RGB_888, /* RGB 888 planer */
+ MDP_Y_CRCB_H2V2, /* Y and CrCb, pseudo planer w/ Cr is in MSB */
+ MDP_YCRYCB_H2V1, /* YCrYCb interleave */
+ MDP_Y_CRCB_H2V1, /* Y and CrCb, pseduo planer w/ Cr is in MSB */
+ MDP_Y_CBCR_H2V1, /* Y and CrCb, pseduo planer w/ Cr is in MSB */
+ MDP_RGBA_8888, /* ARGB 888 */
+ MDP_BGRA_8888, /* ABGR 888 */
+ MDP_RGBX_8888, /* RGBX 888 */
+ MDP_Y_CRCB_H2V2_TILE, /* Y and CrCb, pseudo planer tile */
+ MDP_Y_CBCR_H2V2_TILE, /* Y and CbCr, pseudo planer tile */
+ MDP_Y_CR_CB_H2V2, /* Y, Cr and Cb, planar */
+ MDP_Y_CB_CR_H2V2, /* Y, Cb and Cr, planar */
+ MDP_IMGTYPE_LIMIT,
+ MDP_BGR_565 = MDP_IMGTYPE2_START, /* BGR 565 planer */
+ MDP_FB_FORMAT, /* framebuffer format */
+ MDP_IMGTYPE_LIMIT2 /* Non valid image type after this enum */
+};
+
+enum {
+ PMEM_IMG,
+ FB_IMG,
+};
+
+/* mdp_blit_req flag values */
+#define MDP_ROT_NOP 0
+#define MDP_FLIP_LR 0x1
+#define MDP_FLIP_UD 0x2
+#define MDP_ROT_90 0x4
+#define MDP_ROT_180 (MDP_FLIP_UD|MDP_FLIP_LR)
+#define MDP_ROT_270 (MDP_ROT_90|MDP_FLIP_UD|MDP_FLIP_LR)
+#define MDP_DITHER 0x8
+#define MDP_BLUR 0x10
+#define MDP_BLEND_FG_PREMULT 0x20000
+#define MDP_DEINTERLACE 0x80000000
+#define MDP_SHARPENING 0x40000000
+#define MDP_NO_DMA_BARRIER_START 0x20000000
+#define MDP_NO_DMA_BARRIER_END 0x10000000
+#define MDP_NO_BLIT 0x08000000
+#define MDP_BLIT_WITH_DMA_BARRIERS 0x000
+#define MDP_BLIT_WITH_NO_DMA_BARRIERS \
+ (MDP_NO_DMA_BARRIER_START | MDP_NO_DMA_BARRIER_END)
+#define MDP_BLIT_SRC_GEM 0x04000000
+#define MDP_BLIT_DST_GEM 0x02000000
+#define MDP_BLIT_NON_CACHED 0x01000000
+#define MDP_OV_PIPE_SHARE 0x00800000
+#define MDP_DEINTERLACE_ODD 0x00400000
+#define MDP_OV_PLAY_NOWAIT 0x00200000
+#define MDP_SOURCE_ROTATED_90 0x00100000
+
+#define MDP_TRANSP_NOP 0xffffffff
+#define MDP_ALPHA_NOP 0xff
+
+#define MDP_FB_PAGE_PROTECTION_NONCACHED (0)
+#define MDP_FB_PAGE_PROTECTION_WRITECOMBINE (1)
+#define MDP_FB_PAGE_PROTECTION_WRITETHROUGHCACHE (2)
+#define MDP_FB_PAGE_PROTECTION_WRITEBACKCACHE (3)
+#define MDP_FB_PAGE_PROTECTION_WRITEBACKWACACHE (4)
+/* Sentinel: Don't use! */
+#define MDP_FB_PAGE_PROTECTION_INVALID (5)
+/* Count of the number of MDP_FB_PAGE_PROTECTION_... values. */
+#define MDP_NUM_FB_PAGE_PROTECTION_VALUES (5)
+
+struct mdp_rect {
+ uint32_t x;
+ uint32_t y;
+ uint32_t w;
+ uint32_t h;
+};
+
+struct mdp_img {
+ uint32_t width;
+ uint32_t height;
+ uint32_t format;
+ uint32_t offset;
+ int memory_id; /* the file descriptor */
+ uint32_t priv;
+};
+
+/*
+ * {3x3} + {3} ccs matrix
+ */
+
+#define MDP_CCS_RGB2YUV 0
+#define MDP_CCS_YUV2RGB 1
+
+#define MDP_CCS_SIZE 9
+#define MDP_BV_SIZE 3
+
+struct mdp_ccs {
+ int direction; /* MDP_CCS_RGB2YUV or YUV2RGB */
+ uint16_t ccs[MDP_CCS_SIZE]; /* 3x3 color coefficients */
+ uint16_t bv[MDP_BV_SIZE]; /* 1x3 bias vector */
+};
+
+/* The version of the mdp_blit_req structure so that
+ * user applications can selectively decide which functionality
+ * to include
+ */
+
+#define MDP_BLIT_REQ_VERSION 2
+
+struct mdp_blit_req {
+ struct mdp_img src;
+ struct mdp_img dst;
+ struct mdp_rect src_rect;
+ struct mdp_rect dst_rect;
+ uint32_t alpha;
+ uint32_t transp_mask;
+ uint32_t flags;
+ int sharpening_strength; /* -127 <--> 127, default 64 */
+};
+
+struct mdp_blit_req_list {
+ uint32_t count;
+ struct mdp_blit_req req[];
+};
+
+#define MSMFB_DATA_VERSION 2
+
+struct msmfb_data {
+ uint32_t offset;
+ int memory_id;
+ int id;
+ uint32_t flags;
+ uint32_t priv;
+};
+
+#define MSMFB_NEW_REQUEST -1
+
+struct msmfb_overlay_data {
+ uint32_t id;
+ struct msmfb_data data;
+};
+
+struct msmfb_img {
+ uint32_t width;
+ uint32_t height;
+ uint32_t format;
+};
+
+struct mdp_overlay {
+ struct msmfb_img src;
+ struct mdp_rect src_rect;
+ struct mdp_rect dst_rect;
+ uint32_t z_order; /* stage number */
+ uint32_t is_fg; /* control alpha & transp */
+ uint32_t alpha;
+ uint32_t transp_mask;
+ uint32_t flags;
+ uint32_t id;
+ uint32_t user_data[8];
+};
+
+struct msmfb_overlay_3d {
+ uint32_t is_3d;
+ uint32_t width;
+ uint32_t height;
+};
+
+
+struct msmfb_overlay_blt {
+ uint32_t enable;
+ uint32_t offset;
+ uint32_t width;
+ uint32_t height;
+ uint32_t bpp;
+};
+
+struct mdp_histogram {
+ uint32_t frame_cnt;
+ uint32_t bin_cnt;
+ uint32_t *r;
+ uint32_t *g;
+ uint32_t *b;
+};
+
+struct mdp_page_protection {
+ uint32_t page_protection;
+};
+
+#ifdef __KERNEL__
+
+/* get the framebuffer physical address information */
+int get_fb_phys_info(unsigned long *start, unsigned long *len, int fb_num);
+
+#endif
+
+#endif /*_MSM_MDP_H_*/
BIN  kernel
Binary file not shown
BIN  overlay/frameworks/base/core/res/res/drawable-hdpi/default_wallpaper.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
70 overlay/frameworks/base/core/res/res/values/config.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<!-- These resources are around just to allow their values to be customized
+ for different hardware and product builds. -->
+<resources>
+
+ <bool name="config_animateScreenLights">false</bool>
+
+ <!-- The duration (in milliseconds) that the radio will scan for a signal
+ when there's no network connection. If the scan doesn't timeout, use zero -->
+ <integer name="config_radioScanningTimeout">1</integer>
+
+ <bool name="config_disableMenuKeyInLockScreen">true</bool>
+
+ <!-- Component name of the service providing network location support. -->
+ <string name="config_networkLocationProvider">com.google.android.location.NetworkLocationProvider</string>
+
+ <!-- Component name of the service providing geocoder API support. -->
+ <string name="config_geocodeProvider">com.google.android.location.GeocodeProvider</string>
+
+ <!-- List of regexpressions describing the interface (if any) that represent tetherable
+ USB interfaces. If the device doesn't want to support tething over USB this should
+ be empty. An example would be "usb.*" -->
+ <string-array translatable="false" name="config_tether_usb_regexs">
+ <item>"usb0"</item>
+ </string-array>
+
+ <!-- List of regexpressions describing the interface (if any) that represent tetherable
+ Wifi interfaces. If the device doesn't want to support tethering over Wifi this
+ should be empty. An example would be "softap.*" -->
+ <string-array translatable="false" name="config_tether_wifi_regexs">
+ <item>"tiap\\d"</item>
+ </string-array>
+
+ <!-- Regex array of allowable upstream ifaces for tethering - for example if you want
+ tethering on a new interface called "foo2" add <item>"foo\\d"</item> to the array -->
+ <string-array translatable="false" name="config_tether_upstream_regexs">
+ <item>"rmnet\\d"</item>
+ <item>"tiwlan\\d"</item>
+ </string-array>
+
+ <!-- Boolean indicating if we require the use of DUN on mobile for tethering -->
+ <bool translatable="false" name="config_tether_dun_required">false</bool>
+
+ <!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap -->
+ <integer-array name="config_keyboardTapVibePattern">
+ <item>30</item>
+ </integer-array>
+
+ <!-- Set the default wallpaper -->
+ <string name="default_wallpaper_component">com.android.wallpaper/.nexus.NexusWallpaper</string>
+
+</resources>
22 overlay/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/**
+ * Copyright (c) 2009, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<resources>
+ <bool name="def_install_non_market_apps">true</bool>
+ <bool name="def_accelerometer_rotation">true</bool>
+</resources>
21 overlay/frameworks/base/tests/ImfTest/res/values/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/**
+ * Copyright (c) 2009, The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<resources>
+ <bool name="def_expect_ime_autopop">true</bool>
+</resources>
8 overlay/packages/apps/CMParts/res/values/config.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!-- Whether or not to display the trackball settings -->
+ <bool name="has_trackball">false</bool>
+ <bool name="has_rgb_notification_led">true</bool>
+ <bool name="has_camera_button">true</bool>
+ <bool name="has_led_flash">true</bool>
+</resources>
21 overlay/packages/apps/Contacts/res/values/config.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Passion-specific Contacts app resources. -->
+<resources>
+ <!-- Enable the onscreen "Dial" button in the dialer. -->
+ <bool name="config_show_onscreen_dial_button">true</bool>
+</resources>
BIN  overlay/packages/apps/Launcher2/res/drawable-hdpi/wallpaper_black.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN  overlay/packages/apps/Launcher2/res/drawable-hdpi/wallpaper_black_small.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 overlay/packages/apps/Launcher2/res/values/config.xml
@@ -0,0 +1,6 @@
+<resources>
+ <integer name="config_allAppsFadeInTime">50</integer>
+ <integer name="config_allAppsFadeOutTime">50</integer>
+ <integer name="config_allAppsBatchLoadDelay">0</integer>
+ <integer name="config_allAppsBatchSize">0</integer>
+</resources>
39 overlay/packages/apps/Mms/res/xml/mms_config.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Version History
+ version 1 - initial version.
+ version 2 - added recipientLimit.
+ version 3 - added min/max recycler values.
+-->
+
+<mms_config version="3">
+ <!-- Maximum message size in bytes for a MMS message -->
+ <int name="maxMessageSize">307200</int>
+
+ <!-- Maximum height for an attached image -->
+ <int name="maxImageHeight">768</int>
+
+ <!-- Maximum width for an attached image -->
+ <int name="maxImageWidth">1024</int>
+
+ <!-- User-Agent parameter used in MMS http request -->
+ <string name="userAgent">Passion</string>
+
+ <!-- UAProf URL -->
+ <string name="uaProfUrl">http://www.htcmms.com.tw/Android/Common/nexusone/ua-profile.xml</string>
+
+</mms_config>
41 overlay/packages/apps/Phone/res/values/config.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Passion-specific phone app resources. -->
+<resources>
+
+ <!-- Enable the onscreen touch UI for all states of the in-call UI. -->
+ <bool name="allow_incoming_call_touch_ui">true</bool>
+ <bool name="allow_in_call_touch_ui">true</bool>
+
+ <!-- This is a device with capacitive buttons, so disable the feature
+ where BACK rejects the current incoming call. (Since it's so
+ easy to press the key accidentally as you pull the phone out of
+ your pocket.) -->
+ <bool name="allow_back_key_to_reject_incoming_call">false</bool>
+
+ <!-- Enable the onscreen "Dial" button in the emergency dialer. -->
+ <bool name="config_show_onscreen_dial_button">true</bool>
+
+ <!-- This device uses libaudio-qsd8k which implements
+ AudioHardware::setMicMute(bool state) and AudioHardware::getMicMute(bool* state)
+ so microphone muting calls should be routed through the AudioManager API. -->
+ <bool name="send_mic_mute_to_AudioManager">true</bool>
+
+ <!-- This device implements a noise suppression device for in call audio-->
+ <bool name="has_in_call_noise_suppression">true</bool>
+
+</resources>
23 overlay/packages/apps/Settings/res/values/bools.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources>
+ <!-- Whether or not there is a notification led that is too intrusive to be pulsing
+ constantly -->
+ <bool name="has_intrusive_led">false</bool>
+ <!-- Whether or not the dock settings are to be displayed for this device when docked -->
+ <bool name="has_dock_settings">false</bool>
+</resources>
31 overlay/packages/apps/Torch/res/values/config.xml
@@ -0,0 +1,31 @@
+<?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.
+*/
+-->
+<resources>
+ <bool name="useCameraInterface">false</bool>
+
+ <!-- Full path to the sysfs toggle -->
+ <string name="flashDevice">/sys/devices/i2c-0/0-0053/cm_torch</string>
+
+ <!-- Lowest setting -->
+ <integer name="valueOn">1</integer>
+ <!-- Middle setting -->
+ <integer name="valueHigh">2</integer>
+ <!-- Highest setting, leave -1 if it doesn't exist -->
+ <integer name="valueDeathRay">3</integer>
+</resources>
33 prebuilt/bootrec
@@ -0,0 +1,33 @@
+#!/sbin/sh
+
+cat /dev/input/event1 > /dev/keycheck&
+sleep 3
+kill -9 $!
+if [ -s /dev/keycheck -o -e /cache/recovery/boot ]
+then
+# fixing CPU clocks to avoid issues in recovery
+echo 1024000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
+echo 245000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
+
+rm /cache/recovery/boot
+mount -o remount,rw rootfs /
+umount -l /system
+umount -l /data
+umount -l /cache
+umount -l /mnt/sdcard
+rm -r /sdcard
+rm -r /not/sdcard
+mkdir /sdcard
+mkdir /tmp
+rm /etc
+mkdir /etc
+cp /recovery.fstab /etc/recovery.fstab
+mount /dev/block/mmcblk0p1 /sdcard
+/sbin/recovery &
+/sbin/adbd recovery
+fi
+
+/system/bin/chargemon
+
+#continue booting
+
66 prebuilt/hw_config.sh
@@ -0,0 +1,66 @@
+# Audio jack configuration
+dev=/sys/devices/platform/simple_remote.0
+echo 0,201,1600 > $dev/accessory_min_vals # default = 0,200,1600
+echo 200,1599 > $dev/accessory_max_vals # default = 200,1600
+echo 0,100,280,500,700 > $dev/button_min_vals # default = 0,100,300,600,700
+echo 99,199,399,699,5000 > $dev/button_max_vals # default = 99,199,399,699,5000
+echo 512 > $dev/btn_trig_period_freq # Button Period Freq(Hz) default = 512
+echo 16 > $dev/btn_trig_period_time # Button Period Time(cycle) default = 16
+echo 512 > $dev/btn_trig_hyst_freq # Button Hysteresis Freq(Hz) default = 512
+echo 16 > $dev/btn_trig_hyst_time # Button Hysteresis Time(Cycle) default = 16
+echo 500 > $dev/btn_trig_level # default = 500
+
+# Proximity sensor configuration
+dev=/sys/bus/i2c/devices/0-0054
+hwid=`cat /sys/class/hwid/hwid`
+case $hwid in
+ 0x0b | 0x0c)
+ val_cycle=0
+ val_nburst=15
+ val_freq=2
+ val_threshold=1
+ val_filter=0
+ ;;
+ *)
+ val_cycle=0
+ val_nburst=15
+ val_freq=2
+ val_threshold=4
+ val_filter=0
+ ;;
+esac
+
+nv_param_loader 60240 prox_cal
+val_calibrated=$?
+case $val_calibrated in
+ 1)
+ nv_param_loader 60240 threshold
+ val_threshold=$?
+ nv_param_loader 60240 rfilter
+ val_filter=$?
+ ;;
+esac
+
+echo $val_cycle > $dev/cycle # Duration Cycle. Valid range is 0 - 3.
+echo $val_nburst > $dev/nburst # Number of pulses in burst. Valid range is 0 - 15.
+echo $val_freq > $dev/freq # Burst frequency. Valid range is 0 - 3.
+echo $val_threshold > $dev/threshold # sensor threshold. Valid range is 0 - 15 (0.12V - 0.87V)
+echo $val_filter > $dev/filter # RFilter. Valid range is 0 - 3.
+
+# LMU AS3676 Configuration
+dev=/sys/devices/i2c-0/0-0040/leds
+echo 2,127,1,130,130,2,2 > $dev/button-backlight/als/curve # ALS curve for group2
+echo 2,127,1,130,130,2,2 > $dev/keyboard-backlight/als/curve # ALS curve for group2
+echo 1,1,1,0 > $dev/lcd-backlight/als/params #[gain],[filter_up],[filter_down],[offset]
+echo 1 > $dev/lcd-backlight/als/enable #Sensor on/off. 1 = on, reg 90h
+echo 1 > $dev/button-backlight/als/enable #Sensor on/off. 1 = on, reg 90h
+echo 1 > $dev/keyboard-backlight/als/enable #Sensor on/off. 1 = on, reg 90h
+echo 4000 > $dev/button-backlight/max_current
+echo 38000 > $dev/keyboard-backlight/max_current
+echo 10000 >$dev/tally-light/max_current
+
+# touch auto fwupdate
+cyttsp_fwloader -dev /sys/devices/platform/spi_qsd.0/spi0.0 -fw /system/etc/firmware/touch_iyokan_ttsp.hex
+
+# TI BQ275xx firmware loader
+bq275xx_fwloader
211 prebuilt/media_profiles.xml
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2010 The Android Open Source Project
+ Copyright (C) 2010, 2011 Sony Ericsson Mobile Communications AB
+
+ 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.
+
+ NOTE: This file has been modified by Sony Ericsson Mobile Communications AB.
+ Modifications are licensed under the License.
+-->
+<!DOCTYPE MediaSettings [
+<!ELEMENT MediaSettings (CamcorderProfiles,
+ EncoderOutputFileFormat+,
+ VideoEncoderCap+,
+ AudioEncoderCap+,
+ VideoDecoderCap,
+ AudioDecoderCap)>
+<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
+<!ELEMENT EncoderProfile (Video, Audio)>
+<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
+<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
+<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
+<!ELEMENT Video EMPTY>
+<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
+<!ATTLIST Video bitRate CDATA #REQUIRED>
+<!ATTLIST Video width CDATA #REQUIRED>
+<!ATTLIST Video height CDATA #REQUIRED>
+<!ATTLIST Video frameRate CDATA #REQUIRED>
+<!ELEMENT Audio EMPTY>
+<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
+<!ATTLIST Audio bitRate CDATA #REQUIRED>
+<!ATTLIST Audio sampleRate CDATA #REQUIRED>
+<!ATTLIST Audio channels (1|2) #REQUIRED>
+<!ELEMENT ImageEncoding EMPTY>
+<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
+<!ELEMENT ImageDecoding EMPTY>
+<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
+<!ELEMENT Camera EMPTY>
+<!ATTLIST Camera previewFrameRate CDATA #REQUIRED>
+<!ELEMENT EncoderOutputFileFormat EMPTY>
+<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
+<!ELEMENT VideoEncoderCap EMPTY>
+<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
+<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
+<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
+<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
+<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
+<!ATTLIST