← Back to team overview

ubuntu-phone team mailing list archive

Huawei Ascend P1 porting experience notes

 

Hello,

I had a  Huawei Ascend P1 (u9200) phone booting Ubuntu Touch a few
months ago and managed to successfully update the port to use the
latest sources today.

My attempt to update to the new flipped model and to use the
phablet-saucy branch of the Android ROM resulted in the following
experiences, which I also summarized in the new porting wikipage.

1) No kernel config changes were needed, in particular I did not have
to add CONFIG_VT, it works with it disabled.
2) The vpid kernel patch is not needed in the new container model, so
it is no longer mentioned in the wiki either.
3) I had to pass console=ttyO0 instead of console=ttyGS2, the latter
being whatever the original factory ROM used, and the former one of
the few tty devices created by Ubuntu.
4) Udev rules were needed, generated from ueventd.rc as seen in the
wikipage and added to the lxc-android-config package in saucy.
5) The device node for the GPU needed an explicit udev rule to allow
non-root user access, or Unity would not start.
6) There appears to be a bug related to starting the Android
sensorservice. If it fails to start for whatever reason, Unity won't
start either. I worked around this by changing
ystem/core/rootdir/init.rc to put sensorservice back into the main
class instead of late_start. A proper solution is needed though as
this affects multiple devices.
7) When logged into Ubuntu I found /usr/bin/test_sf , test_egl and the
rest of the test apps there helpful.

A problem that this port has in common with the initial one is that
hardware vsync is not working well, making the UI very sluggish. Last
time I worked around that by hardcoding software vsync in the
SurfaceFlinger sources and this is what I resorted to now. This is
intrusive and not upstreamable though, so a proper fix is needed here.

cheers
Jani