[09/01/09] Android - Polaris Userspace and Testing thread - Touch Cruise Android Development

*** PLEASE READ CAREFULLY BEFORE INSTALLING OR FLASHING ANY SOFTWARE POSTED IN THIS THREAD ***
The software posted here is for TESTING purposes only, The Polaris Android Linux development team or any of the posters of software or links to software on this thread, take absolutely no responsibility or liability for damage caused by the result of installing or flashing software or links to software found on this thread - correctly or otherwise, you do so on the sole understanding that you do so at your own risk.
Previous thread was closed because too big you can find lot of information into it with the search button : http://forum.xda-developers.com/showthread.php?t=555000
Hello to all of you, Android user.
This thread is the right place to talk about non-kernel related discussions, questions and requests.
Please, remember that the thread is public, so don't use bad word
So...have fun
-------------------------------------------------------------------------------------------------------------------------------
01-09-09 - new link to files for working wifi
http://www.4shared.com/dir/19593527/...a/sharing.html
From Google Code Vogue-Android:
01-09-09 - Initrd - works with unpartitioned cards, otherwise no changes.
01-09-09 - Rootfs - works with unpartitioned cards, otherwise no changes.

Reserved for future use

Reserved for future use.

Reserved for future use,

Reserved for future use-

what packages do i have to dload? everything?

nicandris said:
what packages do i have to dload? everything?
Click to expand...
Click to collapse
From the first link (4share), you took all but rootfs and initrd, these one you could download it from the other links

You should put name Android in the title to know about what is this thread

whitealien said:
You should put name Android in the title to know about what is this thread
Click to expand...
Click to collapse
Thanks for the suggestion

@Mormy
Could you give us your startup/default haret script? With script whitch you uploaded to 4shared, graphics don't work properly.

Good thing to open a clean thread to speak about testing
I'm currently testing the SquashFs version, latest on http://code.google.com/p/vogue-android/downloads/list
With this system.sqsh : http://vogue-android.googlecode.com/files/hero.zip
And this base files : http://vogue-android.googlecode.com/files/squashfsbasefiles.zip
It's very stable. With this build I haven't got anymore the 'reload UI' problem when I go back to home screen.
But it's very slow. It takes more time to launch application, wake up the phone, open settings... But the scrolling is normally fast.
Wifi doesn't work for me with it.
Maybe I'll try this one tonight : system-090109r1.img on http://code.google.com/p/vogue-hero/downloads/list
I didn't understood how works the last one with 'userinit.sh' system, so I think I will not try it

Averne said:
@Mormy
Could you give us your startup/default haret script? With script which you uploaded to 4shared, graphics don't work properly.
Click to expand...
Click to collapse
I've tried Neocore and won't start either with the 4share startup and with mine.
By the way, this the one I usually have:
Code:
set RAMSIZE 0x08000000
set MTYPE 1723
set KERNEL zImage
set initrd initrd.gz
#
# The following kernel parameters are useful
# ppp.username - The username used to connect to the network when dialing
# ppp.password - The password used to connect to the network when dialing
# ppp.apn - Set apn of your provider
# ppp.nostart - Set ppp.nostart=1 to disable starting the ppp connection on boot
# msm_sdcc.msmsdcc_fmax - The maximum frequency (in Hz) used by the SD controller
# pm.sleep_mode - The mode used when the phone is off
# 0=Power Collapse Suspend, 1=Power Collapse, 2=Apps Sleep,
# 3=Slow Clock and Wait for Interrupt 4=Wait for Interrupt
# Default is 1, use 1 for best power savings
# board-htcpolaris.panel_type - Panel type used to power the panel off and on
# 0=Don't power off the panel (Default)
# 1=Sony 2=Topoly 3=Topoly (probably just the same as 2)
# lcd.density - Defaults to 160, 128 shows more on screen
#
set cmdline "board-htcpolaris.panel_type=3 ppp.apn=tre.it ppp.username=none ppp.password=none pm.sleep_mode=1 mddi.width=324 mddi.height=432 no_console_suspend board-htcpolaris-battery.battery_capacity=1350 clock-7x00.mddi=0xa51 mddi_client_vogue.vsync=0"
boot

Averne said:
@Mormy
Could you give us your startup/default haret script? With script whitch you uploaded to 4shared, graphics don't work properly.
Click to expand...
Click to collapse
Try with '1' instead of '3' for "board-htcpolaris.panel_type" property.

Averne said:
@Mormy
Could you give us your startup/default haret script? With script whitch you uploaded to 4shared, graphics don't work properly.
Click to expand...
Click to collapse
if you mean neocore then yes that is broken in this kernel.
if you are having display issues, then try changing the panel type or try to be more specific on what you mean by "graphics dont work properly".

Ok, this is my default.txt file:
Code:
set RAMSIZE 0x08000000
set MTYPE 1723
set KERNEL zImage
set initrd initrd.gz
set cmdline "board-htcpolaris.panel_type=0 ppp.apn=orange ppp.username=orange ppp.password=orange pm.sleep_mode=1 mddi.width=336 mddi.height=448 lcd.density=160 no_console_suspend board-htcpolaris-battery.battery_capacity=1350 mddi_client_vogue.vsync=0"
boot
With this settings display works fine, but you must disconnect usb cable before press [Run] button in haret.

Hi ,
with the last files taken from bally site I have wifi working but data connection li ke previous release taken from vogue-android sometime starts sometimes no.
And with this files I can't start calling it creashes.
No Gps..
Why start up logo is changed? and button mapping?

Averne said:
Ok, this is my default.txt file:
Code:
set RAMSIZE 0x08000000
set MTYPE 1723
set KERNEL zImage
set initrd initrd.gz
set cmdline "board-htcpolaris.panel_type=0 ppp.apn=orange ppp.username=orange ppp.password=orange pm.sleep_mode=1 mddi.width=336 mddi.height=448 lcd.density=160 no_console_suspend board-htcpolaris-battery.battery_capacity=1350 mddi_client_vogue.vsync=0"
boot
With this settings display works fine, but you must disconnect usb cable before press [Run] button in haret.
Click to expand...
Click to collapse
why have you got lcd density set at 160 and width and height at 336x448?
this is not my startup file. you should try that first.

Does somebody know what are the benefits of using 'squash FS' system instead of old standard system.img?

Kiiv said:
Does somebody know what are the benefits of using 'squash FS' system instead of old standard system.img?
Click to expand...
Click to collapse
if you are really interested: (from http://groups.google.com/group/andr...ad/e4ce4f06f982d51b/30fa2b5deb6533b2?lnk=raot)
I think it would be a good idea to compress /system/bin and /system/
lib at least with squashfs, I have done this on a couple ubuntu and
gentoo systems and it actually increased performance and space
significantly!
Reasons (short version): decompressing data is faster than reading it
from the hard drive, in most current computers, especially when you
have multiple programs reading from the disk, causing thrashing, and/
or when the data on the disk is fragmented. You can read more details
about what was done and the results on http://forums.gentoo.org/viewtopic-p-4732709.html#4732709
Squashfs is intended for general read-only file system use and in
constrained block device/memory system, it can also be combined with a
union mount system like unionfs and aufs for read/write access.
We will be able to improve android boot time, app launch time, and
increase space, what more could we ask for? Maybe a little bit more
ram? Whats up with compcache too?
So now we just need to compile squashfs-tools for android and
experiment, im pretty damn excited to try this!
Also ubifs has lzo compression, not sure how that would work either,
it seems ubifs is favored over jffs2 and yaffs2
Well right now it looks squashfs+lzma wont be in the kernel until
2.6.30 found this via:
http://www.squashfs-lzma.org/
So I think we are left with UbiFS with lza compression but I have no
idea on how to add it to the kernel, and test this out, im really
interested in seeing some results and doing some benchmarks, if
someone more knowledgeable than me can help out that would be awesome
defcon
found a nice pdf comparing the filesystems:
http://free-electrons.com/doc/flash-filesystems.pdf
Benchmarks Of Yaffs2, JFFS2, SquashFS, & UBIFS:
http://free-electrons.com/pub/conferences/2008/elce/flash-filesystems...
Seems like people are already using ubifs on android:
http://groups.google.com/group/android-porting/browse_thread/thread/a...
Reference:
http://forums.gentoo.org/viewtopic-p-4732709.html#4732709
http://jt0.org/news/squashing_usr_and_the_2629_kernel

Hum, thank you for the link
So I don't understand why it's slower with squash FS on my phone... I will try to find other discussions on the subject.

Related

[Development]Kernel

Hei there.
The idea of this thread is to develop a better kernel for the I9001 in the community. I have compiled my own one for using it in the cwm recovery mod. I've only changed the following so far:
Patched pm2.c file in the samsung kernel sources, see here for the patch:
https://github.com/PabloPL/android_...mmit/46e96915a7e0459dc6b3aec04aa47329371fff44
through menuconfig I've changed the default cpu governor from performance to ondemand.
What we should implement first is init.d support.
I've uploaded my boot.img file for further use here:
http://www.mediafire.com/?6p91s5knka0e0py
It also contains the CWM Recovery
This is great idea bro. Its great to have you here.
Thanks again!!!
Sent from my GT-I9001 using Tapatalk
I would love to see a overclock able kernel! Great idea!
Joost
Sent from my GT-I9001 using XDA App
overclocking module
Hi guys,
coolbho3000 posted source of an overclocking module for HTC Vision. As far I know, it can be used with the SetCPU App together.
http://forum.xda-developers.com/showthread.php?t=813681
Since S+ has a similar Qualcomm chip, it should work as well.
I compiled the overclocking module with the S+ Kernel and packed it into the zImage. The device doesn't boot. Maybe it would be better to follow what coolbho3000 says and adapt the settings
ädu
PS: it needs definitively some adaptions.
Shouldn't we create our own github/bitbucket repositories for kernel and CWM? I'm trying to get my feet wet in generic Android kernel development now, it would be cool to have repository to sync with.
YardE said:
Shouldn't we create our own github/bitbucket repositories for kernel and CWM? I'm trying to get my feet wet in generic Android kernel development now, it would be cool to have repository to sync with.
Click to expand...
Click to collapse
yep of course. I've already opened an account on github. But right now I ain't got time to read the instructions on how to upload repos because I'm busy with applying some changes to FeaMod Recovery and testing them.
I would be happy if a lot of kernel developers would join us!
Edit: The sources for FeaMod recovery 1.1 are on github:
https://github.com/manveru0/FeaMod-Recovery--based-on-CWM-Recovery-
Samsung kernel sources with patched pm2.c:
https://github.com/manveru0/kernel_I9001_samsung
Later I'll try to add "run-parts /system/etc/init.d/" to init.rc, but I'm highly confused from examining ramdisk, because I couldn't find any bash-scripts interpreter (possibly embedded into init executable?) and don't have enough time to continue examining init.rc now. I think, we can add busybox to system image and call it from there. Also, please, modify these lines in default.prop in your future builds:
Code:
ro.secure=0
ro.debuggable=1
As far as I understood, these allow us to use "adb root".
Also, thanks for your awesome work!
YardE said:
Later I'll try to add "run-parts /system/etc/init.d/" to init.rc, but I'm highly confused from examining ramdisk, because I couldn't find any bash-scripts interpreter (possibly embedded into init executable?) and don't have enough time to continue examining init.rc now. I think, we can add busybox to system image and call it from there. Also, please, modify these lines in default.prop in your future builds:
Code:
ro.secure=0
ro.debuggable=1
As far as I understood, these allow us to use "adb root".
Also, thanks for your awesome work!
Click to expand...
Click to collapse
sounds good. I haven't seen a script interpreter either and I'm not quite sure if there is one included in the init. I think it's better we include busybox. Take a look at this thread by the way:
http://forum.xda-developers.com/showthread.php?t=1152740
I'll try to do that testwise.
Here's the adress for my uploaded boot.img-ramdisk without the samsung pictures (we can easily add them again when building a new boot.img):
https://github.com/manveru0/bootimage_ramdisk_I9001
I've already included the changes in default.prop
EDIT: some useful links
http://www.kandroid.org/online-pdk/guide/bring_up.html
http://www.androidenea.com/2009/08/init-process-and-initrc.html
After some init.rd learning I've inserted a service here which should get the job's done, but I have no idea how to test it. Anyway, here is the diff from the normal one:
Code:
[[email protected] boot]$ diff -u3 init.rc ../boot_mod/init.rc
--- init.rc 2011-11-05 22:35:33.194680288 +0400
+++ ../boot_mod/init.rc 2011-11-05 22:24:40.000000000 +0400
@@ -566,7 +566,7 @@
# ihryu 2010.07.19
setprop ro.rfkilldisabled 0
- class_start default
+ #class_start default
# +++++++++++++++++++++++++++++++++++++++++++
# for silent reset
@@ -714,6 +714,10 @@
onrestart restart netd
onrestart restart sensor-daemon
+service initd /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
+ oneshot
+
service media /system/bin/mediaserver
user media
group system audio camera graphics inet net_bt net_bt_admin net_raw radio qcom_oncrpc
[[email protected] boot]$
Have also commented "class_start default" which runs twice for some reason. To have this working in theory, you should have busybox installed in /system/xbin with run-parts support. For me, it boots at least ^_^
P.S. It also works if I call command line from adb. Also, adb root works after changing default.prop, good.
P.P.S. You can also remove "charging.rle" from repo, as it is image, too, but why not just keep all the files in repo? git is loyal to binary files as long as you don't try to create a patch. ~_^ Also, you can use .gitignore to exclude some files from git's view at all.
Found excellent reference on init.rd:
http://www.kandroid.org/online-pdk/guide/bring_up.html
Fixed previous post (removed "disabled"), so it should really work now. Going to test it, but not really sure if my test are correct (I'll try to write something to sdcard, but is it mounted r/w at the moment of script running?)
Test failed, thinking of some other, more accurate tests now.
Tried to create file in /cache, and it worked! Here is boot.img with working init.rd and adb root. Flash it via dd (dd if=boot.img of=/dev/block/mmcblk0p8). You should have busybox installed into /system/xbin for this to work.
YardE said:
Found excellent reference on init.rd:
http://www.kandroid.org/online-pdk/guide/bring_up.html
Fixed previous post (removed "disabled"), so it should really work now. Going to test it, but not really sure if my test are correct (I'll try to write something to sdcard, but is it mounted r/w at the moment of script running?)
Test failed, thinking of some other, more accurate tests now.
Click to expand...
Click to collapse
thx for your commit, I'm testing it as well with the adrenaline shot. If init.d support works you should see the changed values.
I do have a working busybox in /system/xbin with run-parts support, so that shouldn't be the issue as my tests didn't work so far.
Okay, gonna delete disable as well.
concerning the images i wasn't so sure about law problems since they include original samsung stuff.
update:
success You did it! Init support works. Though I have to retest it since I've also added user root to the init.rc. Honestly I'm not quite sure if that entry is needed
"user root" is not needed since user is root by default, already tested without it (edited my posts above).
YardE said:
"user root" is not needed since user is root by default, already tested without it (edited my posts above).
Click to expand...
Click to collapse
okay then, i will change the init.rc file and commit it to github. I will name you in the comment to the change. Which name should I use? Is that okay for you?
Oh, you can use either "abbradar" or "YardE", I don't mind. ^_^ Thank you for credits and again for your work. Gonna experiment a bit with CWM now since init.d is working.
YardE said:
Oh, you can use either "abbradar" or "YardE", I don't mind. ^_^ Thank you for credits and again for your work. Gonna experiment a bit with CWM now since init.d is working.
Click to expand...
Click to collapse
I have to thank you for your work as well, mate It's cool working as a team since we are better, faster and should see more bugs than working alone
Edit:
Hmm, we should include busybox in the boot ramdisk, since not every user has busybox installed.
P.S: funny thing is, I've installed adrenaline shotv13 but only part of it works. For example the sdcard tweak works, the sysctl tweaks don't.
P.P.S: i've installed bash on my device, it's much more easier with it to navigate in the adb shell
manveru0 said:
Hmm, we should include busybox in the boot ramdisk, since not every user has busybox installed.
Click to expand...
Click to collapse
What is the max size limit in our device for ramdisk? Also, should we really do so? It will be hard to update in comparison and maybe will be stripped due to size limit, and users basically'll have two versions of busybox - our embedded into boot.img and their own - in /system. (I'm looking on CM and other init.d implementations as an example) But on the other hand, it is really nearly critical level app (although sh is not in boot.img, for example)
P.S: funny thing is, I've installed adrenaline shotv13 but only part of it works. For example the sdcard tweak works, the sysctl tweaks don
Click to expand...
Click to collapse
They also trying to write some values into non-existent /sys nodes, looks like they are meant for other kernel scheduler, like BFQ (should we also try it?)
---------- Post added at 01:25 AM ---------- Previous post was at 01:25 AM ----------
P.P.S: i've installed bash on my device, it's much more easier with it to navigate in the adb shell
Click to expand...
Click to collapse
Good advice, thank you ^_^.
YardE said:
What is the max size limit in our device for ramdisk? Also, should we really do so? It will be hard to update in comparison and maybe will be stripped due to size limit, and users basically'll have two versions of busybox - our embedded into boot.img and their own - in /system. (I'm looking on CM and other init.d implementations as an example) But on the other hand, it is really nearly critical level app (although sh is not in boot.img, for example)
They also trying to write some values into non-existent /sys nodes, looks like they are meant for other kernel scheduler, like BFQ (should we also try it?)
---------- Post added at 01:25 AM ---------- Previous post was at 01:25 AM ----------
Good advice, thank you ^_^.
Click to expand...
Click to collapse
the maximum size of both recovery and boot.img is 7864320 Bytes. Riversource once found that out. It's also in the BoardConfig.mk So we would have enough space for including busybox. But you're right, it would only lead to 2 busyboxes on the device which is not the best idea.
CM uses the BFQ scheduler as far as I know so yeah, we should give it a try
AFAIK, BFS patch nearly fully removes original kernel schedulers, so some work of comparing with original Linux kernel will be needed to do. Although, it may not be true for Android kernel sources or my experience may be wrong, so we should just try it as is before continuing.
Sent from my GT-I9001 using XDA App
YardE said:
AFAIK, BFS patch nearly fully removes original kernel schedulers, so some work of comparing with original Linux kernel will be needed to do. Although, it may not be true for Android kernel sources or my experience may be wrong, so we should just try it as is before continuing.
Sent from my GT-I9001 using XDA App
Click to expand...
Click to collapse
yep, I've looked at the changes the patches make and they remove alot of the CFQ related functions. Fortunately the makefile is patched as well so no work here.
I've have downloaded the patches for kernel 2.6.35 here:
http://algo.ing.unimo.it/people/paolo/disk_sched/sources.php
I applied them to my sources, compiled em and flashed my FeaMod pack with the new kernel and your changes to the boot ramdisk.
So far everything is working on my device I'm gonna upload the patches to github.
Edit: Had to change the .config as well since bfq is not the default I/O scheduler. It is now, I've also activated the hierarchical scheduler support.
Concerning ramdisk git repo: maybe we should move all the code into some folder, for example, "ramdisk", and move README out from there to avoid it being placed into final image? Also, we should point which files are missing from ramdisk in README.

[DEV] Multiboot Linux on Infinity tf700 (project closed)

Developers thread for users general.
I will post here some external links and additional information.
GitHub tf700 Repository - place for config files and step-by-step manual to create you own kernel and rootfs
GOO.IM file place
Tablet PPA for Raring
Changed packages is placed in /root/deb directory.
Known problems: (nexus7 wiki, mattfischer blog post, nexus7 bugs)
Unity has some problems with performance and ram eating - this is place for optimizations.
In-device microSD really bad works.
WiFi disabling is fail bcmdhd kernel module.
vt1-only, if you try to switch to vt* (`chvt 2`) - your device is freezes and reboot.
To use unity you need nux-tools, libnux-3.8-0 and libnux-3.8-common with version 3.8.0-0ubuntu1nexus7.1 (this packages are hold)
Sometimes I can see really bad artifacts with fonts and background on the device screen (mostly if using chromium browser). Only reboot fixes it.
Progress list:
Test Linux boot {DONE}
SDCard rootfs {DONE}
Graphical boot{DONE}
Keyboard special keys remapping (Esc, F1-12, Ins, Print, Break, Del, Home->Alt, Search->Meta4) {DONE in 0.8.0}
WiFi {DONE}
OpenGL ES {DONE}
Audio {DONE} In pavucontrol as output device selected Analog Stereo Output, in alsamixer (tegra-codec) unmute IntSpk
Video up to 1080p {DONE} (ac100 info) - Soft audio requires gstreamer0.10-plugins-*
nvgstplayer --sas="audioconvert ! pulsesink" -i <videofile> - Fullscreen mode
nvgstplayer --svs="nvxvimagesink" --sas="audioconvert ! pulsesink" -i <videofile> - Window mode
Touchscreen {DONE in 0.7.0} - used mtev one-touch driver 0.1.13 with api and 2button patches - right click by push one finger and click by second finger (thanx, cb22)
Touchpad {DONE in 0.6.1}
2 fingers scrolling {DONE}
3rd mouse button by 2 finger tap {DONE 0.6.1} - created new version of package multitouch "-swaptaps"
Updated tegra3 drivers and codecs to 16.2 {DONE in 0.6.1}
Ubuntu/Android dualboot {DONE in 0.7.0}
Initrd bootloader trying to boot sda1(dock sd cardreader or usb device), mmcblk1p1(internal microsd cardreader), sdb1 (dock sd cardreader or usb device), mmcblk0p9(inernal device), /data/media/tf700-rootfs-linux.img(in-device installed virtual disk) (0.7.0)
If it can't load linux - fallback to Android (0.7.0)
Boot android if voldown (or special, like Up key) key pressed in menu (0.7.0)
Fixed nvavp problem in android (0.7.0)
Fixed problems with Android sleeping by unbinding vtconsole before Android boot (0.7.0)
Initrd installer to mmcblk0p8 user partition and mount as loop with binding mmcblk0p8 {DONE in 0.7.0}
Fonts and cursor size {DONE in 0.8.0}
ZIP installer by Aroma {partially}
Install of boot image {DONE in 0.7.1}
Install script for SDcard-way and Virtual Disk-way {DONE in 0.8.0}
Possibility of using mmcblk0p8 /data as /home {DONE in 0.8.0}
Dynamical making of boot.blob {DONE in 0.8.1}
Select rootfs to boot {DONE in 0.8.1}
CM10.1 initrd (link) {DONE in 0.8.1}
Android boot from sdcard or virtual drive {DONE in 0.8.1}
UbuntuTouch initrd {DONE in 0.8.2}
Change boot system names {DONE in 0.8.2}
Add option to boot android by default {DONE in 0.8.2}
Check md5 of rootfs archive
Encryption for linux partition
FSCK check & fix rootfs before mounting {DONE in 0.8.2}
GPIO keys {partially in 0.8.0}
Switch rootfs to 13.4 (link) {partially}
Bluetooth
Try this: /system/bin/brcm_patchram_plus --bd_addr `cat /etc/bluetooth/bt_addr` --enable_hci --enable_lpm --no2bytes --tosleep 50000 --baudrate 4000000 --use_baudrate_for_download --patchram /lib/firmware/bcm4334.hcd --i2s=1,0,0,0 /dev/ttySAC0&
Totem and nvgst modules
Go to Wayland+Weston+libhybris to use egl android drivers
Disable speaker if headphones connected
Additional:
Ubuntu Cube Desktop {DONE in 0.6.2}
Chromium browser with egl and ffmpeg support {partially} - Youtube has problems with performance
Games & software {partially}
Duke3D {DONE}
Minecraft {partially}:
+ MCP
+ LWJGL 2.8.x (`ant jars_es && ant compile_native_es`)
+ Hands
Games and Emu (in Russian)
Xonotic
C-Dogs SDL
pcsx-rearmed (pi) (Return Fire and other good ps1 games)
Open Clonk
OpenLieroX
Blender + LuxRender
Need help:
Suspend to RAM - Not working with X (trace), without X (stop lightdm) - suspended, but not wake.
Wakelock to emmc
Wake up: echo "on" > /sys/power/state or powerbutton (maybe with kernel patching)
Totem - now is not working
gstreamer-properties and set Audio->Output=Custom, Audio->Output->Pipeline="nv_omx_audiosink" and Video->Output=Custom, Video->Output->Pipeline="nvxvimagesink"
HDMI copy of screen (any ideas?)
Xorg configuration shows blue lines on HDMI screen
Not working properly with 1920x1080: `xrandr --output LVDS-1 --auto --output HDMI-1 --mode 1920x1080` - I get "xrandr: Configure crtc 1 failed"
Tested on different display with fullhd support - seems like tegra3 drivers problem
Works ok with 1280x800:
xrandr --newmode `gtf 1280 800 60 | tail -n2 | head -n1 | sed 's/ Modeline //'`
xrandr --addmode HDMI-1 1280x800_60.00
xrandr --output LVDS-1 --auto --output HDMI-1 --auto
HDMI audio (any ideas?)
Adobe Flash player (any ideas?)
Skype (any ideas?)
List of optimizations:
ZRam {DONE}
UKSM (Ultra Kernel Samepage Merging) {DONE} (info in Russian)
CPU optimizations {partially}
Clemsyn OC 1.3 - 1.8ghz 650GPU Kernel {DONE in 0.6.2} - seems like not properly working on AndroidRoot hacked bootloader
Boot optimizations {partially}
Initrd scripts {DONE in 0.6.2}
Kernel modules upgrade from initrd {DONE in 0.7.1}
IO optimizations {partially}
Some optimizations of filesystem mounting {partially in 0.6.2}
Install to device main emmc memory {DONE in 0.7.0}
Power optimizations:
Screen off on lid
RAM Sleep
Powersave, Auto and Performance modes
Plans for the future:
Prepare common installer for any tegra3 device.
Test builds:
Nope
If you can help in development - please, write here.
This is very nice! Its certainly a good start.
There are definitely changes between your implementation and Jay's build. It would seem that after reviewing your source code that the major difference is your overall system config and choice of location of rootfs.
The kernels aren't too too different.
you are using noop vs cfq which is understandable since you are using the stock kernel vs CM10
you incorporated less debugging vs debugging (agree with your preference)
you incorporated framebuffer vs no fb
you incorporated zram vs no zram (smart move to help chromium)
your enhancements are much better IMHO.
You are not utilizing the linux for Tegra drivers. I think we could benefit by utilizing the latest version at least for sound. After reviewing the documentation and reviewing the drivers themselves I think we should integrate. That is unless you are trying to have two separate kernels instead of a monolithic kernel that can boot android and linux kind of like "Ubuntu for Android"
Since I have a working nvflash'd tf700 I am working on a dualboot kexec.
I still prefer the monolithic kernel approach for Android and Linux concept though, and make selection during boot as to which environment to go to. Essentially, it is possible to boot the kernel and run a specific environment and end that environment and switch to another environment.
As others have suggested I think we should integrate both into 1 tree and also try to get the tf300 on board because other than their kernel, specific tf700 configs/rules the rest of the rootfs and other portions should be identical.
Sent from my ASUS Transformer Pad TF700T using xda app-developers app
quicknik said:
You are not utilizing the linux for Tegra drivers. I think we could benefit by utilizing the latest version at least for sound. After reviewing the documentation and reviewing the drivers themselves I think we should integrate. That is unless you are trying to have two separate kernels instead of a monolithic kernel that can boot android and linux kind of like "Ubuntu for Android"
Click to expand...
Click to collapse
You mean - HW sound? I have integrated drivers, because I use modified nexus7 rootfs. Maybe, I wrong...
Also, integration of kernels is too difficult task for me now...
quicknik said:
Since I have a working nvflash'd tf700 I am working on a dualboot kexec.
I still prefer the monolithic kernel approach for Android and Linux concept though, and make selection during boot as to which environment to go to. Essentially, it is possible to boot the kernel and run a specific environment and end that environment and switch to another environment.
Click to expand...
Click to collapse
I also have nvflash by wheele, but for users preparing device for this - is too difficult. Now I already prepared dualboot with same kernel through initrd menu. In 0.6.0 I will release it. I have some problems with integrated cameras, but wifi is now works in android.
I think we have some problems with non-JB androids with this dualboot... But it is simple.
quicknik said:
As others have suggested I think we should integrate both into 1 tree and also try to get the tf300 on board because other than their kernel, specific tf700 configs/rules the rest of the rootfs and other portions should be identical.
Click to expand...
Click to collapse
Applying to tf300 - is good idea. It's a part of integration all tegra3 devices in same Ubuntu installation for pads.
Sorry, guys. I found my mistake with no-dualboot initrd. Now i replaced it to true dualboot (0.6.1).
rabits said:
Developers thread for users general.
Test builds:
boot.img dualboot initrd Pre-release 0.6.1
for me dualboot nice works, but I need to change verbosity of kernel output and boot menu more user frendly. If you can try it and write your suggestions - that will be cool.
assembly of mini initrd and android JB 4.1.1 (I have CleanROM 2.4 installed on my tf700t).
wifi on android is supported (added p4p bcmdhd option), but nvavp can't load fw.
boot menu (included linux, android, initrd shell) is showing after kernel loading.
Click to expand...
Click to collapse
I am more than willing to try, but how can I dualboot that first build ? If you provide a few step by step instructions, I am sure a lot of people will try which will help the development by giving several feedbacks.
I am currently on Clean Rom Inheritance (= CROMI) 2.7.2 which is the latest update in the Clean Rom series. Since you are using 2.4, I guess the steps woul be exactly the same as for you. I am however using Clemsyn kernel. Is the stock kernel required to be able to dual boot ?
One the OP, Ubuntu seems tobe pretty stable since a lot of features ar working. Is that really the case ? Is compiz already something I could consider using at this point of the developpment or is it still a little bit early ?
I am really interested in this project and I thank you a million time for starting actively a development allowing us to dualboot Ubuntu. Keep up you awesome work !!!
singoutout said:
I am more than willing to try, but how can I dualboot that first build ? If you provide a few step by step instructions, I am sure a lot of people will try which will help the development by giving several feedbacks.
I am currently on Clean Rom Inheritance (= CROMI) 2.7.2 which is the latest update in the Clean Rom series. Since you are using 2.4, I guess the steps woul be exactly the same as for you. I am however using Clemsyn kernel. Is the stock kernel required to be able to dual boot ?
One the OP, Ubuntu seems tobe pretty stable since a lot of features ar working. Is that really the case ? Is compiz already something I could consider using at this point of the developpment or is it still a little bit early ?
I am really interested in this project and I thank you a million time for starting actively a development allowing us to dualboot Ubuntu. Keep up you awesome work !!!
Click to expand...
Click to collapse
Thanks for your support)) I think, you could use users general thread for test boot steps. The steps are the same, but with the current rootfs (0.5.0) linux in dualboot may not start. Android with CleanRom should work. Soon I will release a rootfs 0.6, which can be used with dualboot section.
rabits said:
Thanks for your support)) I think, you could use users general thread for test boot steps. The steps are the same, but with the current rootfs (0.5.0) linux in dualboot may not start. Android with CleanRom should work. Soon I will release a rootfs 0.6, which can be used with dualboot section.
Click to expand...
Click to collapse
can do for TF300 ?
tailormoon said:
can do for TF300 ?
Click to expand...
Click to collapse
I don't know - but you can try.
Hi
How is it going with the developpment? Is the dualboot working nice with Ubuntu now?
Do you think a cube desktop will ever be usable on a dualbooted Ubuntu on our device?
Thanks for the good work
Hello, I have managed to get this booting on my tf300t tablet. It is working alright and I would like to learn a bit about this area of development so I can tweak it to get it working as well as contribute to the project as a whole. So far it has bugs with wifi, bluetooth, and sound. Also, when I select shutdown from the ubuntu menu, it corrupts the image and it will boot to lightdm and then freeze. I tried compiling a kernel for it based on a tweaked tf700t 10.4.4.20 kernel that was patched by untermensch to work for the tf300t but it did not solve any issues, it pretty much performed the same. I wanted infrom everyone of the issues on the tf300t as well as ask for some guidance as to documentation for what steps I can take to fix these issues. Thanks.
keeganmccallum said:
I wanted infrom everyone of the issues on the tf300t as well as ask for some guidance as to documentation for what steps I can take to fix these issues. Thanks.
Click to expand...
Click to collapse
It seems that this is the rootfs problem. Maybe you find some info in tf300 forum or ubuntu forums, but you need try to read log files and, maybe, do hard gdb trace.
Trying it when i get home
Thanks
Sent from my GT-N7000 using xda premium
BTW happy to have CROMI involved with this
rabits said:
[*]boot.blob v0.6.2 - Anyone can try to flash it? I can't flash it by fastboot on AndroidRoot bootloader - maybe it should work on JB bootloader?
Click to expand...
Click to collapse
Your dummy signblob header is one byte too long - there is a 0a byte before "MSM-RADIO-UPDATE" that should not be there.
_that said:
Your dummy signblob header is one byte too long - there is a 0a byte before "MSM-RADIO-UPDATE" that should not be there.
Click to expand...
Click to collapse
Thanx, I missed this byte)) Damn sed. We should always use echo and cat))
Blob is updated.
rabits said:
Blob is updated.
Click to expand...
Click to collapse
Successfully flashed via fastboot and it booted my Android (still the old CleanROM 2.3) fine. The initrd menu and framebuffer console is awesome. Can't try your rootfs right now because my PC cardreader is making trouble (I hate SD cards and readers, they are unreliable sh**, or they hate me).
Only everything is very tiny (160 dpi instead of 240), and adding ro.sf.lcd_density=240 to /system/build.prop did not help. I'll have to add it to the initrd and see if it helps. Strange, because I thought newer CleanROMs also set the dpi via /system/build.prop, but who knows. Eventually I should install CRI 3.0 anyway.
Hm, while I was writing this, the TF700 spontanously rebooted... looks like problems turning off the screen. /proc/last_kmsg contained two WARNINGs with stack trace, both containing do_blank_screen (drivers/tty/vt/vt.c:3728 and vt.c:650)
I just read that this is Clemsyn's kernel - where did you find the sources for the current version and what did you modify? There are so many different binaries in that thread and so few source drops that I totally lost track.
Hi
I've just seen the cube desktop is know supported on 0.6.2. How is it performing ? Is the latest version smoother than 0.5 ?
Thanks for the great work!!! I hope our tabs will soon have a stable and smooth Ubuntu dualbootable with CROMI
_that said:
Only everything is very tiny (160 dpi instead of 240), and adding ro.sf.lcd_density=240 to /system/build.prop did not help. I'll have to add it to the initrd and see if it helps. Strange, because I thought newer CleanROMs also set the dpi via /system/build.prop, but who knows. Eventually I should install CRI 3.0 anyway.
Hm, while I was writing this, the TF700 spontanously rebooted... looks like problems turning off the screen. /proc/last_kmsg contained two WARNINGs with stack trace, both containing do_blank_screen (drivers/tty/vt/vt.c:3728 and vt.c:650)
Click to expand...
Click to collapse
Yeah, seems like too old CR version...
_that said:
I just read that this is Clemsyn's kernel - where did you find the sources for the current version and what did you modify? There are so many different binaries in that thread and so few source drops that I totally lost track.
Click to expand...
Click to collapse
You can find info about kernel here and here. I'm used this source from second link to build 0.6.2 kernel.
singoutout said:
Hi
I've just seen the cube desktop is know supported on 0.6.2. How is it performing ? Is the latest version smoother than 0.5 ?
Click to expand...
Click to collapse
I just installed extra plugins))) Currently Nexus7 is more smoothed then tf700 with unity... Cube is rotating ok, but with IO lags - sd speed so slow.
Currently I working on more basic things, like install linux in main flash drive. If you have any ideas - please, post it here.
Hi everyone,
I've been working on getting ArchLinuxArm running on the TF300 over at http://forum.xda-developers.com/showthread.php?t=1918849
Just something that might help with your touchscreen - you should be able to get basic functionality if you use the xf86-input-mtev driver (see https://aur.archlinux.org/packages/xf86-input-mtev-meego/ )
While less than ideal, it's better than nothing. We have the same issue with X segfaulting when the evdev driver is used. I actually looked into that, and it has to do with the way events are reported by the kernel driver, if I remember correctly.

P6000 General Thread - Bug fixes, FAQ, general info.

Elephone P6000
Phone reviews by @s7yler
Stock ROM (SPFlash):
from elephone servers
from needrom.com
Custom Recovery --- Touch RecoveryCourtesy of @bigrammy, @carliv and @Santhosh M​Various
Latin Paradise(拉丁乐园)(Elephone) on Baidu
P6000 Folder
OTA Updates - direct from elephone
--- both are 404 now ---
12282014 to 31012015
01092015 to 31012015
Other threads and useful sites:
http://forum.xda-developers.com/android/general/elephone-p6000-mtk6732-64-bit-4g-5-2g-t2957425
SP Flash Thread - P6000
4pda thread - translated top post is fairly concise
Check your Mobile Network/Carrier
Please use the other threads/Q&A and the thanks button - to minimise duplicate posts reporting the same issues.
I'd like this thread to be used mainly for bug fixes, tips and tricks. If someone reports a similar problem/fix/bug click the thanks button if you'd like to agree.
Bugs
Android 5.0 'Official' Release
Update Official (V3.3)
Some modifications: #186
Android 5.0 Beta
12-02-15 ROM available on needrom.com
Hardware buttons don't work
Battery doesn't draw charge
Ril related memory leak
No ADB​
Android 4.4.4 (V8.4)
Notification light - not breathing when charging
OTG only works with self-powered devices
Battery seems to jump from 100% to ~90% Soon after removing from charger
Screen jumps several pixels (30) on slow scrolling. ​Android 4.4.4 (V8.3) bugs not present in V8.4Data encryption results in a stalled boot/softbrick​
FAQ/Fixes
1. Notification light is not working in V8.4 as it was in V8.3
Try Light Manager from the play store or gravity box (xposed module)
2. Does OTG work?
It seems to work only with a powered USB hub - I've only been able to check a powered external hard-drive which wouldn't connect
3. How do you fix the screen jump issue?
There are several options here:
From @the1024 / zOrgent we have two options 1. Using a chinese tool - and 2. Using a .bat
From elephone we have TpUpgrade.apk (appears to only work with V8.4)
From lidmiloff we have P6000 Bugfixer.apk​
4. How do you restore a Stock ROM?
Download a SPFlash ROM from #1; you will need to install MediaTek USB VCOM drivers (if they aren't automatically installed); On the download page select the scatter from the ROM folder; and the page should populate with the various .img's and .bins; if it doesn't then double click on the entry and locate it manually (also useful if you wan to change boot/recovery with SPFlash). Hit download; remove the battery from the phone and connect it to the PC (you can connect the battery again). The connection will be fairly instantaneous (there may be a driver install the first time it's connected); if it doesn't connect then unplug/replug.
More details from @bigrammy found here
5. Battery jump from 100% to 90%.
Haven't really noticed this too much - download an app like Battery Monitor Widget, add widget (Battery monitor widget gauge => Content => Central value => Battery => Battery Current (mA)) which will show you the battery drain/draw and charge until the draw is close to; if not +0mA
6. Is there any touch recovery?
As of now (pre-5.0) there is no touch recovery. The recovery thread on #1 contains various recoveries - most of which boot but none have touch - this seems to be a kernel issue.
Touch recoveries can be found here. These are built for KK.
7. What about Custom ROMs?
Potential Port devices (MT6732/MT6752) and their ROMS
As there are no official sources released; for MT6732 or P6000 then custom ROMs are a no-go for now. Porting ROMs from other devices running on MT6732 (and MT6752); i.e. Ulefone Be Pro for example is theoretically possible but there doesn't appear to be any custom ROMs on these chips that offer anything different than the stock/AOSP(almost) that we have already. As other devices get released possibly running MIUI or ColorOS then Custom ROMs may be possible.
FlymeOS
8. How do you take a screenshot?
Natively pressing Volume down and power together for 1 second will take a screenshot - it may take a while to get used to - if volume mixer appears then they were too slow and need to wait for it to disappear. Over adb/terminal you can make use of screencap and screen record
9. How do you back up EVERYTHING(except preloader)?
In SPFlash Tools => readback from 0x00 to 0x3a3e000000
This is a fairly quick way to make sure you have a copy of all the partitions on the device; it will create a 14GB+ file containing all the partitions. You will need to break this block up (manually for the moment) into it's constituent parts if you want to use it to restore - using a Hex-editor (HxD for example) and a copy of the matching /proc/partinfo file and/or scatter.txt
The essential partitions to backup for a fully running device are - boot, (recovery), system, (cache) and data which can all be backed up using a custom recovery. The one other partition needed is nvram - this can be backed up with SPFlash (look at /proc/partinfo) or with dd commands. The nvram partition will only be needed to be restored if you Format All with SPFlash. If you don't have a backup you can restore/recreate the IMEI files that it contains.
10. How do you backup/restore IMEI?
Several options here:
1. MTKDroid
2. Backup NVFLASH partition via readback in SPFlash Tools (look at the scatter.txt) to restore you need to modify the scatter.txt to give the nvflash a file_name: and change it from is_Download: false to is_Download: true
3. From elephone there's a IMEI coding tool
4. Keep a copy of the /data/nvram folder
5. Create new imei files to add to nvram folder/partition with imei.exe
6. Chamelephon app from the play store
7. MTK Engineering Mode
11. Adb access with 5.0 Beta ROMs
1. Use KingoRoot
2. Add the Mediatek subsystem id (0x0e8d) to adb_usb.ini
12. Any Stock Camera fixes?
For KK-4.4.4 from @z0rgent at 4pda
FAQ/Fixes Continued
Android 5.0 V1; V1.1; V2.2 (V3.2); V3.3 #125 #186These versions seem to have gapps preinstalled and are prerooted - for everything else have a look at the 5.0 Betas section below
5.0 Modifications #186​Android 5.0 Beta1 Beta2 Beta3
To gain adb access
Linux/Windows - need to add the Mediatek subsystem id (0x0e8d) to adb_usb.ini
Linux: ~/.android/adb_usb.ini
Windows: C:/Users/${Username}/.android/adb_usb.ini​KingoRoot It won't root the device however - I believe this is due to it installing a 32bit su binary rather than a 64bit one.
Root
For root install SuperSU v2.11+
Confirmation
Custom Recovery
Recovery from @carliv - from #1; modded to boot on L (basically just the cmdline changed / initrd.gz from stock L recovery replaced with carliv's built CWM).
Carliv Port by hanuma50 on 4pda (hopefully all his work and not partially stolen to take credit)
This recovery seems to only work when the Lollipop Beta ROM is installed.
Gapps
64-bit gapps made for the Nexus 9.
My phone seems to be running a little hot after installing the gapps - but that might just all the cores kicking in.
Mirrored copy of the version I'm using.
(OP's thread has updated them and removed the previous version)
Busybox
64-bit busybox installation
Removing encrypted data (temporarily)
In recovery while in an adb shell: /sbin/make_ext4fs /dev/block/mmcblk0p19
This will allow you to restore backed up data - but it will get re-encrypted on first boot, I'll take a look at removing encryption when I get the chance - should be either secro partition or something in the boot.img​
Android 5.0 Beta Breakdown
Screenshots to come later.
Entering LKVOL UP and POWER (this no longer enters recovery)
From lk menu: entering fastboot mode and normal boot works.
Entering recovery (stock) doesn't work and I can't tell if the other normal boot options do anything different​Charging batteryFlashing a custom recovery should allow you some way to charge the battery​I haven't yet been able to install/boot any recovery. Flashing lk and boot from 4.4.4 (I took them from the 48MB OTA) seems to let you charge when powered off. Confirmed​RIL Memory leakThere seems to be a RIL/Sim related memory leak leading to random reboots - for testing purposes disable the sim card(s) or enter airplane mode
I could be wrong about the RIL and the ROM just needed time to settle; all I can say is I had reboots until I switched to airplane mode​IMEIIMEI was lost but that would be due to formatted flash memory (wiped nvflash partition) - it's a good idea to keep a backup regardless.​Antutu Scores64-bit Antutu Scores are around 28000
32-bit Scores are around 27000
Data-encrypted 4.4.4 Antutu scores are also around 28000​SensorsBacklight, sound ... can't be changed
Brightness can be fixed in MTK Engineering Mode #5​ROM is not rooted; does not have gapps installed and data is encrypted.
TL;DR The issues with the 5.0 Beta ROM, are primarily not ROM related but kernel related, they have bumped the kernel version up to 3.10.61+, and the issues that need correcting are the various kernel modules (power,sensors).
Android L kernel config
Annotated /system/build.prop
Stripped top of build.prop (build properties) due to size
# begin mediatek build properties
ro.mediatek.version.release=ALPS.KK2.MP13.V1.27
ro.mediatek.platform=MT6752
ro.mediatek.chip_ver=S01
ro.mediatek.version.branch=KK2.MP13
ro.mediatek.version.sdk=3
# end mediatek build properties
#
# from out/target/product/k01q_e/obj/CUSTGEN/config/system.prop
#
#
# system.prop for generic sdk
#
rild.libpath=/system/lib/mtk-ril.so
rild.libargs=-d /dev/ttyC0
# MTK, Infinity, 20090720 {
wifi.interface=wlan0
# MTK, Infinity, 20090720 }
# MTK, mtk03034, 20101210 {
ro.mediatek.wlan.wsc=1
# MTK, mtk03034 20101210}
# MTK, mtk03034, 20110318 {
ro.mediatek.wlan.p2p=1
# MTK, mtk03034 20110318}
# MTK, mtk03034, 20101213 {
mediatek.wlan.ctia=0
# MTK, mtk03034 20101213}
#
wifi.tethering.interface=ap0
#
ro.opengles.version=196608
wifi.direct.interface=p2p0
# dalvik.vm.heapgrowthlimit=256m
# dalvik.vm.heapsize=512m
# USB MTP WHQL
ro.sys.usb.mtp.whql.enable=0
# Power off opt in IPO
sys.ipo.pwrdncap=2
# Switching Menu of Mass storage and MTP
ro.sys.usb.storage.type=mtp #### adding ,massstorage to this gives an additional USB option but it apears to still mount as a media device (MTP) adding ,mass_storage will let you mount the microsd card
# USB BICR function
ro.sys.usb.bicr=no #### changing to yes will allow you to mount /system/mobile_toolkit/iAmCdRom.iso to PC via USB ####
# USB Charge only function
ro.sys.usb.charging.only=yes
# audio
ro.camera.sound.forced=0
ro.audio.silent=0
ro.zygote.preload.enable=0
#
# ADDITIONAL_BUILD_PROPERTIES
#
persist.gemini.sim_num=2
ro.gemini.smart_sim_switch=false
ro.gemini.smart_3g_switch=0
ro.gemini.sim_switch_policy=1
ril.specific.sm_cause=0
bgw.current3gband=0
ril.external.md=0
ro.btstack=blueangel
ro.sf.hwrotation=0
ril.current.share_modem=2
curlockscreen=1
ro.mediatek.gemini_support=true
persist.radio.fd.counter=15
persist.radio.fd.off.counter=5
persist.radio.fd.r8.counter=15
persist.radio.fd.off.r8.counter=5
persist.radio.fd.on.only.r8.network=0
drm.service.enabled=true
fmradio.driver.enable=1
ril.first.md=1
ril.flightmode.poweroffMD=1
ril.telephony.mode=0
dalvik.vm.mtk-stack-trace-file=/data/anr/mtk_traces.txt
persist.mtk.anr.mechanism=1
mediatek.wlan.chip=CONSYS_MT6752
mediatek.wlan.module.postfix=_consys_mt6752
ril.radiooff.poweroffMD=0
ro.config.notification_sound=Proxima.ogg
ro.config.alarm_alert=Alarm_Classic.ogg
ro.config.ringtone=Backroad.ogg
persist.mtk.wcn.combo.chipid=-1
ter.service.enable=0
mediatek.extmd.usbport=0
ro.lte.dc.support=0
ril.active.md=0
ro.setupwizard.mode=OPTIONAL
ro.com.google.gmsversion=4.4.4
ro.com.google.clientidbase=alps-k01q_e-{country}
ro.com.google.clientidbase.ms=alps-k01q_e-{country}
ro.com.google.clientidbase.yt=alps-k01q_e-{country}
ro.com.google.clientidbase.am=alps-k01q_e-{country}
ro.com.google.clientidbase.gmm=alps-k01q_e-{country}
wfd.dummy.enable=1
persist.sys.dalvik.vm.lib=libdvm.so #### Charnging this to libart.so appears to have no effect ####
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
# begin fota properties
ro.fota.platform=MTK6732_KK
ro.fota.type=phone
ro.fota.oem=new-bund6732_KK
ro.fota.device=k01q_e
ro.fota.version=eng.jenkins.1422677980
# end fota properties
ro.sf.lcd_density=190
#### Stock value I believe is 320; changing to >190 switches the device to phablet mode; this spoofs the screen size to be 7.73 inches (CPU-Z) enabling tablet apps in the apps store after clearing play store app data ####
qemu.hw.mainkeys=0
#### This enables softkeys ####
Annotated /custom/customprop/custom.prop
ro.product.model=Elephone P6000
ro.product.name=Elephone P6000
ro.product.brand=elephone
ro.product.manufacturer=elephone
ro.bt.name=P6000
ro.wifi.name=P6000
ro.notification.breath=yes #### This seems to not be working with V8.4 ####
ro.build.display.id=ALPS.KK2.MP13.V1.27
ro.internal.build.version=K01Q-E.ELEPHONE.vR83.E4.150109
ro.custom.build.version=Elephone_P6000_V8.4_20150109
ro.fota.device=Elephone_P6000
ro.fota.version=Elephone_P6000_V8.4_20150109202612
MTK Engineering Mode
*#*#3646633#*#* (*#*#ENGMODE#*#*)
What can be done in engineering mode
General non-specific guide
Backlight
Hardware ===> LCM ===> LCM Cycle ===> add a value between 5 and 55 ===> Hit Set.
(On L at least this value will jump to value in the millions/billions; unsure if this has any implications)
Audio
http://forum.xda-developers.com/showthread.php?t=2746861
http://forum.xda-developers.com/showthread.php?t=2248396
GPS
http://www.cnx-software.com/2013/11...ps-lock-on-mediatek-mt65xx-based-smartphones/
Orientation / GSensor
Hardware Testing ===> Sensor ===> Sensor Calibration ===> GSensor Calibration ===> Do Calibration (20% tolerance)
IMEI Restore
Command should be AT +...
Xposed Installer (or WSM Tools)
I've had no problems with any xposed modules.
You will get a warning regarding AliyunOS -
this issue is reported due to the presence of /system/framework/*.jar.jex files.
You can ignore/move/remove these *.jar.jex files without it causing any (noticable) issue.
I haven't decompiled any apps so I don't know if. jex files are used elsewhere within the ROM (in place of .jar),
so can't comment on whether the stock ROM is indeed an Aliyun OS.
I would advise backing them up so that any future OTA can complete 100%.
Any issues identified with xposed modules will be reported here.​
Very Helpful and concise
Nice one bro :good:
Subscribed
Ludmiloff's Screen fix apk version 1.2 final now works with 8.3 also. Just wanted to give you a quick update so you edit your post HypoTurtle
greekfragma said:
Ludmiloff's Screen fix apk version 1.2 final now works with 8.3 also. Just wanted to give you a quick update so you edit your post HypoTurtle
Click to expand...
Click to collapse
Still doesn't work for me on 8.3.
Nice one, i get my phone in a couple of weeks.
Hello
and Thanks for all your work ! :victory:
Can you add how save and restore imei ?
xenonism said:
Still doesn't work for me on 8.3.
Click to expand...
Click to collapse
Sorry to hear that man. Can you give more details? Are the driver version letters shown normal or "?"
greekfragma said:
Sorry to hear that man. Can you give more details? Are the driver version letters shown normal or "?"
Click to expand...
Click to collapse
Well, I tried the first methods which came out and they wouldn't work. Then I upgraded to V8.4, at the same time the Elephone APK came out, so I used it and it set the thresholds to 3 and 4. Then I decided to go back to V8.3 and since then, no method managed to make a persistent change to the values (I tried ludmiloff's works, Elephone's APK modified by me, which worked for others, and the old Russian method). At best, I get the new vaules in the "init config" portion of the configuration, never in the "real config" portion, and they are always gone after a reboot. File permissions of /proc/gt9xx_config are 660, owned by root. The config version letter is currently F and ludmiloff's app reads it correctly.
I guess that's all the info I can share.
xenonism said:
Well, I tried the first methods which came out and they wouldn't work. Then I upgraded to V8.4, at the same time the Elephone APK came out, so I used it and it set the thresholds to 3 and 4. Then I decided to go back to V8.3 and since then, no method managed to make a persistent change to the values (I tried ludmiloff's works, Elephone's APK modified by me, which worked for others, and the old Russian method). At best, I get the new vaules in the "init config" portion of the configuration, never in the "real config" portion, and they are always gone after a reboot. File permissions of /proc/gt9xx_config are 660, owned by root. The config version letter is currently F and ludmiloff's app reads it correctly.
I guess that's all the info I can share.
Click to expand...
Click to collapse
Well, time to get in here, I guess...
@xenonism, the best I could tell you is to start over with clean ROM, preferably the one listed at 4pda.ru thread about elephone P6000 (in the head section) and try again. There must be something messed up in your device. I really believe the config is independent of ROM. The secret is very simple, you must start with new version letter and at offset 184 set correct checksum. How to calculate checksum:
//cal checksum
byte checksum;
for(i=0; i<chip_cfg_len; i++) {
checksum += file_config;
}
file_config[chip_cfg_len] = (~checksum) + 1;
Where chip_cfg_len = 184
Then write the checksum and write 0x01 at offset 185.
I believe you already know where are the theshsold values - at offset 16 and 17.
If you wish, I could send you my hand crafted config, which I was an inspiration for my apk.
Good luck
Err... it looks like I am unable to install a clean ROM, or even to update the existing one. I guess I'll have to sort this issue out before I join back the discusssion.
I have a fully functionalV8.3_20141228 ROM running and carliv's CWM from the 7th of February installed. The phone offers me the OTA update and it downloads a ~23 MB update. When I agree to install it, the phone reboots to CWM and the update fails with the following messages:
E:Invalid command argument
Finding update package...
E:unknown volume for path [/storage/sdcard0/adupsfota/update.zip]
E:Can't mount /storage/sdcard0/adupsfota/update.zip
Installation aborted.
Click to expand...
Click to collapse
If I try to install the same update with ROM Manager, it also fails in CWM with the following message:
-- Installing: [FILENAME SHOWS HERE]
Finding update package...
Opening update package...
Installing update...
Installation aborted.
Click to expand...
Click to collapse
But when I reboot the phone, I get the "Android is upgrading...] Screen, saying it's optimizing 124 apps. I believe no actual update takes place, though.
And here's what I'd consider the relevant portion of the recovery.log file:
Preparing to install ROM...
about to run program [/cache/dowipedalvikcache.sh] with 1 args
mount: mounting /dev/block/platform/mtk-msdc.0/by-name/userdata on /data failed: Device or resource busy
mount: mounting /dev/block/platform/mtk-msdc.0/by-name/cache on /cache failed: Device or resource busy
mount: can't find /sd-ext in /etc/fstab
umount: can't umount /sd-ext: Invalid argument
run_program: child exited with status 1
about to run program [/sbin/chmod] with 3 args
about to run program [/tmp/recovery/11-rommanager.sh] with 2 args
mount: mounting /dev/block/platform/mtk-msdc.0/by-name/system on /system failed: Device or resource busy
about to run program [/sbin/umount] with 2 args
Click to expand...
Click to collapse
If I try to install the full 20150109 ROM with ROM Manager, it also fails in CWM, without displaying any meaningful messages in recovery. I also get the "Android is upgrading screen here".
The errors in recovery.log are the same as above.
I guess I could install the full ROM via SP Flash Tool, right?
Also... I have a couple of questions to ask, can I feel free to do it in this thread? Some might be trivial for most.
ludmiloff said:
Well, time to get in here, I guess...
@xenonism, the best I could tell you is to start over with clean ROM, preferably the one listed at 4pda.ru thread about elephone P6000 (in the head section) and try again.
Click to expand...
Click to collapse
@ludmiloff does your app require busybox to be installed?
Downloading from 4pda.ru is a bit hit and miss for me, any chance someone can post the CWMLollipop.img...
Is there any difference in the 4pda.ru ROMs and the ones on needrom.com?
Also found a fix for the backlight in Android L - in engineering mode - not sure if it will do anything useful in 4.4.4 (lower the minimum brightness?).
MTK Engineering Mode => Hardware => LCM => LCM Cycle => value between 5 and 55.
xenonism said:
Err... it looks like I am unable to install a clean ROM, or even to update the existing one. I guess I'll have to sort this issue out before I join back the discusssion.
Click to expand...
Click to collapse
Feel free to elaborate. Edit your previous post with your current setup / what you've tried - so we can turn it into a troubleshooting post.
HypoTurtle said:
Feel free to elaborate. Edit your previous post with your current setup / what you've tried - so we can turn it into a troubleshooting post.
Click to expand...
Click to collapse
Ok, thanks a lot. I will edit my post right now. The thing is... I haven't used an Android phone in 4 years and I did a lot of my tinkering on my P6000 while working or late at night so.. things got a bit messy.
@HypoTurtle,
My app does not require busybox. It simply run some commands in the shell, though.
In fact It is my first experience with android programming and I just followed some examples found here and there. I also wanted to make a Kotlin based app, but then I decided to continue with plain old java. The app might not a perfect one. Hope it worked for many of elephone owners
---------- Post added at 08:05 AM ---------- Previous post was at 07:41 AM ----------
@xenonism, you should try a clean ROM with sp flash tool. It is a bit tricky, I have tried one from needrom and as the author suggested, I did not check the preloader mark. Then my phone ended totally bricked. The ROM from 4pda worked for me. Today I'm going to reflash it again and investigate why my app does not work on it.
@ludmiloff, I ended up installing 20150109 via SP Flash Tool and then updating via OTA to the latest version. Sure enough, your app worked then. And permissions for gt9xx_config are now 666.
I am not particularly happy with the gravitybox solution for the notification issue, so I'm trying to look into it, but I am not really hopeful to achieve something.
xenonism said:
@ludmiloff, I ended up installing 20150109 via SP Flash Tool and then updating via OTA to the latest version. Sure enough, your app worked then. And permissions for gt9xx_config are now 666.
I am not particularly happy with the gravitybox solution for the notification issue, so I'm trying to look into it, but I am not really hopeful to achieve something.
Click to expand...
Click to collapse
Same I did just few minutes ago. Won't install updates and will try to make my app working on this ROM.
BTW. Russian method write a very different format to file /process/gmnodexxxxxxx where xxxxxxx is build date. I'm pretty sure if I could change the file with correct checksum and version letter it should work too.
Anyway, my intent was to fix the scroll after I applied the elephone apk. For sure the Russian method with correct version letter and checksum would work too and it is still the best flow now for phones with very stock ROM. I already explained how to calculate the checksum.
HypoTurtle said:
@ludmiloff does your app require busybox to be installed?
Downloading from 4pda.ru is a bit hit and miss for me, any chance someone can post the CWMLollipop.img..
Click to expand...
Click to collapse
I cant see any CWMLollipop.img there
They only list two recoverys my P6000CWM3.img with no links or credits of course
and carliv's CWM_Modd_2.img again no links or credits
I will be working on the lollipop soon
I am getting another phone very soon to use for daily life so I can use the P6000 for dev only purposes.

4/20/2017 [] 7.1.1 UPDATE [] LG G5 (msm 8996) [] CPU, VM, RAM, IO "Tune"

ORIGINAL THREAD HERE: https://forum.xda-developers.com/axon-7/development/2-15-2017-axon-7-msm-8996-cpu-vm-ram-t3557392
This mod was originally created for the Axon 7, but due to several requests, I've modified a version for the G5, please see below, and post questions or comments in the original thread above. Please state you are a G5 user if you have feedback in that thread, to consolidate user feedback and speed up response time.
Custom tuning for a device is always a necessity. "Canned" settings will get you by, but they are certainly never optimized for a specific device. In fact, Linux typically takes a general approach to find harmonic balance in default settings that will, for the most part, work in an acceptable manner for just about any device. There are a lot of resources available on this device, so we should utilize it in a manner appropriate to squeeze out as much battery life and performance as possible without sacrificing much of those outputs, don't you think? This is going to fix that for you.
Here is what is required of you before you begin:
1. Must be rooted
2. Must have the G5 OR a device running the Snapdragon 820, as this modification is not so much device specific, but hardware specific. The important aspect being the snapdragon 820 and the RAM disk size.
3. Must have write protection disabled. If the G5 requires write protection to be disabled, see the code and instruction below:
Using adb shell:
Code:
adb reboot disemmcwp
Using Linux terminal (from your phone, for example):
Code:
reboot disemmcwp
Let's begin.
Getting right to it, here's what I've done:
- modified parameters of the interactive governor, and quite extensively at that (search some of my threads if you want a little bit of a breakdown of the general approach I take)
- reconfigured input_boost parameters
- reconfigured vm parameters (again, the device has a lot of RAM resource, this will utilize it and give you a far better user experience. Basically, I've adjusted dirty_ratio, dirty_background_ratio, swappiness, and other parameters of the virtual machine.)
- disabled zRAM for 6 GB variants (RAM compression, again, not needed on this device really, this mod will save you CPU cycles and power) this will not apply to G5 users, you will still have zRAM enabled.
- remapped minfree parameters for LMK (low memory killer) again only for 6 GB variants
- Tuned CFQ scheduler for flash storage devices
- Tuned "core_ctl" module (needs kernel support, I recommend freeza's latest version of BeastMode. For those wondering, yes, you can still use this mod with the stock kernel. It won't break anything.) again this will only apply to devices that support core_ctl at the kernel.
In a nutshell, that's what we're looking at here. I can guarantee you this will have a significantly positive impact on your device. Turbo time, homies.
How to install????
Easy. First, the file we are replacing is found in /system/etc... it is the "init.qcom.post_boot.sh" file - this file is basically shell scripts, which are applied at boot via this particular shell file.
All you have to do is download the file to your device, open up a file explorer (must have root capability), navigate to the /system/etc folder with said file explorer, mount your /system as RW (read write), delete your stock "init.qcom.post_boot.sh" file, and replace it with mine.
After you've successfully done this, change the new file's permissions to rw-r--r-- (0644), and then reboot!
Or, if you are brave, you can do it manually via a terminal app and get your fingers wet... if you choose to do that, see below:
Make sure the file is located on the root of your internal sdcard in /sdcard, open your terminal app (again, must have root) and type the following commands, hitting enter after each one (be careful to pay attention to the spacing).
Code:
su
Code:
cd /
Code:
mount -o remount,rw /system
Code:
cd /system/etc
Code:
rm init.qcom.post_boot.sh
Code:
cd /sdcard
Code:
mv init.qcom.post_boot.sh /system/etc
Code:
chmod 0644 /system/etc/init.qcom.post_boot.sh
I don't want credit, don't need you to give or offer donations, this is purely for the community in the spirit of Linux ideology. All I ask is for you to hit the thanks button :good:
That's pretty much it, guys. Enjoy!
DOWNLOAD:
Is this a new kernel?
Regards
Nathan
Sent from my LG-H850 using XDA Premium HD app
@warBeard_actual
Here :good: :fingers-crossed:
onestyle007 said:
@warBeard_actual
Here :good: :fingers-crossed:
Click to expand...
Click to collapse
Got it man, working on it now. I should have it up soon.
OP updated... Enjoy guys!
Instructions on how to install are in the OP, post your results here
warBeard_actual said:
OP updated... Enjoy guys!
Instructions on how to install are in the OP, post your results here
Click to expand...
Click to collapse
Question,does that matter for your results if I'm using an other governor,cause I'm currently on alucard?? Stock rom but a custom kernel (Asgard for g5 to be exact)
onestyle007 said:
Questions,does that matter for your results if I'm using an other governor,cause I'm currently on alucard?? Stock rom but a custom kernel (Asgard for g5 to be exact)
Click to expand...
Click to collapse
You will notice minimal to no difference if you are using another governor.
Any pro can do a flashable zip?
Any n00b can copy and paste
Will it work on Android 6?
I don't know it's placebo or not but after replacing the file I have now a better GPS fix and accuracy I am on the H850 so thanks on the OP
yes accurancy gps, not lag boot, very smooth. thanks!!!!!!!!!!!
warBeard_actual said:
OP updated... Enjoy guys!
Instructions on how to install are in the OP, post your results here
Click to expand...
Click to collapse
Okay,last night after I've replaced the file, changed to interactive gov,0.2% lost during the night with wifi and mobile data off here is my current stats. Was a bit surprised though and I'm not sure if it's a bug in reading . But hey that's what it shows.
Rhadamanthis said:
yes accurancy gps, not lag boot, very smooth. thanks!!!!!!!!!!!
Click to expand...
Click to collapse
Same for me, let see if the battery will be better too...
Does this only work on LG Stock?
Hi,thanks for mod,great mod running in Nougat Fulmix rom?
OTOGY2002 said:
Hi,thanks for mod,great mod running in Nougat Fulmix rom?
Click to expand...
Click to collapse
Ues
How to mount System as R/W? When I set permission I get error evice is busy
Worked like a charm using Fulmics Rom 2.0.
Hint for some who have issues with mounting RW: Use FX file explorer for this. Works just fine.
Will monitor and report how it works.
My Problem. I go to /system/etc and I can´t find this file. I´m on Root with FX file Manager. What am I doing wrong?

[ROM+KERNEL]HUAWEI WATCH 2[LTE-Sawshark]+[BT-Sawfish]-[OWDE.180926.001.A1][22-Jan-20]

[HUAWEI WATCH 2 (LTE/4G-Sawshark) & (Bluetooth/BT-Sawfish)-OWDE.180926.001.A1]​INTERNATIONAL VERSION
Please read the instructions and notes before flashing anything. Don't ask me if you don't read the instructions.
Code:
###Disclaimer###
[COLOR="Red"][B]WARNING:
IMPROPER FLASHING MAY POTENTIALLY BRICK YOUR DEVICE. SO PLEASE PROCEED AT YOUR OWN RISK. ME OR ANY OTHER DEVELOPER MENTIONED IN THIS POST WILL ASSUME NO RESPONSIBILITY FOR THIS.[/B][/COLOR]
​
DONATE ME HERE
DONATE-ME
##############################
REQUIREMENT
##############################
- An Unlock bootloader
- Working adb/fastboot and driver - Download from Here
- A custom recovery (twrp) See my twrp thread for custom twrp recovery
TWRP-RECOVERY
##############################
HOW TO FLASH KERNEL/BOOT IMAGE
##############################
- Steps via adb/fastboot
- Unzip the folder and move the boot image into your adb/fastboot folder and apply the following commands
Code:
- adb devices
- adb reboot bootloader
- fastboot flash boot boot.img
- fastboot reboot
##############################
HOW TO FLASH THE ROM AND ROOT
##############################
1- Move the build/ROM and Busybox and Magisk to your watch
2- Make a backup - there's always 1% chance something goes wrong.
3- Full wipe is recommended....Wipe data/Factory reset
4- Flash the ROM, then flash Busybox and Magisk (Please flash in this order, ROM, then Busybox and Magisk)
5- Reboot and complete your initial setting
6- Open Magisk Manager and go to settings and set Automatic Response to Grant
7- Done. Don't forget to donate if you like my work, Thanks.
##############################
ROM AND KERNEL FEATURES [22-Jan-2020]
##############################
[Changelog]-Huawei Watch 2 LTE(Sawshark)+Huawei Watch 2 BT(Sawfish)-[22/Jan/2019]
- Based on latest kernel source (-Source 3.18.24) android-wear with latest security patch
- Linux version 3.18.24 (gcc version 4.9.3 20141215 (prerelease) (UBER-SaberMod-4.9.3_arm-graphite)) #1 SMP PREEMPT Wed Jan 22 9:45:39 CET 2020
- Forced-encryption disabled
- dm-verity removed/disabled
- Auto memory killer set to default
- Sepolicy is patched
- Fix the CPU idle latency unvote timeout. It should reduce the wasting power and CPU go to deep idle states immediately after a request
- Add and use a timer frequency of 100 Hz. It should improve power consumption.
- Add and update/Hide verifiedbootstate from /proc/cmdline in order to fix the failed SafetyNet CTS check(It can still fail through other means)-GOOGLE PAY SHOULD WORK. USE MAGISK TO HIDE ROOT. U may need Gpay enabler
- Remove verifiedbootstate flag from /proc/cmdline - Disable CRC check
- Scheduler optimize/support for heterogeneous multi-core
- Scheduler support for heterogeneous multi-processor systems
- Enable all core with scaling_available_frequencies (200000 400000 533333 800000 1094400 1267200 MHz)- scaling down the frequency of the CPUs to 200 MHz during idl mode and rise the freq. to 1.26Ghz during high pressure.
- Set swappiness to 60
- Change zswap max pool % to 20%. It will reduce CPU usage a lot
- Enable zram & zswap and add 256MB virtual memory default. It will speed up the device a lot
- Removed nolog usage, remove rtb logging from the kernel
- Remove selinux auditing from kernel for lower overhead
- Remove IPC logging from the kernel
- Disabled some kernel parameter to speed up the performance- at the cost of battery/ power consumption
- Remove some logging from several drivers
- Improve memory allocations -Should improve the device a lot
- Add some tweaks to improve the overall speed, apps startup are too faster
- Set zswap compressor to lz4 by default
- APM driver updated again to reduce battery usage during sleeping
- Several other patches to reduce battery usage
- Multi-core scheduler enable/optimized
- APM driver updated reduce battery usage during sleeping
- Fix the wake up time. The screen should wake up more quickly when pressing the button.
- Tweaked the scheduler to reduce/save power by scaling down the frequency of the CPUs or idling them,
- A lot subsystems converted to use power efficient workqueue
- The watch goes to sleep during no action in order to save battery
- Remove debug event logging-Kill the useless logging to reduce overhead
- Remove sync debug entirely to cut down CPU waste in the frame render hot path
- Remove 10 ms CPU idle latency unvote timeout- Doesn't force the CPU to stay out of deep idle states for far longer than necessary, which wastes power
- Disable audit support, usually comes with a measurably significant amount of overhead
- Remove audit dependency
NOTE: THERE IS NO NEED TO FLASH THE LATEST KERNEL IF YOU FLASH THE LATEST ROM.
##############################
DOWNLOAD
##############################
[Huawei Watch 2 4G/LTE]+[Huawei Watch BT][22-Jan]
[DECRYPTION KEY]
WO0FVexxQnrtcODYdmNvnQ
##############################
MAGISK/BUSYBOX/APP-KERNEL-CONTROL
##############################
DOWNLOAD LATEST MAGISK FROM HERE
DOWNLOAD LATEST BUSYBOX FROM HERE
KERNEL CONTROL APP WEAR OS
##############################
How to get the Gpay back...
##############################
1-https://pastebin.com/HKV7cj7H
2-https://forum.xda-developers.com/smartwatch/other-smartwatches/rom-kernel-t3821013/page172
3-https://www.youtube.com/watch?v=UKxGfNxRjo4&t=320s
4-https://forum.xda-developers.com/showpost.php?p=79637148&postcount=1720
##############################
HOW TO FLASH THE STOCK IMAGES-(BACK TO STOCK)
##############################
1- Download and unzip the system image below
2- Attach the watch charger to the watch and plug the USB cord (from the charger) into your computer
3- Use the following adb command to start the watch in fastboot mode: adb reboot bootloader
4- On your computer, navigate to the directory where you unzipped the system image in Step 1. At the top level of that directory, execute the flash-all script:
- On Linux or MacOS, type ./flash-all.sh
- On Windows, type flash-all.bat
5 -DONE. Don't forget to donate if you like my work, Thanks.
STOCK-IMAGES-HUAWEI-WATCH-2-LTE-LEO-DLXX-OWDE.180215.017-SAWSHARK-(13/Oct/2018)
STOCK-IMAGES-HUAWEI-WATCH-2-BT-LEO-BX9-OWDD.180215.018-SAWFISH-(22/7/2018)
##############################
Source/GitHub
##############################
-Source
IF YOU LIKE MY WORK AND WANT ME TO CONTINUE, THEN BUY ME A SHOT OF WHISKY
DONATE ME HERE
DONATE-HERE
Special thanks to:
If you can, donate and respect all the devs and enjoy
@Chainfire for great work in android
@Maxr1998 Big thanks for giving me knowledge and your great work for Asus Zenwatch_3 and your great github guide. Please thank and donate him for all his efforts
@topjohnwu for his great effort (Magisk)Thank you so much
@SuperR.R for the great kitchen
@Xmaster24 for system-less root-
@moneytoo for his great app. Please appreciate and donate him
Pay Enabler
@SuperThomasLab for great tools
Please always support devs and others (soon).​
ROM download asking for decryption key?Can fix the link?
Hello All,
Is it possible to install this latest ROM on model without LTE?
Thank you for reply :good:
arthos7 said:
ROM download asking for decryption key?Can fix the link?
Click to expand...
Click to collapse
Hoffmanns said:
Hello All,
Is it possible to install this latest ROM on model without LTE?
Thank you for reply :good:
Click to expand...
Click to collapse
Link are fixed now. It will properly not gonna work on non-lte. I can build a new for non-lte version if some one send me the latest system image and boot image. (I can extract from your watch via teamviewer, in case you can't) But you need to flash the latest firmware without root.
IF YOU LIKE MY WORK AND WANT ME TO CONTINUE, THEN BUY ME A SHOT OF WHISKY
DONATE ME HERE​
I will upload a complete latest stock images N7176C (lte) incase anyone wanna go back to latest stock again.
The only thing you have to do is boot into bootloader mod and then run the script by double click on it. After some reboots you will be back on latest stock.
I will combine both Linux and Windows together, use one you prefer.
IF YOU LIKE MY WORK AND WANT ME TO CONTINUE, THEN BUY ME A SHOT OF WHISKY
DONATE ME HERE​
Just received my Huawei SW 4G this weekend and after installing Huawei wear I got the alert message that the watch was rooted.
How can I confirm is it's rooted or not.
Thanks
Sent from my ONEPLUS A3003 using Tapatalk
Can anyone who's used this verify that it's notably faster or has improved battery life compared to stock? Or is the difference negligible?
How to build boot.img
Hi Janjan,
I am trying to build a custom kernel for my Huawei Watch 2 (non LTE) and I was wondering if you could share a little of your development work.
How do you actually put the boot image together? I am able to compile the kernel from android-msm-sawshark-3.18-nougat-mr1-wear-release,
which gives me a zImage. I also have the original images. So I tried to unmkbootimg the original boot image and replace the kernel. However, this doesn't seem to work. when I compare the sizes of the supposedly original zImage and the one created from the repository above, their size differs by roughly a factor of 100. So there must be something seriously wrong
What steps do you use to create the kernel and the boot image?
I also checked your github code and tried to use it but it seems to depend on other stuff that is not in your repos. Where did you find the code you have in your repos?
Best regards,
Mogli
janjan said:
I can build a new for non-lte version if some one send me the latest system image and boot image. (I can extract from your watch via teamviewer, in case you can't) But you need to flash the latest firmware without root.
Click to expand...
Click to collapse
Does that offer still stand? If yes I am willing to let my watch be used as a test subject.
mogli19 said:
Hi Janjan,
I am trying to build a custom kernel for my Huawei Watch 2 (non LTE) and I was wondering if you could share a little of your development work.
How do you actually put the boot image together? I am able to compile the kernel from android-msm-sawshark-3.18-nougat-mr1-wear-release,
which gives me a zImage. I also have the original images. So I tried to unmkbootimg the original boot image and replace the kernel. However, this doesn't seem to work. when I compare the sizes of the supposedly original zImage and the one created from the repository above, their size differs by roughly a factor of 100. So there must be something seriously wrong
What steps do you use to create the kernel and the boot image?
I also checked your github code and tried to use it but it seems to depend on other stuff that is not in your repos. Where did you find the code you have in your repos?
Best regards,
Mogli
Click to expand...
Click to collapse
Sure, tell me what you did and your steps for building zImage + modul. I am away from my office for a while.
janjan, have you had success with making a non-lte version?
cdkg said:
janjan, have you had success with making a non-lte version?
Click to expand...
Click to collapse
If you send me the latest boot.img, system.img and vendor.img then I will definitely make.
janjan said:
If you send me the latest boot.img, system.img and vendor.img then I will definitely make.
Click to expand...
Click to collapse
I have the boot.img and system.img. Is there a tutorial or any instructions you could give on how to get the vendor.img?
janjan said:
Sure, tell me what you did and your steps for building zImage + modul. I am away from my office for a while.
Click to expand...
Click to collapse
Hi Janjan,
(Apparently I am not allowed to post links yet, so I am trying my best to explain without them)
1. I got the source code for the Sawshark watch from github (mr1-wear-release). I guess there is no dedicated Seafish kernel source. Short question: There is a choice of 3 different kernel codes. Which one shall I take?
2. I tried to compile this source code without changes (to rule out errors before I make modifications). This works and I get as zImage. What do you mean by modul though? I thought zImage was the only product.
3. Using unmkbootimg, I un-packed an stock boot.img. The unmkbootimg tool says that the boot.img has been compiled with a non-standard mkbootimg program. However the offsets and other values (I am supposed to tune when I use mkbootimg) are contradicting. Eventually, the "non-custom" values recommended by unmkbootimg caused errors in mkbootimg and I ended up using the default values. This worked.
4. When I flash the resulting boot.img my watch gets stuck during boot with the Huawei logo on all the time.
To verify my tools, I tried step 3. in two more ways:
3.1. re-pack the un-packed boot.img, flash it (no errors and boot works)
3.2 pack a boot.img using a zImage obtained from a sawshark boot.img (instead of the seafish). This also worked and boot was successful
I have also looked at the boot.img and zImage files in a hex editor. I can locate the beginning of the kernel but not the end. Also if I did, I wouldn't know how to replace the kernel in hex mode But from what I have understood about mkbootimg, this script does not much more than concatenate zImage and ramdisk and add a header. Is this somewhat correct?
Eventually, I need to turn on some currently disabled kernel features (which is why I am doing all of this ). So I am still trying to figure out the right tools and components. And therefore the question: How do you usually build the kernel and how do you pack it into the boot.img. Do you modify the ramdisk when you replace the kernel?
Best,
Mogli
Instructions to modify ramdisk
Hi Janjan,
How do you disassemble and re-assemble the ramdisk?
Wanted to make a few modifications to the ramdisk.cpio.gz. Again, I wanted to try the tools first. So I unpacked and re-packaged the ramdisk without modifications. After flashing the regenerated boot image, my watch goes into recovery mode...
I found these instructions in a tutorial (again, I can't post links yet... sorry):
For disassembly:
Code:
$ mkdir ramdisk_dir
$ cd ramdisk_dir
$ gunzip -c ../ramdisk.cpio.gz | cpio -i
for re-assembly
Code:
$ find . | cpio -o -H newc | gzip > ../newramdisk.cpio.gz
Update to my previous post:
I found my mistake in building the kernel:
Instead of using
Code:
make ARCH=arm CROSS_COMPILE=arm-linux-androidkernel-
I was using
Code:
make ARCH=arm CROSS_COMPILE=arm-linux-androideabi-
mogli19 said:
Hi Janjan,
How do you disassemble and re-assemble the ramdisk?
Wanted to make a few modifications to the ramdisk.cpio.gz. Again, I wanted to try the tools first. So I unpacked and re-packaged the ramdisk without modifications. After flashing the regenerated boot image, my watch goes into recovery mode...
I found these instructions in a tutorial (again, I can't post links yet... sorry):
For disassembly:
for re-assembly
Update to my previous post:
I found my mistake in building the kernel:
Instead of using
I was using
Click to expand...
Click to collapse
It seems much better now. Are you in Windows or Linux? I will post my script and tools once I reach my PC. I am away from my PC right now. It means you destroy something during generating or packaging the boot image. Does you kernel /boot.img work without or before editing the ramdisk?
Update:- seems you are in Linux.
janjan said:
It seems much better now. Are you in Windows or Linux? I will post my script and tools once I reach my PC. I am away from my PC right now. It means you destroy something during generating or packaging the boot image. Does you kernel /boot.img work without or before editing the ramdisk?
Update:- seems you are in Linux.
Click to expand...
Click to collapse
Yes, I am on linux. I found a different approach that works for me now:
Code:
Extract the ramdisk.
$ mkdir ramdisk
$ cd ramdisk
$ gzip -dc ../ramdisk.cpio.gz | cpio -i
# Make any changes necessary (e.g., set ro.secure=0 in default.prop).
# Recreate the cpio archive using the mkbootfs binary produced from building the Android source code
$ cd ..
$ mkbootfs ./ramdisk | gzip > ramdisk-new.gz
You said you were able to turn on all the cores. Can this be done by modifying the ramdisk or how do you do this?
mogli19 said:
Yes, I am on linux. I found a different approach that works for me now:
You said you were able to turn on all the cores. Can this be done by modifying the ramdisk or how do you do this?
Click to expand...
Click to collapse
Did I said? But It can't be done by editing the ramdisk only. You need to add and edit alot (add driver edit cores etc) in kernel sources.
Okay, before anyone flames, I did look everywhere in this thread and cannot find it. Does anyone have the link to the flashing instructions for this rom?
janjan said:
Did I said? But It can't be done by editing the ramdisk only. You need to add and edit alot (add driver edit cores etc) in kernel sources.
Click to expand...
Click to collapse
Oh sorry, I thought I had read this on your feature list I actually looked at this and asked myself if there was a way to make the cpu settings permanent:
https://stackoverflow.com/questions/20221680/android-how-to-force-cpu-core-offlineshut-down-cores

Categories

Resources