[FAQ] Asus T100: Installing custom OS (android/ubuntu/*nix/Windows 7/Windows 8 x64)

Search This thread

rodion.zissou

Senior Member
Jun 30, 2012
91
10
Let's get back on topic with the Android build for our T100!

Exclamation for excitement, not pushiness.

Sent from my SCH-I605 using Tapatalk
 
  • Like
Reactions: alexismc

KILLplay

Senior Member
Jul 19, 2010
70
5
No x86 UEFI bootloader can't be too bad of a limitation. I'm trying to research it. was there a thread?
 

zombie673

Member
Feb 4, 2008
40
4
Avenel
A little incentive...

With the market flooding with the T100TA, I'm sure that there are going to be a lot of people looking for mods here. I'm throwing $20 to whoever figures out the kinks and gets a viable version of Android working on this machine. I have android tablets and just got the T100. I don't want to need both. We all know the benefits of both OSs and I think that dual booting this model would be make it the ultimate mobile computing tool, especially with x86 dropping their 4.4 release now. Keep up the development guys!!

Also, if anyone is looking for a fitted case, they're now available on ebay for about $20.
 
Last edited:

tydem

Member
May 23, 2010
45
20
Bonn
No x86 UEFI bootloader can't be too bad of a limitation. I'm trying to research it. was there a thread?

There are a few viable x86 EFI bootloaders for our device. Making the T100 dual boot Windows and (desktop) Linux is pretty easy if you install rEFInd onto the EFI partition, and from there you can boot anything including Windows, Linux kernels, and other bootloaders like GRUB2. Sadly rEFInd has a bug (that causes module version mismatch) with 3.13 kernels so booting directly with it is not recommended, it is better to just use it as a main menu and chain grub2 from there.

I tried Arch, openSUSE 13.1 and Kubuntu 14.04 (daily snapshot) and out of those, only Ubuntu and its derivatives recognize the touchscreen. SUSE has issues with the wireless, even after applying a custom kernel with the required modules and firmware. Also, since space is very limited on my 32GB model, with Windows giving me some 4,5 GB after shrinking, I installed Kubuntu into a compressed btrfs partition and placed GRUB and rEFInd on the EFI partition. Then I grabbed the 3.13 rc3 kernel debs from the mainline kernel repo and installed them. Amusingly, the pre-alpha Kubuntu 14.04 is far more stable than Windows 8.1 on this device, however there are a lot of missing drivers. All distributions I tested were 32-bit versions. Here's a list of missing or partially missing hardware features:

Partially working:
Display: efifb works fine if you uninstall the xorg vesa drivers, but is really slow on 3.12 kernels. On 3.13 it's much better, but still nowhere near smooth as it has no GPU acceleration at all. The modesetting driver, i915, does not work on either kernel. On 3.12 it shows a corrupted screen with a flickering bottom part and on 3.13 rc3/rc4 it just shows a blank screen upon setting the kernel graphics mode. So nomodeset is needed to boot correctly as of now.

Wireless: The brcmfmac driver works, but has very poor connection quality, to the extent that NetworkManager always fails to connect with it. With Wicd it is usable, provided the required firmware and nvram are present. (Thanks to lufasponge for providing instructions in this thread)

Touchpad: While the touchpad works, it is recognized as a basic mouse and lacks gesture support.

Not working:
Audio
Backlight control
Suspend to RAM (sleep)
Shutdown and reboot (it just hangs and you need to hold power to shut it down)
SD card reader
Camera
Battery level reporting
Orientation sensor
...and some I might have forgotten.

So to sum it all up the Linux support on this device is really basic, and it is nowhere near ready to be a daily driver. I hope someone can get modesetting on 3.13 to work as I have tried everything and all I got was the choice between a black screen or a garbled one. I will also see if I can get linux-next (the bleeding edge kernel from git) to build and then check if more features work.
 
Last edited:

nemuro

Senior Member
Apr 2, 2010
510
112
Now charging my t100 before first time use.

Glad to see someone is on track to a working android version on this wonderful device. Good job guys!
 

TheMoro

Member
Dec 22, 2013
21
14
The i915 GPU driver does work fine *almost* out of the box for the 3.12 kernels. I havn't tested 3.13 yet, but the problem may be similar. The garbled screen is simply due to an incorrect resolution. It doesn't seem to detect our native resolution right. Using the boot parameter video=VGA-1:1366x768 works, at least when I tested it on Arch. For Ubuntu, the same boot parameter worked, but only for the console.The X session was still bad. From there I had to use xrandr to create a new video mode, and somehow manage to use the (still garbled) screen to access a terminal window. It worked, but I wouldn't recommend it ;) You might also be able to setup an Xorg config to set the resolution on startup.
Just letting folks know, the GPU works at least in 3.12 kernels.
 

zombie673

Member
Feb 4, 2008
40
4
Avenel
So I just went back and read the entire thread. I am an experienced user of Windows and Android and have done a fair amount of tweaking, modding, and rooting and I can honestly say that I am ashamed to have thought I knew ANYTHING about modern mobile computing. Can someone take a minute to put into simpler terms what we are looking at or where things stand for getting a dual boot of android on our machines? It makes me feel like a complete noob to be this lost.

Thanks guys!
 

paperWastage

Senior Member
Mar 18, 2009
1,000
496
NJ
So I just went back and read the entire thread. I am an experienced user of Windows and Android and have done a fair amount of tweaking, modding, and rooting and I can honestly say that I am ashamed to have thought I knew ANYTHING about modern mobile computing. Can someone take a minute to put into simpler terms what we are looking at or where things stand for getting a dual boot of android on our machines? It makes me feel like a complete noob to be this lost.

Thanks guys!

(this below applies for any operating system that you try to put onto the Asus T100)

  1. You need a 32-bit EFI bootloader
  2. You need GPU driver for GPU-accelerated graphics

for basic linux distros, (1) means you need to compile grub2 in 32-bit EFI mode (or whatever your distro uses)
(2) - intel has GPU driver (i915), but it's buggy (as TheMoro mentioned two posts above this one)

for android, we have android-ia and android-x86 distros
(1) is tough, because compiling android is slightly more complicated than playing with ubuntu
(2) android-x86 has i915 support, but dunno if the latest is merged into the android-x86 codebase. right now, buggy as well

I haven't played with my t100 in december... maybe I'll find time this weekend
 

devkon

Member
Feb 11, 2008
22
0
(this below applies for any operating system that you try to put onto the Asus T100)

  1. You need a 32-bit EFI bootloader
  2. You need GPU driver for GPU-accelerated graphics

for basic linux distros, (1) means you need to compile grub2 in 32-bit EFI mode (or whatever your distro uses)
(2) - intel has GPU driver (i915), but it's buggy (as TheMoro mentioned two posts above this one)

for android, we have android-ia and android-x86 distros
(1) is tough, because compiling android is slightly more complicated than playing with ubuntu
(2) android-x86 has i915 support, but dunno if the latest is merged into the android-x86 codebase. right now, buggy as well

I haven't played with my t100 in december... maybe I'll find time this weekend

paperwastage please tell me what i have to do in bcdedit to boot ubuntu 13.10,

i have installed it on internal emmc, installed grub on mmcp2 but nothing work on boot i have an error
with my bcd config.

thanks in advance
 

paperWastage

Senior Member
Mar 18, 2009
1,000
496
NJ
paperwastage please tell me what i have to do in bcdedit to boot ubuntu 13.10,

i have installed it on internal emmc, installed grub on mmcp2 but nothing work on boot i have an error
with my bcd config.

thanks in advance
copy pasty from a post I made somewhere else
once you installed ubuntu into the internal MMC (assuming install to /dev/mmcblk0p5, and boot loader into EFI partition /dev/mmcblk0p2)

you need to fix the EFI partition (remember the bootia32.efi fix for the flash drive? You have to do the similar hack for the internal MMC since the boot loader installater only installed the 64-bit bootx64.efi file to /dev/mmcblk0p2)

  1. Boot back into the ubuntu flash drive.
  2. Mount /dev/mmcblk0p2 onto /mnt/boot/ using root.
  3. copy the bootia32.efi to /mnt/boot/EFI/ubuntu/
  4. copy the /mnt/boot/EFI/ubuntu/grub.cfg to /mnt/boot/boot/grub/ (remember that my compiled bootia32.efi looks for grub.cfg at </root>/boot/grub... this step copies the relevant grub.cfg into the right location)
  5. boot into windows. execute the following commands in cmd with admin access. this step means you chose grub2 to be the default bootloader
    Code:
    bcdedit /set {bootmgr} path /EFI/ubuntu/bootia32.efi

    if you do "bcdedit /v" you'll see the first entry is pointing to the bootia32.efi

    when you restart, you'll see grub2 instead of the windows boot screen
 

paperWastage

Senior Member
Mar 18, 2009
1,000
496
NJ
PM from olymk2 who doesn't have post access to this thread yet

olymk2 said:
okay finally got there here are the options to get a desktop using intel drivers, would you mind posting that some where for other people :)

you may also be intrested in this bug report https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1259099 mentions a file to look out for in the linux kernel, the below is for 14.04 ie ubuntu beta, thought it made sense to use that one and report bugs :)

also noticed sdcard does not work in linux any luck on this front ?

add to linux boot params in grub video=VGA-1:1368x768

create the below then your desktop will work with intel driver

/usr/share/X11/xorg.conf.d/10-monitor.conf

Code:
Section "Monitor"
    Identifier      "T100 Display"
    Modeline 	    "1368x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync
    Option          "PreferredMode" "1368x768_60.00"
EndSection

Section "Device"
    Identifier      "Intel Valley View"
    Driver          "i915"
    Option          "Monitor-DVI-0" "External DVI"
EndSection

Section "Screen"
    Identifier      "Primary Screen"
    Device          "Intel Valley View"
    Monitor	    "T100 Display"
    DefaultDepth    24
    SubSection "Display"
        Depth           24
        Modes   "1368x768"
    EndSubSection
EndSection

Section "ServerLayout"
        Identifier      "Default Layout"
        Screen          "Primary Screen"
EndSection
 
Last edited:

Husky997

Member
Jul 17, 2009
49
9
Krk
Anyone try dualboot or make a Android distro, It is possible or not. And maybe who's try Rom Image from Z27xx smartphones?
Win8.1 killing Android tablets if have a dualboot. Toshiba Encore and T100:)

BTW Maybe ASUS Transformer Book Trio Image works on T100?
 
Last edited:

sarman_1998

Member
Jan 1, 2014
14
25
Boot android-x86 with one thumb drive

First thanks to everyone on this thread! I've been working hard to get android running on this think and all the info here is very helpful!
Here are a few thinks i've found

I figured out how to boot to android with just one drive instead of two.
Short version is, make a second partition on your thumb drive about 300mb ext4. i used a gparted live image to shrink the existing partition and add this new ext4 partition. For me it was /dev/sde2
Next do the step you used to do on the second drive
dd if=android-x86.iso of=/dev/sde2 (be sure to use the correct partition in your case. parted -l should get you a list to guess from)

I know at least parly why the install won't work. I was looking at the scripts under bootable/newinstaller in the source tree and i found when its searching for drives to install on, it is looking for /dev/sda* or /dev/hda*. On the T100, the storage is /dev/mmcblk0p*. I started changed scripts in there but that was a tangent from my main effort so I'm leaving it alone for now.

I've got the i915 graphics driver loading and partly working. It works when i'm still in text mode, but when i start the android graphics up, it switches from 1368x768 to 1024x768 then i just get a blank screen. I'm trying to trace that down now. Currently it looks like gralloc/kms is not passing the native resolution mode.

Eric
 

simkad

Senior Member
Jun 22, 2012
89
29
I've no knowledge about development on windows/android. This is my first win8.1 tablet/laptop.
Thanks for all the effort for bringing android dualboot for t100. Keep up ur good works guys..
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 16
    [4 April 2014]I haven't had time to play with my device or update fully the info in this post
    Jhong2 has an updated post on how to get ubuntu working on the Asus T100
    http://xdaforums.com/showpost.php?p=51291244&postcount=181
    http://www.jfwhome.com/2014/03/07/perfect-ubuntu-or-other-linux-on-the-asus-transformer-book-t100/

    (do search for the specific topic headers to jump to them)
    Post 1: Global Info
    UEFI:
    Bootloader auto-detection path:
    Secure Boot
    Partition Table for Live USB sticks:
    How to boot from USB stick
    Info for various operating systems:
    Hardware info:
    /cpu/cpuinfo:

    Post 2: <backup/ archived infomation>

    Post 3: Files
    grub2 2.00-13ubuntu3 (13.04 raring sources) compiled for grub-efi-ia32 (x86) - bootia32​




    ---------------------------------------------------------------------------------------


    Global information
    for BIOS 214 (2013.09.25), version loaded on retail T100 units

    UEFI:

    Bootloader auto-detection path:
    (bootloader is only 32-bit compatible)
    /efi/BOOT/bootia32.efi
    WILL NOT pick up the x64 location /efi/BOOT/bootx64.efi

    Secure Boot

    You should disable Secure Boot in UEFI/Setup-Utility-Menu-> Security tab-> Secure Boot Menu -> Disable


    Partition Table for Live USB sticks:
    GPT or MBR works
    Use Rufus (works for Windows/Unix ISOs) or Windows 7 USB Download Tool (works for Windows 7 / Windows 8)

    How to boot from USB stick

    NOTE:

    If you don't see the USB drive on the boot list or the UEFI/Setup-utility, this means you have a badly prepped USB live drive, or the boot-list/UEFI/Setup-utility was loaded before the USB drive was read.
    If you are on the boot list, boot into UEFI/Setup-utility. Then, go to the last tab, save changes and restart while holding F2 (to force the next reboot to go back into UEFI/Setup-utility). If you still don't see the USB drive after doing this multiple times, then you have a badly prepped USB drive.

    I find using Rufus (GPT for UEFI + FAT + 64 kb+ bootable disk using ISO Image) to consistently get a working bootable USB drive

    Option 1a) Boot to UEFI USB drive from Windows (works only if your USB is correctly prepped)
    1. Boot into Windows
    2. Swipe from right, click on settings.
    3. Click on Power. Press and hold the shift key, and then click on Restart
    4. A Blue menu should show up. Click on Use a device->click on the device name (might not show up if USB isn't prepped properly)
    5. Device should reboot into the USB

    Option 1b) Boot to UEFI/Setup-Utility-menu from Windows (easiest, and almost no way to screw it up)
    1. Boot into Windows
    2. Swipe from right, click on settings.
    3. Click on Power. Press and hold the shift key, and then click on Restart
    4. A Blue menu should show up. Click on Troubleshoot-> Advanced Options-> UEFI Firmware Settings
    5. Inside UEFI/Setup-Utility-menu, go to the last tab, and select the USB Drive

    NOTE:
    For options 2a and 2b, if you see the ASUS logo and circle loading icon, you either:
    • Pressed button (ESCAPE/F2) too late. Solution: Reboot and try again
    • Have Fast startup enabled, and did the steps with the device in shutdown mode. Windows will cache the kernel/other stuff, and you might not be able to get to UEFI. Solution: Reboot from Windows and try again(reboot does not trigger caching). Or disable Fast Startup


    Option 2a) Boot to UEFI/Setup-Utility-menu
    1. Inside Windows, restart system. Press and hold the F2 key
    2. You should get into the Aptio Setup Utility screen
    3. Inside UEFI/Setup-Utility-menu, go to the last tab, and select the USB Drive

    Option 2b) Boot Menu
    1. Inside Windows, restart system. When screen goes blank, press and hold the ESCAPE key (if you press it too early, Windows might interpret you as cancelling the restart process)
    2. You should get a list of bootable devices
    3. If you see the ASUS logo, you've pressed the ESCAPE key too late. Restart and retry

    Info for various operating systems:

    You should backup the recovery partition to a separate USB key. Alternatively, you can do it with this ASUS utility Backtracker that HatesForums pointed me to

    Windows:



    Windows 8.1

    • x86: (Status: Works but missing drivers)
      Used Windows 7 USB Download Tool or Rufus to create bootable USB. Using en_windows_8_1_x86_dvd_2707392 from MSDN (x86 8.1 Regular & Pro ISO), able to install W8.1 x86 and boot to it (missing a few drivers, eg touch screen doesn't work, no sound). Windows is automatically activated without need for key. First boot had 25.7GB free out of 33.6GB.
    • x64: (Status: Not yet working)
      Used Windows 7 USB Download Tool or Rufus to create bootable USB. ISO does not contain bootia32.efi. Copied that file from the x86 ISO to USB, able to boot, but the installer complains that the processor isn't 64-bit compatible
    Windows 7

    • x86: (Status: unknown)
      ISO does not contain efi
    • x64: (Status: unknown
      ISO only contains x64 efi
    Unix:

    Ubuntu:

    You need an EFI-compatible distro. For ubuntu, x64 EFI is enabled since 12.04-2. However, we'll need to include x86 EFI because our bootloader only reads x86 EFIs
    • 13.04 x64 desktop- (Status: boots to GUI using fbdev)
      Used Rufus(GPT for UEFI + FAT + 64 kb+ raring x64 as bootable disk using ISO Image) to create bootable USB. Copied over the bootia32 to /efi/boot/
      there is a bug in VESA where it queries for a BIOS-only command and crashes. Forcing xserver to use fbdev fixes this problem
    • 13.10 x64 desktop- (Status: boots to GUI using fbdev
      Same problems as 13.04 x64 plus one addition efifb problem
      see post for more details - touchscreen works, but no wifi

    Android:
    • android-ia - (Status: No x86 UEFI bootloader)
      Generic UEFI Installer android-4.2.2_r1-ia3 does not come with x86 UEFI bootloader. it does not use grub, so can't just use ubuntu's x86 grub2 efi. Need to compile it from source
    • android-x86 - (Status: Bootable but slow)
      Uses grub, can piggy-back on the ubuntu x64 13.10 bootia.efi grub. Some workarounds needed, see this post
      external/efitools/Android.mk
      # TODO: support ia32 prebuilt

      ifeq ($(TARGET_KERNEL_ARCH),x86_64)

      arch_name := x86_64


    /cpu/cpuinfo:
    taken from a x64 13.04 live USB
    processor : 0
    vendor_id : GenuineIntel
    cpu family : 6
    model : 55
    model name : Intel(R) Atom(TM) CPU Z3740 @ 1.33GHz
    stepping : 3
    microcode : 0x312
    cpu MHz : 1333.387
    cache size : 1024 KB
    physical id : 0
    siblings : 4
    core id : 0
    cpu cores : 4
    apicid : 0
    initial apicid : 0
    fpu : yes
    fpu_exception : yes
    cpuid level : 11
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
    bogomips : 2666.77
    clflush size : 64
    cache_alignment : 64
    address sizes : 36 bits physical, 48 bits virtual
    power management:

    processor : 1
    vendor_id : GenuineIntel
    cpu family : 6
    model : 55
    model name : Intel(R) Atom(TM) CPU Z3740 @ 1.33GHz
    stepping : 3
    microcode : 0x312
    cpu MHz : 1333.387
    cache size : 1024 KB
    physical id : 0
    siblings : 4
    core id : 1
    cpu cores : 4
    apicid : 2
    initial apicid : 2
    fpu : yes
    fpu_exception : yes
    cpuid level : 11
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
    bogomips : 2666.77
    clflush size : 64
    cache_alignment : 64
    address sizes : 36 bits physical, 48 bits virtual
    power management:

    processor : 2
    vendor_id : GenuineIntel
    cpu family : 6
    model : 55
    model name : Intel(R) Atom(TM) CPU Z3740 @ 1.33GHz
    stepping : 3
    microcode : 0x312
    cpu MHz : 1333.387
    cache size : 1024 KB
    physical id : 0
    siblings : 4
    core id : 2
    cpu cores : 4
    apicid : 4
    initial apicid : 4
    fpu : yes
    fpu_exception : yes
    cpuid level : 11
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
    bogomips : 2666.77
    clflush size : 64
    cache_alignment : 64
    address sizes : 36 bits physical, 48 bits virtual
    power management:

    processor : 3
    vendor_id : GenuineIntel
    cpu family : 6
    model : 55
    model name : Intel(R) Atom(TM) CPU Z3740 @ 1.33GHz
    stepping : 3
    microcode : 0x312
    cpu MHz : 1333.387
    cache size : 1024 KB
    physical id : 0
    siblings : 4
    core id : 3
    cpu cores : 4
    apicid : 6
    initial apicid : 6
    fpu : yes
    fpu_exception : yes
    cpuid level : 11
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
    bogomips : 2666.77
    clflush size : 64
    cache_alignment : 64
    address sizes : 36 bits physical, 48 bits virtual
    power management:


    Hardware info:

    • The microUSB slot is USB-HOST-capable (i.e. with a USB OTG cable or Y cable, you can connect a USB flash drive to the microUSB slot
    • Amazon.de and Asus.de posted a T100 version with 500GB drive on the keyboard base. No pictures yet
    • Internal eMMC, 108MB/s 44MB/s read/write on sequential. CrystalDiskMark here
    • External microSD(HC/XC) reader is NOT UHS-1 compatible. Someone over at liliputing comments posted his atto benchmark

      64GB Samsung microSDXC card came in the mail today, I did some ATTO disk tests using the T100's built-in microSD reader and a USB 3.0 reader from Transcend.

      Unfortunately, it looks like the built-in reader is connected via USB 2.0. It maxed out at 23.8 MB/s read and 17.2 MB/s write, while the USB 3.0 reader maxed out at 71.3 MB/s read and 21.3 MB/s write. The card is rated at 70 MB/s read and 20 MB/s write.
    7
    Android good news and bad

    Well, after a few more very late nights, i was able to get to the android main screen, once. Unfortunately, its completely unrepeatable. After a lot of looking around, I think the main problem is that the drivers for the graphics that are in android-x86 are just not new enough. I did find here, repositories for the latest intel graphics driver sources. https://01.org/linuxgraphics/community?qt-projects_aggregated_links=2.

    However, I talked to a friend at Intel who works on android and according to him, Intel is going to be releasing a public beta for android on Bay Trail in the next 3 weeks. So I'm going to wait for that before I try again.

    If anyone wants to work on it before then, the main change I made to get the i915 driver to at least load and work for text console was in kernel/driver/gpu/drm/i915/i915_drv.c.
    around line 118, change
    Code:
    unsigned int i915_preliminary_hw_support __read_mostly = 0;
    to 
    unsigned int i915_preliminary_hw_support __read_mostly = [B]1[/B];
    I couldn't find another way to change this besides changing the source.

    Here is a pic of the one time i got to the main android screen.

    Android_on_t100_small.jpg
    7
    The i915 GPU driver does work fine *almost* out of the box for the 3.12 kernels. I havn't tested 3.13 yet, but the problem may be similar. The garbled screen is simply due to an incorrect resolution. It doesn't seem to detect our native resolution right. Using the boot parameter video=VGA-1:1366x768 works, at least when I tested it on Arch. For Ubuntu, the same boot parameter worked, but only for the console.The X session was still bad. From there I had to use xrandr to create a new video mode, and somehow manage to use the (still garbled) screen to access a terminal window. It worked, but I wouldn't recommend it ;) You might also be able to setup an Xorg config to set the resolution on startup.
    Just letting folks know, the GPU works at least in 3.12 kernels.
    6
    Made a fair bit of progress.

    Managed to get 3.14-rc2 booting no problem, and grub installed properly, so am booting up normally; it just needs the video=VGA-1:1366x768e parameter.

    Xrandr works fine, so screen rotation will be no problem once we have the accelerometer / orientation sensor cracked.

    I got wifi working using the brcmfmac43241b4-sdio driver, but signal strength was weak. I believe this was because the nvram obtained through nvramtool was not correct; AFAIK (and I'm still learning on this), since uefi is 32-bit, access to uefi / nvram vars is unavailable from within a 64-bit linux. So instead I tried to extract nvram from a uefi shell, and converted the hexdump to ascii. This seems to work much better. I've attached the nvram as brcmfmac4321b4-sdio.txt. This just needs to be copied to /lib/firmware/brcm along with the firmware.

    All ACPI is basically still broken, but I'll see what we can get.

    Sound seems a long way off. ACPI IDs have been added for the "Intel SST audio device" since kernel 3.13, but Intel hasn't provided a driver yet. Haven't looked closely yet.

    It seems someone is working on the battery monitor.

    WYgvptb.jpg
    6
    Iconia8 source

    I started messing with 3.17 kernel to see if anything works better. Had lots of trouble getting my kconfig correct of all things, but looks like some positive progress. 3.17 combined with some code i ripped from iconia8 gives me 100% good wifi and also the eMMC is working much better and is now in HS200 mode. Apparently chip can not enter C6 during eMMC write. This is very difficult to ensure using acpi_idle driver. I have something hacked together by accessing /dev/cpu_dma_latency but it wastes a lot of power and isn't a permanent solution.

    If only I could get backlight control to work :/ Would also be nice to have the two finger scroll function. No scroll on the small screen is a serious pain.

    Edit:

    Have a reasonable solution to the c6 wake lock. Also got some backlight control working. Can adjust, still missing stuff for completely turning it off/on. Code here on top of vanilla 3.17. https://github.com/jonpry/t100_patches Doesn't include battery, everything else works pretty good. I wrote couple hundred GB to eMMC without error. No problems with wifi either. I think there is one more eMMC patch we need but only effects samsung chips which i apparently don't have. Use included kconfig or you will have problems!