yashsingh1/xdaforums huggingface dataset:
[Asus Transformer TF701] Geometry:
improved linux kernel, framebuffer fix, suspend fix

This kernel is based on the cyanogenmod kernel as is Trel725's kernel. However, it is a pure linux kernel, compiled with CONFIG_ANDROID disabled. To make this possible, minor patches have been applied. (Otherwise compilation is broken.) See the attached file "noandroid.patch". Another minimal patch fixes some framebuffer issues, see the attached file "minfb.patch". I have also applied patches for ubuntu 14.04 apparmor, to be found here. This is because I have used this kernel to make xubuntu 14.04 work, to be described in a later post. The kernel config file is the attached file "config-3.4.105-cmaalx-15.txt". The kernel itself with modules and firmware is contained in the file "kernel-cmaalx-15.tar.gz". This is a bit large (84MB), because it includes a lot of modules.

Apart from the kernel patch there is another important ingredient to fixing the framebuffer issues, which I have found quite by accident. Add the following to the kernel command line:

fbcon=vc:1-6

Now switching to vt7 (used by default for the GUI) works!

Another important issue apparently resolved by using this kernel is supend.

To test this kernel with Trel725's rootfs, first extract "kernel-cmaalx-15.tar.gz" into the rootfs. Then boot with the attached modified boot images "linux-15.img", "linux-15_ext.img" and "linux-15_bind.img", instead of the ones provided in the first post and in this post.

UPDATE 2015-04-08: It turns out suspend didn't actually work properly in the version of the kernel posted originally. With this version it should work. By the way, bluetooth also can be made to work with this kernel. More info later.
[Asus Transformer TF701] skyleecm:
There is an issue with systemd upgrade.

In Jessie, the init is provided by systemd

/sbin/init -> /lib/systemd/systemd

somehow, when using a link that uses an absolute path, it will give the following error, when the system boots up:

Target filesystem doesn't have requested /sbin/init

In my case, it will immediately drop into the root prompt.

if u are having the same problem, this can be fixed by using a relative path:

cd /sbin

rm init

ln -s ../lib/systemd/systemd init

after this, repower up the device shd fix this issue.
[Asus Transformer TF701] aydink:
Thanks for your answer.

In my case there is a /sbin/init executable but no /lib/systemd/systemd.

There is a /lib/systemd/systemd-udev instead. When I create the symlink to /lib/systemd/systemd-udev,

I don't get even to the login prompt after rebooting. Dmesg and /var/log/messages are empty.
[Asus Transformer TF701] skyleecm:
In your case, the init is not provided by the systemd-sysv package.

According to the init metapackage, there are 3 available init systems in Debian,

systemd, sysvinit and upstart.

u maybe using one of the other 2 packages.

u may want to start all over again, if u can't find a simple fix.
[Asus Transformer TF701] Trel725:
Arch Linux for our tablet!!!

I think it much better than Debian, more fast and stable.

Audacious work

Xfce4 with touch patches

Try it out:

https://mega.co.nz/#!a0QFFDAS!IX3aEShJUnZt--8Nb2kdTwQFf_9N2oX7RPSbblDFKV8

root password: 1234qwerty

user : test, password: changeme (yep, base rootfs made by Linux Deploy)

I'll write better review in first post later.

________________

Thank a lot for Geometry. Now I'm testing this kernel, and it works great!
[Asus Transformer TF701] skyleecm:
alternatively, if u have root in android os, u can boot into android, and cd to your debian rootfs, and fix it.
[Asus Transformer TF701] aydink:
This is how I'm doing it at the moment. But I don't know what to fix exactly.

>>u may want to start all over again, if u can't find a simple fix.

thanks I'll start from the scratch I think. Or see this as a chance to try the fresh archos-images from trel :D

---------- Post added at 01:18 PM ---------- Previous post was at 01:17 PM ----------

Nice. Does it instantly work with the mount bind-method?
[Asus Transformer TF701] Trel725:
It works properly with bind.
[Asus Transformer TF701] skyleecm:
Very impressive!! Geometry.

Thanks a lot!
[Asus Transformer TF701] Trel725:
A great job, Geometry!!! It is the best existing distro for this tablet! Really, works almost everything, even auto loading kernel modules!

Unfortunately I can't make totem working. So, I write simple .desktop to automatically open console player. It is temporary solution. It's in misc archive together with automute script.

Also, I made an archive with necessary thing for touchscreen. I really like modularity idea!
[Asus Transformer TF701] Geometry:
Thanks for these, Trel725! But could you elaborate a bit more on what is necessary for the touch screen to work? I assume you also need an xorg input driver for the touch screen and also a modification of the xorg.conf. Could you give some details? It would be great if you could describe what exactly has to be done to make this work with the xubuntu rootfs!
[Asus Transformer TF701] Trel725:
The most necessary thing is to launch rm-wrapper. You can check does it works by cat /dev/input/event1. If it don't, try replace /system/bin/linker to attached. All the rest is trivia. Just install this mtev driver (attached) and add to xorg.conf

Section "InputClass"
Identifier "catched touchscreen"
Driver "mtev"
MatchDevicePath "/dev/input/event*"
MatchProduct "raydium_ts"
Option "CorePointer" "true"
EndSection
[Asus Transformer TF701] aydink:
Well I think the best for the tf701t-community would be, that you Trel and Geometry work together on one distro, which gains from your

expert knowledge and has no issues like wifi or touch. Maybe on github where other developers can participate on this project by commits? what do you think ?
[Asus Transformer TF701] Trel725:
Geometry has almost done the complete distro. I think now he's working on touch, and that is really not a problem. I just have no idea which improvements could be add.

Geometry made a great modularious set of necessary things, so, if he'd like it, it is better to make github page for our device with this stuff.
[Asus Transformer TF701] Geometry:
touch support for xubuntu 14.04

So here is an implementation of touch screen support for this xubuntu 14.04 rootfs, thanks to instructions from Trel725.

INSTALLATION:

1. Put the following files into a directory <DIR> in the rootfs:

- xserver-xorg-input-mtev_0.1.13ubuntu2_armhf.deb.gz from this post. This is the touch screen driver package as it works for the tf300t.

- "xorg-conf-mtev-tf701t.tar.gz" (attached) This configuration file lets X associate the touch screen with the driver.

- "touch-wrapper-2.tar.gz" (attached) This includes additional libraries, initiates the rm-wrapper program to link Android libraries, and includes a modified Android linker. Without this, the driver does not work for the tf701t.

2. Assuming you are running the rootfs:

$ cd <DIR>
$ gunzip xserver-xorg-input-mtev_0.1.13ubuntu2_armhf.deb.gz
$ sudo dpkg -i xserver-xorg-input-mtev_0.1.13ubuntu2_armhf.deb
$ cd /
$ sudo tar xvf <DIR>/xorg-conf-mtev-tf701t.tar.gz
$ sudo tar xvf <DIR>/touch-wrapper-2.tar.gz

Now reboot the rootfs and the touch screen should be working.

If at some point the touch screen should stop working you might try to reenable it by issuing this command.

$ sudo service touch-wrapper restart

Most of the content of "touch-wrapper-2.tar.gz" and "xorg-conf-mtev-tf701t.tar.gz" were provided by Trel725.

See this and this post.
[Asus Transformer TF701] Trel725:
Hm, there is libGL and libGLU in archive. That is glshim libs. They're unnecessary, I just forget to remove it from directory :o
[Asus Transformer TF701] Geometry:
improved dock keyboard mapping

It turns out the improved dock keyboard mapping for tf300t also works (mostly?) on the tf701t. Just follow the instructtions in this post. To understand the mapping look at the file "/usr/lib/share/X11/xkb/symbols/asus_tf300dock".
[Asus Transformer TF701] Trel725:
There is two pretty big partitions in our device - mmcblk0p5 (recovery logs, about 1 Gb) and mmcblk0p6 (asus demo, about 0.5 Gb). Yesterday I remove in my android some important files, and couldn't restore it with android tools. So, I installed Ubuntu Core in mmcblk0p5, boot to it and succecfully restore all files. So, that is a great idea, to be able choose partition to boot from. I wrote some scripts (based on rabit's multiboot) to load from bind installed system or input partition name. It's a little buggy, but here it is:
[Asus Transformer TF701] dape16:
Sorry for not understanding the instructions, but after downloadning the "tf701t-xubuntu-14.04-rootfs.tar.gz" file, where exactly should I create the linuxroot directory?

Should I create it in the media folder on the device internal root (/data/media/linuxroot) or on the device internal storage (/data/media/0/data/media/linuxroot)?

From the computer (Ubuntu and Windows) I can only access the device internal storage and not the root directories. Using an file explorer on the device to extract or copy the files to the root directories takes forever.
[Asus Transformer TF701] Trel725:
It should be in /media/data/linuxroot. Using filemanager can be buggy, so recommended way is use terminal:

(go to root mode)

$ su

(go to linux root directory)

$ cd /data/media/linuxroot

(extract archive)

$ tar -xf {path to rootfs}

For example you can put archive to internal storage from your PC, and then use /sdcard/tf701t-xubuntu-14.04-rootfs.tar.gz as a path.
[Asus Transformer TF701] dape16:
Thanks! I didn't think of using an terminal emulator in Android. It worked perfect! Just one thing to notice if someone else is trying the same thing, since it is a .tar.gz-file it has to be extracted with 'gunzip' which gives a .tar-file that then can be extracted with 'tar'.

Great work with getting Linux on the TF701, both of you!
[Asus Transformer TF701] Trel725:
Stable multiboot image with choice menu! It works great for me. It based on bind init by Geometry, and if you do nothing, just load linux from default bind directory. If you press volume down while booting (when see message on screen, you have just one second!), the menu will be opened and you'll be able choose device to boot from, or enter your own.
[Asus Transformer TF701] Trel725:
Today I've ported kexec-hardboot for our device! It wasn't really hard, almost everything work from Nexus 7 patch. So, it is a demo version of multiboot menu. It looking for initrd.img and zImage in /sdcard/Boot/linux or /sdcard/Boot/android. You should just create appropriate directories and copy zImage and initrd.img (extract from android or linux boot images by abootimg -x). Attached boot.img must be flashed instead of android kernel by command

sudo fastboot flash boot boot.img

Also I need help to port multirom to our device. It need huge complete CM source and I can't get it with my slow internet.
[Asus Transformer TF701] Trel725:
A little bit better multi-boot implementation with some more features, such as direct linux booting (from bind directory) and boot from zImage-X like here.
[Asus Transformer TF701] ariadnejro:
The latest boot image works like a charm. Now I can boot Android/Linux and also boot to recovery. Congratulations.

Another thing. Is there a way to run Xubuntu in 1920x1200?
[Asus Transformer TF701] Trel725:
I've thought about decreasing resolution. Unfortunately, I think that is not possible due to Tegra drivers.
[Asus Transformer TF701] @root@:
ArchLinux is the best option. :good:

I have been using Arch on my device for two months and everything is running fine (wifi, bluetooth, keyboard, touch-pad, touchscreen, audio, video). Sadly, the touch screen requires android lib to works. The IRQ function in the touchscreen driver has to be modified to work independently. Also, Linux is missing HiDPI screens support. I have tried XFCE,Mate,LXDE & Enlightenment (lightweight desktops). Enlightenment is the best so far but its efl engine is not working on my device.

could someone try Enlightenment in Ubuntu or Debian? (dont forget libgles2-mesa-dev)
[Asus Transformer TF701] Trel725:
I've tried to build Enlightenment in Arch with gles support. It works, but unfortunately, only with software acceleration.
[Asus Transformer TF701] @root@:
rebuilt it and it is working now perfectly.

update the scale-factor and you will have the best UI for this device.
[Asus Transformer TF701] royredman:
I guess I should read the first post again. My bad. Is the multiboot option included in the information on the first post, or is that just alpha testing right now?
[Asus Transformer TF701] UbuntuBhoy:
Spent the night trying to get something booting but having no luck at all. I have tried Debian & Xubuntu but get the same error on both. I am trying to boot from a micro SD and get the following :-

Gave up waiting for root device. Common problems:

- Boot args (cat /proc/cmdline)

- Check rootdelay=

- Check root=

- Missing modules

ALERT /dev/sd1 does not exist

I then drop to a Busybox shell. I have the SD formated to ext4 and am using the boot_ext.img from the first post.

Does anyone have any pointers on resolving this?
[Asus Transformer TF701] Geometry:
experimental: kubuntu 14.04 rootfs

Download here. To install extract to "/data/media/linuxroot". Boot using fastboot and the attached boot image "boot-media-linuxroot-17.img".

The standard user is "ubuntu" with password "ubuntu", real name "Test User".

what works:

- almost everything including wifi, bluetooth, suspend, touch screen

what does not work:

- left mouse click does not work on some windows: this includes the network settings and activites

This is a very strange error that has been noticed before. This is the reason this post is marked "experimental".

Please experiment, and if anybody finds the reason for this problem or a way to solve it, please post!

To connect via wifi you might call "kde-nm-connection-editor" from the command line.

Kwin seems to work better with the tegra graphics drivers than xfwm4. In particular, graphics corruption after wake up from suspend does not occur, so a workaround as for Xubuntu is not needed. Also, KDE is much more customizable than XFCE. So it allows to better deal with the large DPI of the tf701t screen. In many ways kubuntu seems to be better suited to the tf701t than xubuntu. So, I hope we can get the mouse click issue sorted out!

This rootfs was prepared in a similar way to the Xubuntu 14.04 rootfs, see this post and the repository. The main difference is to install "kubuntu-desktop" instead of "xubuntu-desktop". The kernel used is "3.4.107-cmaalxhb-17" from the repository.

UPDATE: To get OpenGL acceleration to work with KDE you need to replace kwin with kwin_gles. Instructions for doing this can be found here. The instructions are slightly outdated. You do not need the extra step of installing "kde-window-manager-gles" as kwin_gles is already included in standard Kubuntu 14.04. The system settings for switching window manager are at "Default Applications" -> "Window Manager".
[Asus Transformer TF701] ariadnejro:
Thank you for the new rootfs. I will try them when I have the time.

I've been using Xubuntu 14.04 for some weeks and it's working like a charm. Do you reccomend one of the new Kubuntu rootfs you just posted?
[Asus Transformer TF701] Geometry:
If you want something solid and reliable, stay with Xubuntu. Both of the Kubuntus are experimental. If you are ready to experiment and perhaps interested in helping to try fix some problems, give the Kubuntus a try. The 14.04 is basically quite stable as well, and I would recommend it for production over Xubuntu if the annoying left click bug could be fixed. The 15.04 is less stable, and possibly needs more work, but KDE 5 looks awesome...
[Asus Transformer TF701] dape16:
Boot boot image from Android

A simple way to boot Linux would be to boot the boot image from within Android. With apps like Flashify it is possible to flash boot and recovery images but I haven't found any solutions for temporary boot an image. Any ideas regarding this?
[Asus Transformer TF701] Geometry:
You must make sure that the kernel version of the boot image matches the kernel version of the rootfs. The recommended boot images are here in the repository. This Xubuntu rootfs comes with kernel version 3.4.105-cmaalx-15. Use the boot image from the same post or the ones ending in -15 from the repository. Some information in the first post might be outdated. The most up to date information should be the repository.
[Asus Transformer TF701] UbuntuBhoy:
Thanks for that, now all booting and running fine.

I wonder is there a note of an account with sudo access at all?

EDIT : Standard user has sudo access, my bad.
[Asus Transformer TF701] UbuntuBhoy:
Bodhi Linux

I wonder if anyone has considered porting Bodhi Linux. The distro is built on E17 and they have a Nexus 7 build (although I am not sure how up to date it is). Because it is built on E17 it uses the enlightenment profiles such as tablet, netbook, laptop etc and they can be event switched, so if you disconnect the keyboard dock it will go into tablet mode for example.
[Asus Transformer TF701] Geometry:
HDMI output

Surprisingly, connecting an external monitor via HDMI seems to work quite well with the Xubuntu 14.04 rootfs. (But beware of the graphics corruption bug when switching video modes, see the workaround described in the repository.) However, HDMI audio does not seem to work out of the box. Has anybody tried to experiment with that? Perhaps a configuration file is needed?
[Asus Transformer TF701] Geometry:
So you have some idea of what needs to be done to make the mtev driver work natively? That would be great! It seems rm-wrapper is not so stable and is causing some problems when updating packages...
[Asus Transformer TF701] UbuntuBhoy:
Getting a small issue running the Xubuntu rootfs from SD. I installed internally and everything worked really well, but I need the space so decided to go down the SD route. It wont boot for me from the tablet Micro SD slot but boot's fine from the dock SD and appears to work identical to the internal install (same rootfs so you would exepct them to ru the same) except for wifi. I can enable and disable both networking & wireless but no netorks show up. If i check with iwconfig it says wlan0 has no wireless capabilities.

Anyone shed some light?
[Asus Transformer TF701] Geometry:
Look at the advice from the README in the repository:

Did you do the recommended modification of the "/etc/fstab" file? Otherwise /data will not be mounted and the kernel cannot find the wifi configuration file "/data/misc/wifi/nvram.txt" from Android.
[Asus Transformer TF701] Geometry:
kwin_gles for Xubuntu 14.04

It is possible to combine the stability of the Xubuntu 14.04 rootfs with the benefits of the powerful and graphics accelerated window manager kwin_gles from KDE.

Follow the instructions in this video, with one small modification: Instead of writing "kwin" in the configuration file, write "kwin_gles".

Replacing xfwm4 with kwin_gles has the added benefit that the graphics corruption issue of xfwm4 upon resume and change of graphics mode disappers.

Enjoy!
[Asus Transformer TF701] Trel725:
It is really strange that systemd in ubuntu crashes. In Arch it works like a charm.

Also, in 15.04 Mate DE is available. I think it is good idea to try it also.
[Asus Transformer TF701] Geometry:
Maybe it is a simple configuration issue. What I did was just install Ubuntu Core 15.04 + kernel modules + configuration files (see initial part of the Xubuntu installation instructions) and boot it and it didn't give me a log in prompt. In fact, some initial configuration is in "/etc/init/tf701t.conf" which is an upstart script. I am not sure if systemd would call this. If not, then that might already explain the issue. The solution would then be simply to convert this to a systemd script, whatever that means.
[Asus Transformer TF701] Trel725:
Yes, I've used systemd script in Arch. I think that it would be better to stay with Upstart yet.
[Asus Transformer TF701] @root@:
evdev should handle the touch screen input like laptops' touch screen but our driver does not work without a process. I have tested all irq flags but no luck since the interrupter does not responded. Also, I could not find many touchscreen drivers that use SPI (not I2C) and work with an irq interrupter. A manual for the touchscreen that has the technical specification is nowhere to be found. It is difficult (not impossible) to modify or rewrite the touch screen driver without a reference. Initializing the touch screen main variables (version, name, screen resolution, sleep time, ...) is easy and could be done without the android library but the question is how to handle the touch screen input in this driver using the irq_interrupter?

Sadly, rm-wrapper wont work perfectly.
[Asus Transformer TF701] issawillwin:
Hello [MENTION=6136418]Geometry[/MENTION], first of all thank you for all the work you did on that project.

I'm considering make cm12 themes on my tablet, on linux, but i see that a few distro don't have touch working.

Could you tell me wich distro is the most stable, with touch working ?

Thank you for your time.

Envoyé de mon K00C en utilisant Tapatalk
[Asus Transformer TF701] UbuntuBhoy:
I wonder if someone could make an Xubuntu 14.04 recovery that boots from the tablet micro SD as opposed to the dock SD?

I seem to keep having issues with a micro SD in an adaptor in the dock which results in a corrupt card, these could be from the adaptors themselves (I have tried a few) or possibly even movement of the tablet in the dock breaking the connection.
[Asus Transformer TF701] Geometry:
The touch support for Xubuntu 14.04 as described here works quite well in my experience. I have not extensively tested the other distros, but since Trel725 is the one who came up with touch support for our device in the first place, I am sure his implementation of it in the other distros he has provided works as well.

---------- Post added at 14:28 ---------- Previous post was at 14:11 ----------

To use the rootfs on an external microsd card in the tablet slot there are several options:

1. Boot using the boot image "boot-mmcblk1p1-17.img" from "~/prebuilt" in the repository. For this to work the kernel files for kernel version "3.4.107-cmaalxhb-17" must be in your rootfs (as this is the kernel that you will be booting). To be sure, just extract the file "kernel-cmaalxhb-17.tar.gz" from "~/kernel" to your rootfs.

2. Boot using the boot image "boot-sda1-15.img" but use the additional option -c "root=/dev/mmcblk1p1" in fastboot. This works with kernel version "3.4.105-cmaalx-15" which is already included in this Xubuntu rootfs.
[Asus Transformer TF701] giaki3003:
Good but an Ubuntu Mobile version wouldn't be bad, wouldn't it? :D

Good to see Linux Distros being ported to mobile devices!
[Asus Transformer TF701] issawillwin:
Hello [MENTION=6136418]Geometry[/MENTION], I tried to understand the steps to boot Xubuntu from an external micro sd (in the tablet slot) but it looks kinda complicated to get the all this to work. Does booting from microSD needs a PC to do it by fastboot or it can be booted just like that?

Could it be possible for anyone to do a step by step guide to boot Xubuntu from micro sd?

Thanks a lot to everyone who contriubuted to this project, this transformer will be more usefull than ever !

Envoyé de mon K00C en utilisant Tapatalk
[Asus Transformer TF701] Piglo:
Hello!

How do I find the kernel source 3.4.107-cmaalxhb-17 (github_com/Trel725/tf701)?

I tried to apply the patches, but I did not.

I same can not unpack initrd file( abootimg-unpack-initrd .... not in gzip format ), to correct initrd.

By the way what do you think about the project:

github_com/linux-shield/kernel - "This is a temporary project that maintains a version of the Linux kernel that can boot in NVIDIA's SHIELD and TN7."

Shield also based tegra 4 SoC. Do you think it would be easier to use "vanila" kernel instead of blob's Nvidia?

Today the arch is the most stable distribution?

Thanks.