Doesn't the EEE pc have any battery monitoring? Then the correct paths
can be modified in the Batteryservice in stead of just an unknown
status.

On 8 apr, 04:07, Luca Belluccini <[email protected]> wrote:
> Compile a kernel image disabling pmem, enabling vesa, enabling
> hardware stuff...
> Use the old eee_701 target files (replace the compiled kernel).
> Modify:
> - system/core/mountd/Android.mk (add an if to make them compile for
> x86 arch or specific target)
> - external/e2fsprogs/Android.mk (include them for x86 arch - they're
> necessary for installer)
> - vendor/asus/eee_701/init.rc (add ro.HOME_APP_ADJ 4 and
> ro.HOME_APP_MEM 4096)
> - frameworks/base/preloaded-classes (comment out some ATM non existent
> classes PhoneWindow and derived)
> - frameworks/base/services/jni/com_android_server_BatteryService.cpp
> (added some stuff for faking battery status)
>
> @@ -15,6 +15,7 @@
>   */
>
>  #define LOG_TAG "BatteryService"
> +#define eee_701 1
>
>  #include "JNIHelp.h"
>  #include "jni.h"
> @@ -79,6 +80,7 @@
>
>  static jint getBatteryStatus(const char* status)
>  {
> +    if(eee_701) return gConstants.statusUnknown;
>      switch (status[0]) {
>          case 'C': return gConstants.statusCharging;         //
> Charging
>          case 'D': return gConstants.statusDischarging;      //
> Discharging
> @@ -95,6 +97,7 @@
>
>  static jint getBatteryHealth(const char* status)
>  {
> +    if(eee_701) return gConstants.healthUnknown;
>      switch (status[0]) {
>          case 'D': return gConstants.healthDead;         // Dead
>          case 'G': return gConstants.healthGood;         // Good
> @@ -126,6 +129,7 @@
>
>  static int readFromFile(const char* path, char* buf, size_t size)
>  {
> +    if(eee_701) return size;
>      int fd = open(path, O_RDONLY, 0);
>      if (fd == -1) {
>          LOGE("Could not open '%s'", path);
> @@ -151,11 +155,13 @@
>      char buf[SIZE];
>
>      jboolean value = false;
> +
>      if (readFromFile(path, buf, SIZE) > 0) {
>          if (buf[0] == '1') {
>              value = true;
>          }
>      }
> +    if (eee_701) value = true;
>      env->SetBooleanField(obj, fieldID, value);
>  }
>
> @@ -168,6 +174,7 @@
>      if (readFromFile(path, buf, SIZE) > 0) {
>          value = atoi(buf);
>      }
> +    if (eee_701) value = 1;
>      env->SetIntField(obj, fieldID, value);
>  }
>
> - vendor/asus/eee_701/BoardConfig.mk (append vga=788 to
> BOARD_KERNEL_CMDLINE)
> Make install_img and as usual...
--~--~---------~--~----~------------~-------~--~----~
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to