Linux on TF300? - Transformer TF300T Q&A, Help & Troubleshooting

Hi Guys,
I am looking for linux working on TF300T, is there anyone who has anything working? I am planning to start with linux for TF300T, I want to know if anyone has tsarted, how do I collaborate and not reinvent the wheel. I have questions regarding what bootloader to use, lilo / grub / u-boot as Nvidia has a ubuntu distribution for its chip, which uses U-boot. Lot of questions can any dev please reply, so I can think of a place to start.
Thanks
Sent from my ASUS Transformer Pad TF300T using xda premium

So far I'm quite satisfied with my android linux device ( with some chroot debian thrown in for good measure).

I'm wondering about this as well. I've got some experience with linux (servers) but not a clue how the android boot structure works.
I have found this though: http://eeepadhacks.net/transformer-hacks/how-to-install-native-ubuntu-on-eeepad-transformer/

Not to spam, but does anybody have *NIX running on the TF300? I'm very interested since Android is based on the Linux kernel, so I would think that there is some form of *NIX running on this device, since I'm hoping that there is so I could actually use this as a "laptop" for my school work.

I am fairly sure that Android is Linux. However what people are missing is the GNU environment (and tools) that the majority of the Linux distributions have. You can see that Android/Linux is vastly different from GNU/Linux.
Thus, I think the question becomes something like "Is there anyone who has GNU/Linux working on the TF300T?"
There are two methods I know of to get GNU/Linux running on Android: Chroot and Dual boot.
* The chroot method runs the linux services and programs inside Android, but is available for basically most devices.
* The dual boot method works (mostly) with the original transformer (as Citruspers has mentioned)
I myself don't have a tablet yet, but I have been looking to get a TF300T (if I don't buy a TF700T - but that is for another discussion) on the basis I can dual boot Android with a GNU distribution.

Linux = kernel. Android runs a Linux kernel. Android IS Linux.
The two biggest differences between Android and "ordinary" Linux distributions are libc (called bionic in Android) and the lack of a real X server on Android (there is a Java version at https://code.google.com/p/android-xserver/ , but it's wayyyy too slow to get anything done (it's still awesome, though). It needs to be implemented in a lower level language).

/dev/void said:
Linux = kernel. Android runs a Linux kernel. Android IS Linux.
The two biggest differences between Android and "ordinary" Linux distributions are libc (called bionic in Android) and the lack of a real X server on Android (there is a Java version at https://code.google.com/p/android-xserver/ , but it's wayyyy too slow to get anything done (it's still awesome, though). It needs to be implemented in a lower level language).
Click to expand...
Click to collapse
Any chance Wayland will work any better with Android than X? I wouldn't mine tossing a *box or even WindowMaker on my tablet (assuming they play nicely with Wayland).
Edit: Yes, I realize that Wayland barely works with GNU/Linux as it is, and it probably won't be usable even on the desktop until I'm upgrading to a new tablet. I'm not expecting it anytime soon.

Extracted from http://androidroot.mobi/2012/06/17/ubuntu-on-the-transformer-prime-preview/ regarding Ubuntu on Prime 201...
It has been a while since the last post about ubuntu on the Transformer Prime. This post is going to explain a few of the new changes, and show a video preview of the system in action.
There have been a few changes since the last update:
3.1.10 Kernel -- Asus don’t update the kernel while remaining on the same android major release, so they won’t update the kernel until at least Jellybean, but we have worked really hard to bring us up to the latest kernel. This has given us the ability to use the latest Tegra ULP GeForce binary from nvidia and maintain acceleration with the latest releases.
Linux as a bootloader -- With some work to the process we have managed to get kexecboot working to give us a boot menu that will boot not only multiple kernels from eMMC, but also to allow booting from USB, SD, and MicroSD. At this point in time the guest kernel also requires two patches, one for speed (it is really slow to boot without this patch, 30sec-5minutes) and the second to copy ATAGS, this second patch is important so that the new initrd and command line get used.
Ubuntu 12.04 LTS -- The last image was 11.10 which is a little less stable. 12.04 has a new gpower applet which can read the battery levels. 12.04 also includes the mtrack driver allowing the trackpad to work. The biggest change with the new image is the use of armhf over armel.
LVM -- Turning mmcblk0p8 (/data under android) to an lvm volume group has allowed both android and ubuntu to coexist on the eMMC without needing nvflash for reformatting. This however does require a modification to the android initrd to reflect the change and for the lvm binary to be included so it can mount /data. Ubuntu natively supports booting from logical volumes.
Click to expand...
Click to collapse
I know, I know this is TF300 forum, but it seems the TF300 is more similar to the TF201 than the primitive TF101

EndlessDissent said:
Any chance Wayland will work any better with Android than X? I wouldn't mine tossing a *box or even WindowMaker on my tablet (assuming they play nicely with Wayland).
Edit: Yes, I realize that Wayland barely works with GNU/Linux as it is, and it probably won't be usable even on the desktop until I'm upgrading to a new tablet. I'm not expecting it anytime soon.
Click to expand...
Click to collapse
Good call. While we're on the desktop managers, how about KDE's entry in the mobile device space? Aren't they supposed to have a native linux tablet going to retail soon?

My chroot runs smooth but native would be fun! Hope someone get's this working.

I hope once the guys at androidroot.mobi release the installer package for Ubuntu for the Prime, it works on TF300.

I'm looking for the ubuntu on my tf300t too.
Its strange, I know Ubuntu showed off dual booting kernel for android devices like 6 months ago. You basically docked your phone and it became a full Linux desktop with unity. But haven't heard anything since, only a page on Ubuntu's site for hardware manufacturers.
http://www.ubuntu.com/devices/android

(Sorry to revive this old-ish thread, but I didn't think it was any better to start a new one and clutter up the forum)
It seems that no one gave an honest shot into loading linux NATIVELY (not via the "linux on android" project). The original poster mentioned being interested into giving it a shot -- so how things are going on your end aditya?
I am by no means an Android rom developer, hacker, or even linux hacker, but I started my first steps into it, I thought of getting things done by this method:
Instead of wiping the whole recovery partition like the guy on the TF100 did, i'd use a somewhat altered version of a recovery where I launch a recovery-like menu where the user can continue to the "real" recovery, or boot linux
(Basically, I got myself a version of the /sbin/recovery, which has its menus altered to only show "linux" or "recovery". Selecting recovery launches the real /sbin/recovery)
If the user choose to boot linux (which could be automatically selected after a timeout), that's where kexec steps in and boots the right kernel and linux pre-baked image files
I got all that covered (my pre-recovery menu is 90% working, custom kexec'd kernel w/kexec binaries packed into my recovery), but i forgot a small detail: There is no way I could load a full 1Gb Ubuntu image into memory, (in other words, what does happen to the old mount points managed by the first kernel when I load the second kernel via kexec? Gets broken, right?) So I came into realization I would need an initial ramdisk to mount my mmc so I could finally load/mount my main 1 Gb image file.
Honestly, for somebody not into hacking, I am under the impression this is getting out of hand. This could work, but I heard we could have nvflash fully working (read: re-paritioning coming our way, just like for the TF100 where there's linux natively on its own partition).
Is there anybody else trying to do such things like I do? I might also need a reality check on what i'm doing-- altough it seems the right way to me now

Linux and GNU
It's true, Linux is the OS kernel, but with the word Linux you can also mean the GNU/Linux environment with the kernel and all the applications running on top ("The gimp" or "Libre Office" for example).
Should be nice to have a GNU/Linux system running on a tablet device; I read that Canonical (Ubuntu) is working on a project for multi-core devices but I don't know about the development stage.
/dev/void said:
Linux = kernel. Android runs a Linux kernel. Android IS Linux.
The two biggest differences between Android and "ordinary" Linux distributions are libc (called bionic in Android) and the lack of a real X server on Android (there is a Java version at .... , but it's wayyyy too slow to get anything done (it's still awesome, though). It needs to be implemented in a lower level language).
Click to expand...
Click to collapse

Trying to make this work too.
I have a basic changeroot with gentoo and compiled a kernel and initrd. I wanted to try it out using fastboot (fastboot -i 0x0b05 -c real_root=/dev/sdb1 boot kernel-genkernel-arm-3.3.8-gentoo initramfs-genkernel-arm-3.3.8-gentoo) but it doesn't even try to load the kernel. I get an error 0x120000 on the screen of the TF300. I googled a bit and found out that the TF201 has the same problem, you have to flash a boot image.
How can I make a boot image using the gentoo files? I looked into abootimg but it seems it won't work. At least it won't split up the original images, so I fear it uses another format. Has anybody tried mkbootimg?

AEblefisk said:
I have a basic changeroot with gentoo and compiled a kernel and initrd. I wanted to try it out using fastboot (fastboot -i 0x0b05 -c real_root=/dev/sdb1 boot kernel-genkernel-arm-3.3.8-gentoo initramfs-genkernel-arm-3.3.8-gentoo) but it doesn't even try to load the kernel. I get an error 0x120000 on the screen of the TF300. I googled a bit and found out that the TF201 has the same problem, you have to flash a boot image.
Click to expand...
Click to collapse
I only know a part of the story here, but here's my findings so far. I never got "fastboot boot" to work on my TF300, always giving me that 0x120000 error. I am under the impression (I MAY BE WRONG) that "fastboot boot" requires a more devloper friendly device (think HTC G1, GNex, anything Google branded).
That being said, I am curious why you wrote "real_root=/dev/sdb1" as your kernel parameters
AEblefisk said:
How can I make a boot image using the gentoo files? I looked into abootimg but it seems it won't work. At least it won't split up the original images, so I fear it uses another format. Has anybody tried mkbootimg?
Click to expand...
Click to collapse
Personally I was able to look at how a recovery image was used and flashed onto a TF300. Without going into the details, I looked at how xplodwild's recovery was being made, and hacked around that recovery to use my own (basically trivial modifications from his).
To flash my image files, I am using "fastboot flash recovery" with my own recovery, which is basicaly a mkbootimg based image file like you said (you were on the right track), but wrapped around in a BLOB file format (using blobpack / blobunpack, see this xda thread).
So to answer your question, the only way I found so far to boot my custom kernels and init rootdisks is to flash it onto the device outright.
BTW: if you were to look at a pre-baked img file, (or, if you had no idea whats the file contents like), you could load the file into a hex editor (I use 'hexer' on ubuntu/debian, thats a command-line one). If you see "SIGNED-BY-BLOB", thats a blob file (a nvidia tegra and/or asus file format). If you see something else (usually starting with "ANDROID.."), thats usually something you can either mount or unpack using linux natively (most probably with "mount -o loop file /mnt/mountpoint")
EDIT: Slightly off topic, but still for AEblefisk: if you compile your own kernel, i suggest turning on activating the framebuffer tux logo option. More importantly, you could as well try and activate the framebuffer console too, however apparently "fbcon is broken on 2.6.39.4", so says Rayman. But at least, you'd get a hint that your own kernel is loaded and running if you see 4 tuxes on screen (one per core)

Thanks for pointing me in the right direction.
Now I managed to make a blob with the gentoo kernel and ramdisk. It flashes sort of OK with fastboot, sending in 2 seconds, but the write time is 0.016s and it seems nothing is written. I boot into Android when I reboot. (I'm flashing to boot, not recovery). Maybe I'm missing some offset or blocksize parameters?
bilange said:
...
That being said, I am curious why you wrote "real_root=/dev/sdb1" as your kernel parameters
...
EDIT: Slightly off topic, but still for AEblefisk: if you compile your own kernel, i suggest turning on activating the framebuffer tux logo option. More importantly, you could as well try and activate the framebuffer console too, however apparently "fbcon is broken on 2.6.39.4", so says Rayman. But at least, you'd get a hint that your own kernel is loaded and running if you see 4 tuxes on screen (one per core)
Click to expand...
Click to collapse
The real_root is for the gentoo initrd to find the real root filesystem on microSD. I have no idea if it will turn out to be mmcblk1p1, sdb1 or something completely different. I'll probably have to correct that once my initrd boots.
Yes I'm definitely trying to make the framebuffer logos work. Seeing that lineup of 4 tuxes is a goal in itself
I'm using 3.3.8 in gentoo so I hope fbcon is fixed.

AEblefisk said:
Now I managed to make a blob with the gentoo kernel and ramdisk. It flashes sort of OK with fastboot, sending in 2 seconds, but the write time is 0.016s and it seems nothing is written. I boot into Android when I reboot. (I'm flashing to boot, not recovery). Maybe I'm missing some offset or blocksize parameters?
Click to expand...
Click to collapse
I never touched boot so far to tinker around Linux booting, for the simple reason we never use the recovery partition except to flash/nandroid backup (which I rarely do), plus it gave me with Android booting if I dont press the volume button on startup. As far as development went, I think this was a win/win situation, although lilstevie (the guy who did make Ubuntu boot natively on his TF101/200) told me to "never touch recovery, flash boot instead", he was most probably talking about deploying our custom OSes to the world to use.
Now i'm kinda lost as to why the regular Android boot is being shown up. Having 0 experience with the boot partition (which i thought was similar to recovery), i can't really help you. Maybe you should get on freenode into the #asus-transformer and ask around (Don't let the numbers of nicknames scare you, this is a low activity channel, but the most knowledgables people are hanging in there. Just be sure to do your homework (aka Google etc) before asking, you should be fine )
As a sidenote, you should probably use some (most?) of the kernel parameters used in /proc/cmdline from a live Android OS. Most specifically the "tegraboot=sdmmc gpt gpt_sector=..." part. This makes sure your kernel reads the partition table at the right (unusual) location instead of reading where ever it was on a regular system (the first 512 bytes of the drive? don't quote me on this). I suppose this doesn't prevent the kernel from booting, but it will make the SSD partitions visible from your OS.
AEblefisk said:
The real_root is for the gentoo initrd to find the real root filesystem on microSD. I have no idea if it will turn out to be mmcblk1p1, sdb1 or something completely different. I'll probably have to correct that once my initrd boots.
Yes I'm definitely trying to make the framebuffer logos work. Seeing that lineup of 4 tuxes is a goal in itself
I'm using 3.3.8 in gentoo so I hope fbcon is fixed.
Click to expand...
Click to collapse
Would that be a 'vanilla' 3.3.8? I'm asking because, in case you don't know, I think you can't have much success using the regular kernel from kernel.org, and hope it will detect all the devices (specifically touch, sensors, wifi, gps(?), etc). It will maybe boot (your guess is as good as mine), but it will surely lack a few things here and there. That's why there are a ton of devices specific github kernel code base here and there: it's basically a 'stock' kernel source code, with the constructor's additions to make their various devices work, with community enhancements on top of all that. I may be wrong on the following (if there are any veterans reading this, feel free to call me a noob and point me to the right direction), but if you try to compile ASUS' kernel source code for the TF300, funnily enough everything compiles silently UNTIL it gets to the Tegra parts where it gets noisy with over 9000 warnings all along (but it compiles). That led me to believe that 1) NVidia or ASUS are lousy coders and 2) They added (most likely) OR modified a bunch of code to the stock kernel tree to make it 100% functioning on their devices.
All that wall of text only to say that I assume that the broken fbcon issue is most probably due to either ASUS/NVidia additions to the kernel code, or a bug from the 'stock' kernel code, and i'm assuming it was fixed in later versions (which lacks device's constructor modifications then again).
--
Offtopic: it seems ASUS has released the kernel source code for TF300 for their JB update! Compile all the things!! (And hope fbcon as been fixed so I can see something out of the screen)

I'll definitely do my homework now I'm worried I may have flashed some other place than boot, since Android is still booting, so now checking all corners of the tablet is on top of the agenda.
I know some things may not work with a vanilla kernel, but I was hoping enough would work for it to boot. Then I could worry about the rest afterwards. Maybe using the JB kernel source will be easier, but I don't know how much has been changed in android which is used in linux. I suspect Google has worked more on modifying linux for android use than ASUS has worked to make their hardware run in android. Another option is to work on what Nvidia has published.

Now I'm getting more experienced. I hope I get some real progress before I brick it
It turned out I wasn't writing anything to flash. It seems the first blob(un)packing tools mentioned in http://forum.xda-developers.com/showthread.php?t=1697227 aren't working (for me on my tab anyway). But when I tried the BlobTools2 with the blobpack -s option my resulting linux blob was written to flash (using fastboot -i 0x0b05 flash boot boot.img).
Unfortunately my gentoo linux kernel wasn't any good. I never got past the first Asus logo and on top of that CWM recovery couldn't restore Android. CWM went through the motions but nothing booted. I had to flash the stock blob, then I got my Android back.

Related

Native Linux

I know the linux and android kernel are different, but not much if you can already chroot into ubuntu. My question is, how do I make/compile a kernel that can boot with Ubuntu NATIVELY? Not chroot, but flash to the internel memory (maybe have to cut some bloatware out for it to fit). Or could I even just use a kernel from android?
I have wondered the same thing! I would love to turn my old Evo into a dedicated BT5 device! No need for Android OS as it just slows down BT5. I am interested in looking into that but and not sure exactly atm.
I get the impression this would be a 10x greater effort than a build of Cyanogenmod.
How so? To my understanding, TECHNICALLY we could have cyanogenmod 6, correct? Since we have froyo source...but thats not the point. With a stripped down linux distro (768mb if we could merge data and system partitions together), and a kernel built for the phone (linux kernel, not android) it should be COMPLETELY possible. My question atm is, how could I compile a kernel compatible with linux (or will the android one work)?
You mean something like this?
http://forum.xda-developers.com/showthread.php?t=892877
No, thats the chroot+vnc method. Basically that runs android in a vm, which is not what I am talking about. I mean installing linux to the internal memory, completely removing android. That way linux could use all 512mb of ram, the only downside is losing android.
ugothakd said:
No, thats the chroot+vnc method. Basically that runs android in a vm, which is not what I am talking about. I mean installing linux to the internal memory, completely removing android. That way linux could use all 512mb of ram, the only downside is losing android.
Click to expand...
Click to collapse
I think that would run a heavy risk of bricking the device since you'd have to overwrite the entire memory.
Maybe, but if you just flashed the root file system to the system (256mb), you would still have the bootloader recovery etc. partitions. Or I'm not exactly sure, maybe delete the data and system partitions and create a new 768mb partition. The only problem is I cant find anything to handle the partitions, fastboot is the closest, and fastboot doesn't work/isnt supported.
You're delving into an area that already has been delved in before. Considering the fact nobody has gotten this working ever, I would go so far as to say you're wasting your time. By all mean have at it, but keep in mind you will need a linux kernel modified in such a way that it will completely support this hardware or it would be useless. Good luck to you!
Sent from my SPH-D700 using XDA Premium App
http://blogs.sonyericsson.com/wp/2011/05/06/how-to-build-a-linux-kernel/
^^^That is the type of kernel suitable for a distro like Ubuntu, correct? Building a kernel with the samsung sources using that guide, should give me a kernel that can be used with linux, correct? I don't see why it is so hard... If you can port linux to a device such as the hd2 whats so different about running it on the epic? Linux and android are very close... the only problem I'm having is finding a way to get a .img to the device.
thomasskull666 said:
You're delving into an area that already has been delved in before. Considering the fact nobody has gotten this working ever, I would go so far as to say you're wasting your time. By all mean have at it, but keep in mind you will need a linux kernel modified in such a way that it will completely support this hardware or it would be useless. Good luck to you!
Sent from my SPH-D700 using XDA Premium App
Click to expand...
Click to collapse
not to mention a few of the drivers are closed source and aren't likely to be compatible with any other kernel version be it one of samsung's kernels or one from linux.....that isn't to say it is impossible but definitely a hurdle
ugothakd said:
http://blogs.sonyericsson.com/wp/2011/05/06/how-to-build-a-linux-kernel/
^^^That is the type of kernel suitable for a distro like Ubuntu, correct? Building a kernel with the samsung sources using that guide, should give me a kernel that can be used with linux, correct? I don't see why it is so hard... If you can port linux to a device such as the hd2 whats so different about running it on the epic? Linux and android are very close... the only problem I'm having is finding a way to get a .img to the device.
Click to expand...
Click to collapse
the first line of that article..."Since the launch of the unlock boot loader site, we have received a lot of really great feedback."
we do not have a modified boot loader and our bootloader is a 2 stage process...i believe the first one is efuse protected...which unless exploited cannot be modified...i'm not sure what kind of checking is done to the secondary bootloader..but one mistake with either of these files you have yourself an expensive paperweight that odin will not fix (no download mode)
edit: i see that site goes on to talk about rebuilding the kernel but still important to remember that stuff about our bootloaders
So even if the kernel worked, the drivers were perfect (which wouldn't be, I know that) and I somehow got an image to the phone it wouldn't boot because of the bootloader?
http://forum.xda-developers.com/showthread.php?t=933667
It can be done but it's not an easy task. This guy has Ubuntu natively booting on the Galaxy Tab.
He's been working on it for a long time and I still don't think it's anywhere close to fully functional, it probably never will be.
Ubuntu + Mobile Phones just weren't meant to be. However.. as this shows... if you devote enough hours to something, anything is "sorta" possible.
There's a thread in the fascinate forum that's relevant to this, about building jigs.
The issue is, as you mentioned, the bootloader. Apparently, it is much like the BIOS on a PC, where you have the option to boot up from different sources. However, our bootloader has those options removed (it actually might have been disabled by hardware, but I can't remember), and only includes normal bootup, recovery kernel, and the kernel/partition that handles download mode.
Obviously you know all this. The developer there is working on a solution, and it could end up being either a software or hardware hack. I suggest you search for the thread (I would if I wasn't on my app).
However, this is relevant because his goal is different than yours, but will most likely be your solution. Rather than modifying the bootloader to handle a larger partition or a linux kernel, it would be easier to get the bootloader to do something it was intended to do back at the factory: boot from USB. There are unused pin configurations that were meant for this, and if enabled could allow a lot of possibilities. Booting ubuntu would be just the tip of the iceberg.
The developer actually has gotten as far as getting a boot log from the very first, barebone bootloader (whatever the acronym is), and shows it searching for usb host or whatever. I'm gonna see if I can dig up the link.
EDIT: er, maybe not fascinate forum, I'm having trouble finding it
Sent from my SPH-D700 using XDA Premium App
Try searching for the SGS Ubuntu attempts. I know that someonne in #ubuntu-arm has gotten it to a usable state on his SGS. However, be prepared to lose functionality.
Question is why. There won't be an accelerated X server, and if you are looking to target a embedded linux surely there are better systems out there. You'll also have to deal with the keymappings afaik because that's apparently dealt through system_server via keymaps, and not the kernel.
-- Starfox
Starfox said:
Question is why.
-- Starfox
Click to expand...
Click to collapse
Hacker Mantra: Cause you can
Why climb Mt. Everest? Cause you can.
Why put linux on every device out there? Cause you can.
tyl3rdurden said:
Hacker Mantra: Cause you can
Why climb Mt. Everest? Cause you can.
Why put linux on every device out there? Cause you can.
Click to expand...
Click to collapse
True that, it is pretty damn adaptable that's for sure.
Sent from my SPH-D700 using XDA Premium App
haha found it!
relevant http://forum.xda-developers.com/showthread.php?t=1065318
I own a tegra 2 device that can boot BT natively, I know it's nowhere close to our chipset but perhaps it could lead somebody with the right skillset down this road for the Epic; http://forum.xda-developers.com/showthread.php?t=1075054

[DEV] Lenovo Ideapad A1 Kernel Development/Testing

Warning/disclaimer: This thread is intended for those who already know how to compile a kernel and have a working knowledge of Linux and its derivatives. There shouldn't be a great deal of risk involved, but you are responsible for what happens if you decide to follow these instructions.
Polite request: Please don't post replies to this thread that aren't of a technical nature directly related to compiling, modifying, or testing the kernel.
Introduction:
It appears as if Lenovo have released a buildable and bootable kernel source. I've done some preliminary testing with it. However, it would be better if we could get lots of people building and running the kernel, so that we can spot any remaining problems. This is also an opportunity to start hacking it to add/fix features such as USB OTG, etc.
Kernel source:
Get it from the Github repository at: https://github.com/gmarkall/lenovo_a1_07_kernel
Toolchain:
The Makefile seems to suggest that Codesourcery 2010q1 has been used by Lenovo to compile the kernel. Get it from https://sourcery.mentor.com/sgpp/lite/arm/portal/release1293, and make sure that the arm-none-linux-gnueabi-* binaries are on your path.
Building the source:
You may wish to edit the Makefile around line 192 to set CROSS_COMPILE=arm-none-linux-gnueabi- instead of the hardcoded path that is the default.
Then, to build the kernel:
Code:
make distclean
make a1_07_defconfig
make uImage
Booting the kernel
Normally, Android devices have two boot images that consist of a kernel and a ramdisk. One boot image is for the recovery, and the other is for the Android system. This makes it safe to flash a new boot image containing an untested kernel for the Android system, since the recovery can always boot up using the other boot image. However, the A1, by some bad design decision, only has one kernel - the bootloader always loads the same kernel, and just loads a different ramdisk depending whether it is to boot into recovery or system. As a result, it is not safe to flash a kernel to your A1 unless it's already been tested, since a bad kernel will make it impossible to boot from the internal memory, and you'll need a bootable SD card.
The solution to this problem is to make a bootable SD card for loading the kernel and ramdisk from. A bootable SD card consists of two partitions:
* A small bootable VFAT partition, that holds the X-Loader (MLO), U-Boot (u-boot.bin) and the kernel (uImage).
* An ext2 partition that holds the root filesystem.
In order to create a bootable SD card, use the omap3-mkcard.sh script that is attached below. To invoke it for making /dev/mmcblk0 a bootable SD card:
Code:
sudo omap3-mkcard.sh /dev/mmcblk0
You may need to hack the script if your SD card device isn't a /dev/mmcblk* one, since the script searches for partitions denoted "p1" and "p2" - this may need changing to just "1" and "2" respectively (thanks Xbdesign and Brancaleone for this).
This will create the necessary partitions, set the bootable flag, and format them. You will then need to mount the first partition (e.g. /dev/mmcblk0p1), and copy MLO and u-boot.bin to it (also linked below). Then, copy the uImage that you built from your kernel tree, which will be located in /arch/arm/boot. You can now unmount this partition.
Next, mount the second partition (e.g. /dev/mmcblk0p2). This will need to contain the same set of files that the initial ramdisk contains. There are two different ramdisks that you might want to use - one is from the Cyanogenmod 7 build, and the other one is from the stock system. Download links for these are also below. To extract the ramdisk, copy it onto the SD card second partition, then run the following commands (assuming the ramdisk is called ramdisk.ub):
Code:
dd if=ramdisk.ub of=ramdisk.img.gz bs=64 skip=1 # Strip off the U-Boot header
gunzip ramdisk.img.gz # Unzip
sudo cpio -idmv < ramdisk.img # Extract the cpio archive
Then, unmount the second partition of the SD card.
You should now be able to remove the SD card and insert it into your A1. Power down the A1 and power up again, and it should hopefully boot from the SD card and load your kernel. If it's booted from the SD card and loaded your kernel, you should be able to see that it was compiled on your host by looking in Settings -> About Phone -> Kernel Version.
Troubleshooting:
This is not a comprehensive guide, just a few pointers to where a problem might be - please post replies to the thread to get troubleshooting suggestions.
System boots up, but is not running my kernel - it didn't boot from the SD card. If the A1 is plugged into the charger/USB, you sometimes need to reboot multiple times before it boots off the SD card (I think it doesn't always turn off fully when the charger is plugged in).
The static Lenovo logo flashes up over and over again - it's booted from the SD card, but didn't manage to load your kernel
The static Lenovo logo comes up and stays there/goes to a black screen - it's probably loaded your kernel and mounted the root file system, but failed to mount /system. Try running adb shell to see what happens. If you get something like
Code:
/system/bin/sh: no such file or directory
then your kernel is running but /system isn't mounted.
IRC Channel
Join #ideapad-a1 on irc.freenode.net to discuss the kernel and other A1 development-related topics!
Download Links:
MLO
u-boot.bin
omap3-mkcard.sh
Ramdisk for Cyanogenmod 7
Ramdisk for ROW 2643 stock release
I've added the two ramdisks that I suspect will be most common - if you need another ramdisk, you'll have to extract it from an OTA.
Also, I compiled a tun.ko - www.doc.ic.ac.uk/~grm08/ideapad/tun.ko
Here's a cifs.ko - http://www.doc.ic.ac.uk/~grm08/ideapad/cifs.ko
EDIT: AutobahnA1 and infraredevans have confirmed that tun.ko works on ROW_2643.
EDIT 2/3: Please test out cifs.ko! (It doesn't work - it needs slow-work.ko. Will get that done when I can. Thanks to Ilikecokethree on the Lenovo forums for pointing that one out).
你懂中文吗,大神!
我是中国人 关注你的帖子很久了,我不懂英文,用翻译软件看的大概,我们这里很多人支持你,都在用你的rom 很棒!比联想官方的好多了,谢谢!
I think I did exactly the steps as you told, but it still boots the original kernel, may something be wrong? Thank you very much.
PS: I'm a chinese too, and my English is not good either
gmarkall said:
This is also an opportunity to start hacking it to add/fix features such as USB OTG, etc.
Click to expand...
Click to collapse
Please do not forget to try the WiFi-based geolocation, which is also missing!
I wish I had the knowledge to work on it myself but I am far from taking over such tasks...do not have the slightest idea about how these things work.
Good luck and please keep us informed!
geoponer said:
Please do not forget to try the WiFi-based geolocation, which is also missing!
Click to expand...
Click to collapse
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
betabox said:
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
Click to expand...
Click to collapse
Also, it's working in CM7.
hohoxu_hao115 said:
I think I did exactly the steps as you told, but it still boots the original kernel, may something be wrong?
Click to expand...
Click to collapse
Sounds like it's booting from eMMC instead.
Can you post the partition table of the SD card as listed by fdisk, and also a directory listing of each of the two partitions? I ask this to confirm what's happened - seems like you're the first person to follow these instructions, and it's quite possible I made a mistake somewhere.
betabox said:
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
Click to expand...
Click to collapse
Apologies for the off-topic, but I think that we are discussing two different things here: I am referring to the Geolocation bug, which prevents me from e.g. checking in with Foursquare by using only WiFi location information (active GPS signal is needed) while you have solved the Geocoding bug, which has nothing to do with the Geolocation one...
Please correct me if I am wrong.
@Graham: I plan to install the CM7 that you have been working on (with the feedback from other users - I keep an eye on that thread!) but since I use my A1 for professional purposes as well, I would like to make sure that everything is working fine before moving to CM7. Apologies for not being able to contribute to the beta testing of CM7 but I am really looking forward to seeing a version based on the source code provided by Lenovo, which I think will lead to a more stable version of your CM7. I cannot thank you enough for taking the time to work on this, really!
geoponer said:
Apologies for the off-topic, but I think that we are discussing two different things here: I am referring to the Geolocation bug, which prevents me from e.g. checking in with Foursquare by using only WiFi location information (active GPS signal is needed) while you have solved the Geocoding bug, which has nothing to do with the Geolocation one...
Please correct me if I am wrong.
Click to expand...
Click to collapse
I think that whether it works in CM7 or not, it almost certainly isn't a kernel issue. I'll test it by signing up for Foursquare and give it a try out on CM7 to see if it works later on. Will post my findings in the CM7 thread.
Hi Graham,
just gonna pile up several questions/thinkings and feel free to comment them the or answer on your liking
We do have few hickups on CM7 but I am more excited about idea of having proper recovery then ironing current CM rom that works more than satisfactory right now. Do we have enough code (I assume that target here is u-boot) on our hands that someone can implement necessary changes to internal partitions and boot procedures?
what is your opinion on replacement of u-boot with something else? for example LK loader or to be more precise with its current HD2 implementation known as cLK. it allready has some neat features like HBOOT like GUI, ability to change partition sizes on device itself (without computer), ability to boot from different partitions (would be nice to have android and ubuntu side by side loaded on our devices) and last but not least it has fastboot support enabled...or is it better way fill up u-boot with desired features if possible?
so...just my wishful thinking...not enough knowledge on my side to do anything regarding all this just hoping that some of you, more capable guys gets interested in this
dusko_m said:
Hi Graham,
just gonna pile up several questions/thinkings and feel free to comment them the or answer on your liking
We do have few hickups on CM7 but I am more excited about idea of having proper recovery then ironing current CM rom that works more than satisfactory right now. Do we have enough code (I assume that target here is u-boot) on our hands that someone can implement necessary changes to internal partitions and boot procedures?
what is your opinion on replacement of u-boot with something else? for example LK loader or to be more precise with its current HD2 implementation known as cLK. it allready has some neat features like HBOOT like GUI, ability to change partition sizes on device itself (without computer), ability to boot from different partitions (would be nice to have android and ubuntu side by side loaded on our devices) and last but not least it has fastboot support enabled...or is it better way fill up u-boot with desired features if possible?
so...just my wishful thinking...not enough knowledge on my side to do anything regarding all this just hoping that some of you, more capable guys gets interested in this
Click to expand...
Click to collapse
I do want to implement something that's pretty much as you describe. My biggest motivation is that it's currently not safe to flash a kernel since you can break both system and recovery that way in one go - I really want to make the boot process more robust.
gmarkall said:
Also, I compiled a tun.ko - tun.ko
I haven't tested it yet - is anyone able to try it please?
Click to expand...
Click to collapse
The module loaded without a problem on my 2643_ROW Kernel. Installed "Rooted AnyConnect" from the "Play Place". Now I can connect to my company VPN.
gmarkall: YOU ROCK! THANK YOU!!!
tun.ko
Graham
The tun.ko module works perfectly with openvpn on 2643_ROW.
I can now access my Amahi home server,awsome.
Thanks a lot you are doing a great job.
Dont want to sound presumptuous but any chance of a cifs.ko to go with it .
Cheers
Infraredevans said:
Dont want to sound presumptuous but any chance of a cifs.ko to go with it .
Click to expand...
Click to collapse
I'll give it a whirl... give me a few minutes.
gmarkall said:
I'll give it a whirl... give me a few minutes.
Click to expand...
Click to collapse
Here it is: http://www.doc.ic.ac.uk/~grm08/ideapad/cifs.ko
To compile it I had to copy md5.h from another kernel source to fs/cifs in the kernel tree. I also had to edit init/Kconfig so that CONFIG_SLOW_WORK defaulted to yes. I configured the module with the options:
Support Legacy LANMAN servers which use weaker security
CIFS Extended attributes
CIFS POSIX attributes
and without statistics, debugging, or experimental features. Let me know if this is a suitable config - I could always tweak it and build another one.
arm-2010q1-202-arm-none-linux-gnueabi.bin
Did someone manage to install arm-2010q1-202-arm-none-linux-gnueabi.bin on 64bit system?
xbdesign said:
Did someone manage to install arm-2010q1-202-arm-none-linux-gnueabi.bin on 64bit system?
Click to expand...
Click to collapse
I did - I didn't have any problems, but my random guess about how to solve it could be to install ia32-libs. If installing that doesn't solve it, can you post a bit more detail about the problem?
I am using ubuntu 10.04 LTS and just cant install / find Getlibs to install a 32-bit version of xulrunner :-(
xbdesign said:
I am using ubuntu 10.04 LTS and just cant install / find Getlibs to install a 32-bit version of xulrunner :-(
Click to expand...
Click to collapse
Do you need that to run the installer? I just downloaded the tar version instead and extracted it. I saw there was an installer as well, but I thought it would be more hassle than using the tarball so I just ignored it.

Tubuntu - questions and issues

This should probably be posted here, but I sadly don't have the required 10 posts to do so.
There's one issue that I noticed that is actual in 0.2.2alpha. When you choose to flash Jhinta 3.1x kernel and not 2.6x kernel, it is still linux.img that is being flashed, instead of jlinux.img.
Also there's one question (or rather a feature request). Once you have dual boot up and running it would be nice to be able to flash linux rootfs only (ubuntu.img) without changing the partition table and loosing current android install. You can't currently do that with Tubuntu, right?
Best regards,
Alex
Serkenar said:
This should probably be posted here, but I sadly don't have the required 10 posts to do so.
There's one issue that I noticed that is actual in 0.2.2alpha. When you choose to flash Jhinta 3.1x kernel and not 2.6x kernel, it is still linux.img that is being flashed, instead of jlinux.img.
Also there's one question (or rather a feature request). Once you have dual boot up and running it would be nice to be able to flash linux rootfs only (ubuntu.img) without changing the partition table and loosing current android install. You can't currently do that with Tubuntu, right?
Best regards,
Alex
Click to expand...
Click to collapse
hi!
that will be on my next release cause i flash my tubuntu image so much. i'm trying to push out a backup menu along with that new rootfs option
x3maniac said:
hi!
that will be on my next release cause i flash my tubuntu image so much. i'm trying to push out a backup menu along with that new rootfs option
Click to expand...
Click to collapse
Hi,
I'm really glad to hear that! Looking forward to the next Tubuntu release
I'd also like to ask to include cifs kernel module in your kernel build.
Thank you
Serkenar said:
Hi,
I'm really glad to hear that! Looking forward to the next Tubuntu release
I'd also like to ask to include cifs kernel module in your kernel build.
Thank you
Click to expand...
Click to collapse
new version is up with Flash rootfs only :laugh:
future release of kernel i will put cifs. right now i'm trying to get zram and overclocking right 1st.
lol i feel like a one man operation. make the program to flash ubuntu images, didn't find one i liked. so i went ahead and made one. feel that the kernel is missing too much stuff. and went ahead and i'm making that now lol... am i missing anything else i need to learn/do? hahahaha
but i'm loving it!
thanks for the support
x3maniac said:
new version is up with Flash rootfs only :laugh:
future release of kernel i will put cifs. right now i'm trying to get zram and overclocking right 1st.
lol i feel like a one man operation. make the program to flash ubuntu images, didn't find one i liked. so i went ahead and made one. feel that the kernel is missing too much stuff. and went ahead and i'm making that now lol... am i missing anything else i need to learn/do? hahahaha
but i'm loving it!
thanks for the support
Click to expand...
Click to collapse
Thank you for your effort
Speaking about your own kernel, I tried compiling one from Jhinta source, but I received odd errors at boot time. First it was this kind of errors:
lists.litmus-rt.org/pipermail/litmus-dev/2012/000215.html
it was suggested there to try changing CONFIG_DEVTMPFS_MOUNT kernel config value, I did that, and then I got some other odd errors, so I gave up
Right now I have a more or less stable 12.04 kubuntu+3.10.1 jhanti kernel with hw acceleration, sound, zram (used netinstall 0.6). I'm only missing overclocking and a cifs module, that's why I tried building my own kernel, but never got it booting. I don't know any sane methods of backing up and restoring linux on tf101 (well, dd + gzip should work, but that's rather stupid), so I'm a little hesitant about flashing your lubuntu right now. I think I'll still give it a go, but before I do that, don't you know any easy way to back up my current linux install?
Thank you
Serkenar said:
Thank you for your effort
Speaking about your own kernel, I tried compiling one from Jhinta source, but I received odd errors at boot time. First it was this kind of errors:
lists.litmus-rt.org/pipermail/litmus-dev/2012/000215.html
it was suggested there to try changing CONFIG_DEVTMPFS_MOUNT kernel config value, I did that, and then I got some other odd errors, so I gave up
Right now I have a more or less stable 12.04 kubuntu+3.10.1 jhanti kernel with hw acceleration, sound, zram (used netinstall 0.6). I'm only missing overclocking and a cifs module, that's why I tried building my own kernel, but never got it booting. I don't know any sane methods of backing up and restoring linux on tf101 (well, dd + gzip should work, but that's rather stupid), so I'm a little hesitant about flashing your lubuntu right now. I think I'll still give it a go, but before I do that, don't you know any easy way to back up my current linux install?
Thank you
Click to expand...
Click to collapse
i'm now compiling from his source. for the 3.1.10 kernel i'm using. why try to reinvent the wheel? i just recompiled and added oc and cifs, i didn't run into any compile issues but i did run into boot issues so changing the kernel to compress with lzmo instead of gzip fixed it. hope that helps
Thank you for your work on this
x3maniac said:
i'm now compiling from his source. for the 3.1.10 kernel i'm using. why try to reinvent the wheel? i just recompiled and added oc and cifs, i didn't run into any compile issues but i did run into boot issues so changing the kernel to compress with lzmo instead of gzip fixed it. hope that helps
Click to expand...
Click to collapse
x3maniac I was wondering if you have ever checked out openELEC linux. They just pushed out a new version on Distrowatch and it looks like it will have support for ARM devices. It is very lightweight at 106mb and is made to run XBMC out of the box. Might be worth a try due to its size and media streaming abilities.
Thanks
thelangosta said:
x3maniac I was wondering if you have ever checked out openELEC linux. They just pushed out a new version on Distrowatch and it looks like it will have support for ARM devices. It is very lightweight at 106mb and is made to run XBMC out of the box. Might be worth a try due to its size and media streaming abilities.
Thanks
Click to expand...
Click to collapse
thanks for the info. i will look into it, i do have a arch linux version working with 3.1 which is only about 200mb.
edit:
they have a arm version 83mb! lols
Cool
x3maniac said:
thanks for the info. i will look into it, i do have a arch linux version working with 3.1 which is only about 200mb.
edit:
they have a arm version 83mb! lols
Click to expand...
Click to collapse
Wow that is small. I have seen Roms that small but never an os. Wait, is that openELEC or Arch you are talking about.
On another note if I do end up getting around to trying your method with arch which desktop would you recommend?
Thanks
thelangosta said:
Wow that is small. I have seen Roms that small but never an os. Wait, is that openELEC or Arch you are talking about.
On another note if I do end up getting around to trying your method with arch which desktop would you recommend?
Thanks
Click to expand...
Click to collapse
openelec(rasbery pi)
if you want it to look nice then enlightment e17. for a light weight DE they make it very pretty with all the effects like compiz
or lxde
x3maniac said:
i'm now compiling from his source. for the 3.1.10 kernel i'm using. why try to reinvent the wheel? i just recompiled and added oc and cifs, i didn't run into any compile issues but i did run into boot issues so changing the kernel to compress with lzmo instead of gzip fixed it. hope that helps
Click to expand...
Click to collapse
Compression was already set to lzma. I can't figure out what I was doing wrong. Yet, you're right, no point to reinvent the wheel.
I see you've recently released your Lubuntu V1.1-rc1. The specs sound great! Could you please post the rootfs download link and also post your kernel img?
Thank you for the great work you're doing!
Serkenar said:
Compression was already set to lzma. I can't figure out what I was doing wrong. Yet, you're right, no point to reinvent the wheel.
I see you've recently released your Lubuntu V1.1-rc1. The specs sound great! Could you please post the rootfs download link and also post your kernel img?
Thank you for the great work you're doing!
Click to expand...
Click to collapse
the link to image and kernel is up. http://forum.xda-developers.com/showthread.php?t=1995157
x3maniac said:
the link to image and kernel is up. http://forum.xda-developers.com/showthread.php?t=1995157
Click to expand...
Click to collapse
I gave it a go First of all, Tubuntu flashes .\images\linux.img when choosing to flash "2.6x x3maniac kernel", I assume it should flash .\images\xlinux.img
That's not a big issue, but should be fixed
A quick list of things I noticed.
1. Things that work:
-1.2 GHz OC
-Usb mouse (when plugged before system boots, otherwise not - that's due to 3.1.10 kernel, I guess)
-cifs module
-chromium
-terminal (right clicking on your tf101linux gadget -> Shortcuts -> Terminal)
-screen brightness up/down buttons. You just have to be mindful to avoid turning the screen off this way - it won't turn on afterwards and you'll have to force reboot.
-ntfs read/write
2. Things that don't work:
-touchpad
-XF86poweroff button
-System Tools -> XTerm/UXTerm
-sound: Audacious complains "ALSA error. No suitable mixer element found. snd_mixer_find_selem failed". Gnome MPlayer just won't produce any sound, and youtube html5 videos too.
-plugging in an external usb drive. It's totally ignored. A pen drive doesn't even blink, nor the drive appears in /dev it works now. It didn't during initial launch. Don't know why, but a reboot cured this.
Also, it happens quite often that system freezes for no apparent reason and only force reboot helps. It happened twice with me already, although it's been less then an hour since I flashed lubuntu.
Tell me if you need some additional info
Regards
Serkenar said:
I gave it a go First of all, Tubuntu flashes .\images\linux.img when choosing to flash "2.6x x3maniac kernel", I assume it should flash .\images\xlinux.img
That's not a big issue, but should be fixed
A quick list of things I noticed.
1. Things that work:
-1.2 GHz OC
-Usb mouse (when plugged before system boots, otherwise not - that's due to 3.1.10 kernel, I guess)
-cifs module
-chromium
-terminal (right clicking on your tf101linux gadget -> Shortcuts -> Terminal)
-screen brightness up/down buttons. You just have to be mindful to avoid turning the screen off this way - it won't turn on afterwards and you'll have to force reboot.
-ntfs read/write
2. Things that don't work:
-touchpad
-XF86poweroff button
-System Tools -> XTerm/UXTerm
-sound: Audacious complains "ALSA error. No suitable mixer element found. snd_mixer_find_selem failed". Gnome MPlayer just won't produce any sound, and youtube html5 videos too.
-plugging in an external usb drive. It's totally ignored. A pen drive doesn't even blink, nor the drive appears in /dev it works now. It didn't during initial launch. Don't know why, but a reboot cured this.
Also, it happens quite often that system freezes for no apparent reason and only force reboot helps. It happened twice with me already, although it's been less then an hour since I flashed lubuntu.
Tell me if you need some additional info
Regards
Click to expand...
Click to collapse
i love your report! keep up the good work. this helps me narrow down the problems but without a dock i can't fix some of the issues. but try this
touchpad:
edit /etc/X11/Xorg.conf
Code:
Section "InputClass"
MatchIsTouchpad "on"
Identifier "Touchpads"
Driver "mtrack"
EndSection
should fix the touchpad issue.
i will look into fixing my script for the brightness issue. located int /usr/local/bin/tfbright
what were you doing when you freeze? i don't have a dock(still waiting for it in the mail) so i don't know if it's related to that.
i've been looking at nvidia git and downloaded there source for the linux4tegra kernel. it' compiled fine but wont boot. don't know why yet
x3maniac, I know it is off topic a bit but I just wanted to mention that I appreciate your attitude towards your work and especially criticism (aka feedback) from others about your work. Reminds me of my EVO 4G days running tommytomato's classic rom. His threads were always friendly and optimistic, much like your own.
Sent from my SPH-L710 using Tapatalk 2
x3maniac said:
i love your report! keep up the good work. this helps me narrow down the problems but without a dock i can't fix some of the issues. but try this
touchpad:
edit /etc/X11/Xorg.conf
Code:
Section "InputClass"
MatchIsTouchpad "on"
Identifier "Touchpads"
Driver "mtrack"
EndSection
should fix the touchpad issue.
i will look into fixing my script for the brightness issue. located int /usr/local/bin/tfbright
what were you doing when you freeze? i don't have a dock(still waiting for it in the mail) so i don't know if it's related to that.
i've been looking at nvidia git and downloaded there source for the linux4tegra kernel. it' compiled fine but wont boot. don't know why yet
Click to expand...
Click to collapse
Strange, but there's no /etc/X11/xorg.conf
I tried creating it with `Xorg :1 -configure`, but I get "No devices to configure. Configuration failed."
I also tried creating /etc/X11/xorg.conf with the following content
Code:
Section "InputClass"
MatchIsTouchpad "on"
Identifier "Touchpads"
Driver "mtrack"
EndSection
but touchpad wont' work.
Like I said, there appears to be no apparent reason for those freezes The only things they had in common are the following:
(as far as I can remember)
-I had a cifs share mounted
-pen drive was plugged in
-chromium was opened
I understand that isn't helpful at all, but atm I can't reproduce those freezes myself. They occur kind of randomly.
I hope linux4tegra kernel does boot after all
Thank you for your work
EDIT: 30 minutes without freezes, I hope they're gone for good! :laugh:
djlenoir said:
x3maniac, I know it is off topic a bit but I just wanted to mention that I appreciate your attitude towards your work and especially criticism (aka feedback) from others about your work. Reminds me of my EVO 4G days running tommytomato's classic rom. His threads were always friendly and optimistic, much like your own.
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
+1 Totally agree
djlenoir said:
x3maniac, I know it is off topic a bit but I just wanted to mention that I appreciate your attitude towards your work and especially criticism (aka feedback) from others about your work. Reminds me of my EVO 4G days running tommytomato's classic rom. His threads were always friendly and optimistic, much like your own.
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
Serkenar said:
+1 Totally agree
Click to expand...
Click to collapse
as far as i see it, you guys are helping me get a working version. user/tester are as important as the devs making them. or else dev's would be out of the job. lols that's how i see it
I let lubuntu running and it froze smth like 20 minutes ago Without me doing anything. Chromium was running, pen drive plugged in and a cifs share mounted.
I'll leave it running without a pen drive plugged in, shares mounted and chromium running to see if it freezes eventually.
Serkenar said:
I let lubuntu running and it froze smth like 20 minutes ago Without me doing anything. Chromium was running, pen drive plugged in and a cifs share mounted.
I'll leave it running without a pen drive plugged in, shares mounted and chromium running to see if it freezes eventually.
Click to expand...
Click to collapse
i'm guessing jhanti's kernel is not stable. i was starting to use it more and got a random freeze. cpu1 went to sleep and wont wake up. looking into that.. i might just take nvidia's kernel 3.1.10 and try to get that working.

TF101 Linux, that... WORKS?

Is there any way to install linux distribution aside from android onto my TF101, dual boot if possible, with not-so-many-bugs?
I tried x3maniac's way of installing it, however, I had 1.35GB available disk space (which ****** sucks), and I couldn't even load pages in Chromium, so basically, it was no use. After apt-getting codeblocks, i couldn't save a .cpp file lol.
Thank you in advance.
You can get an app called complete Linux installer from the market. Thing is, you need a kernel that supports loop devices, and it runs on TOP of android. That's the best I've seen
Sent from my Transformer using Xparent Blue Tapatalk 2
erik.loncarek said:
Is there any way to install linux distribution aside from android onto my TF101, dual boot if possible, with not-so-many-bugs?
I tried x3maniac's way of installing it, however, I had 1.35GB available disk space (which ****** sucks), and I couldn't even load pages in Chromium, so basically, it was no use. After apt-getting codeblocks, i couldn't save a .cpp file lol.
Thank you in advance.
Click to expand...
Click to collapse
For x3maniac's you need to run 'sudo resize2fs /dev/mmcblk0p8' in the terminal after installing to resize the partition to ~5gb, the chromium issue has also been fixed with the new kernels and they are also overclocked. The only problem is that x3maniac's kernels have problems with the system freezing.
NoDiskNoFun's net-install was very stable especially with jhinta's kernel, the only problem I had with it was that the boot time would take 1-2 minutes extra if the system couldn't connect to a known wifi network. The major thing is that you wont be able to complete the install without a wifi connection (has to download several hundred megabytes of packages to setup).
lilstevie's 11.10 image while stable, was fairly slow, lacked hardware acceleration and couldnt report battery levels (only from the terminal).
NoDiskNoFun's ubuntu would probably be the most stable and the fastest for you, x3maniac's still has it's issues.
Net-install Wifi issues
Mn5612 said:
NoDiskNoFun's net-install was very stable especially with jhinta's kernel, the only problem I had with it was that the boot time would take 1-2 minutes extra if the system couldn't connect to a known wifi network. The major thing is that you wont be able to complete the install without a wifi connection (has to download several hundred megabytes of packages to setup).
.
Click to expand...
Click to collapse
Hey Mn5612,
I've installed x3maniac's tubuntu, and while I do really like it and appreciate all of his work, I have heard that NoDiskNoFun's net-install had many advantages in terms of customization and stability. I flashed his img over my recovery partition, and everything was fine, booted into setup, but then I can't get the wifi to connect to complete the installation. I am running open WEP
Nothing comes up when I do a scan, status is "Could not get status from wpa_supplicant," and when I manually try to add values I get "Failed to enable network in wpa_supplicant configuration." So I go through setup, and nothing downloads while I'm completing all of the steps.
I tried using v0.5 where the install is primarily in terminal, tried all of the WEP options, then I tried tethering my phone with all of the different encryptions, then left it as an open hotspot, nothing, no detection, no connection.
I've looked all over the forums and at general llinux forums for solutions, but no one seems to have quite the same problem, or their solution is not feasible on this distro or someone working in windows. I have a very basic knowledge of linux, I mainly run a windows box, but I always like to learn more. In any case, any help would be greatly appreciated. Thank you
erik.loncarek said:
Is there any way to install linux distribution aside from android onto my TF101, dual boot if possible, with not-so-many-bugs?
I tried x3maniac's way of installing it, however, I had 1.35GB available disk space (which ****** sucks), and I couldn't even load pages in Chromium, so basically, it was no use. After apt-getting codeblocks, i couldn't save a .cpp file lol.
Thank you in advance.
Click to expand...
Click to collapse
Hey,
I had the same question about a year ago. I looked around and found this thread from lilstevie. It will guide you to install a dual boot setup between a nvflashable ROM of your choice and Ubuntu. I had it running very well with no major issues, but of course there will be some bugs. Heck, Linux often has bugs even on a normal PC platform. I remember flash player was probably the biggest issue, but I'm sure there are ways to get it working. If I remember correctly I think I gave Ubuntu 8gb and I gave Prime 3.2 whatever was left out of the 32gb tablet.

[Q] where are the x86 tablet hackers?

I just bought my first tablet. An acer Iconia a1 830. rooted it the first day, got some chroot linuxes going, ssh into some other boxes. awesome.
so my googles have come up short looking for people who are running (or trying to run) x86 linux on x86 tablets. Ive been building and breaking linux for about ten years now and i think i could help this effort. everything i have found is for arm ports and stuff. I know i am not the only one who is looking at his x86 tablet wondering how to get some dual boot action out of this.
send me a link to the place i need to go, to find the people who are thinking about this.
acer iconia a1 830
htc desire hd running some cyanogenmod
danharris said:
I just bought my first tablet. An acer Iconia a1 830. rooted it the first day, got some chroot linuxes going, ssh into some other boxes. awesome.
so my googles have come up short looking for people who are running (or trying to run) x86 linux on x86 tablets. Ive been building and breaking linux for about ten years now and i think i could help this effort. everything i have found is for arm ports and stuff. I know i am not the only one who is looking at his x86 tablet wondering how to get some dual boot action out of this.
send me a link to the place i need to go, to find the people who are thinking about this.
acer iconia a1 830
htc desire hd running some cyanogenmod
Click to expand...
Click to collapse
Hi,
I have an 830 and a Razr i, I've tried to get chroot running on both when I first got each of them, but didn't finish the things. I'm pretty sure if I gave it a few more hours I'd be able to get it running, but as of now no luck.
I will tell you the progress I made though.
You've probably heard of linux on android or complete linux installer http://linuxonandroid.org/, and I'm sure you worked out pretty quickly the version of busybox they gave you, along with the images, where for arm.
It might pay to message, but let's be honest, in this case WE are the developers, and unless one of us is willing to send them one of our devices we'll have a hole lot more luck trying it ourselves.
Busybox x https://play.google.com/store/apps/details?id=com.bitcubate.root.busybox.complete&hl=en can install an x86 binary, and it certainly runs, but I had some issues that may be related to how it was compiled, or just me being an idiot.
You say you've been playing with linux for 10 years, so I know you probably already know this, but just in case, and for others reading this, it's probably worth explaining. chroot isn't a VM nor is it a system for traditional duel booting. It will allow you to run a linux userland from the already running linux kernal on the device, alongside android. It works by specifying a directory or image with a linux install in it, then telling the kernal to start that **** up, as if it where the kernal in the instalation.
Now, onto my progress. I was able to run chroot, so it was obviously an x86 binary, I was also able to mount an image of an x86 debian install made with debootstrap (What linux on android uses to make their ARM images) on my SD card. The first problem I had was android doesn't give stuff on the SD card execute permissions, and stuff got messy, but I eventually got that working. Do as you see fit.
I had numerous other issues, but the one I finally got stuck on was chroot not being able to find /bin/bash in the debian install directory.
I played around with the boot scripts you get with linux on android, but I don't think chroot evern ever ran from there. Neither was I able to run a plain "chroot /mnt/debianimagemounted/", I kept getting the "can't find bash" thing. I'm guessing this could have been because the linux for android scrypts made aliases before running chroot. Read them for yourself to see what I mean.
This all could be as simple as redirecting the linuxonandroid program from the arm version of chroot it uses to an x86 copy, or it could be more difficult.
Actually, I'll email them now, I'll post any response I get here.
I don't think there really are many people talking about this, I mean your post was the first google hit for "x86 android chroot", so this is probably gonna take some effort on our part.
I'm pretty busy with study right now, but in 2 weeks or so I'll dedicate a few solid days to getting this running.
As far as I can tell all we need is some good hard trial and error.
Can't wait to hear from you.
One other thing, I forget where but heard that you should try to stick to i386 binaries only, and that i686 ect could cause problems, but I don't know this for sure. Again, use your own discretion.
---------- Post added at 05:12 AM ---------- Previous post was at 04:15 AM ----------
Sorry, last time I post, but I found this, you might want to check it out:
http://sven-ola.dyndns.org/repo/debian-kit-en.html
Yup, from what I've found, Debian-kit seems like the most promising project. Heres a link with a little more insight.
wdowiak.me/debian-kit/index.html
For anyone else who gets here... this is what I used to root the 830
androidfilehost.com/?fid=23578570567714700
then I got Debian-kit from fdroid because it has a newer version, but the one from google play works fine too. get your connect bot and RDP client and ur off to the races.
***sorry for the non linked links, Im not allowed to post real links yet
Dan, I think wdowiaks kit in your link is newer than the fdroid version and installs Wheezy. It definitely has good install info. I rooted my new a1-830 yesterday and installed the wdowiak version in the initial install version (not the one on the external sdcard). I had a little problem with the Iconia not mounting the external card formatted to two ext2 partitions, so the install was to internal memory aas a first try.
But today I removed the deb installation and reformatted the external card to 3 partitions with vfat on the first, and ext2 on the other two, and Android mounted the first partition where the deb script was located. So I'm hoping to install tonight. I was surprised the ext2s werent mounted automatically. But this might be a gtood thing, since there are warnngs not to let Android apps write data to them anyway.
Anyway, wanted to thank you for the above Debian info.:good:
Some notes as I'm installing the wdowiak debian-kit-1-6.shar:
I'm installing to the third partition on the sdcard (which shows up as /dev/block/vold/179:53)
At first I had trouble using the command:
mk-debian -i /dev/block/vold/179:53
I had to issue it as:
/data/local/deb/mk-debian -i /dev/block/vold/179:53
but even then it threw an error saying it couldn't fdisk 179:48 .
That seemed odd. But it didn't stop there and went on to query if I wanted to format 179:53 or " (A)bort " I decided to go ahead and typed a "Y" and was brought back to a prompt.
That didn't seem to work, so I tried again by just hitting <ENTER> . But that had the same result. Finally I figured out that the response it wanted to proceed was lowercase "e". That worked and the partition was formatted -- the install is going on now.
One other note -- though I originally partitioned as ext 2, the mk-debian command seems to be re-formatting to ext 3. There is a suggestion earlier that if it is to be a journaling format, rather than ext2, to turn journaling off. This reduces the number of writes and therefore extends the life of the sdcard.
---------- Post added at 10:52 PM ---------- Previous post was at 10:05 PM ----------
More notes:
I got a lot of error messages from debconf about needing a certain screen size during:
apt-get install andromize
Nevertheless it proceeded through. I'm now at the stage in connectbot where Ive logged into my user through ssh and am adding the lxde desktop via
apt-get install andromize-lxde
That's a pretty big chunk of realestate for a desktop -- almost a gig unpacked -- I'm used to Puppy Linux which is about 100 megs total for everything, including OS, desktop, and a full suite of apps!
I'm hoping that with some experience w/Wheezy on the a1-830 I can try getting an Intel Atom optimized version of Puppy linux on board.
danharris said:
so my googles have come up short looking for people who are running (or trying to run) x86 linux on x86 tablets...send me a link to the place i need to go, to find the people who are thinking about this.
Click to expand...
Click to collapse
Hi...I don't know much about this at all to be honest, but its an interesting thread and I found some links which will hopefully help you a little bit, though you may already be aware of them:
http://www.android-x86.org/
http://www.in.techradar.com/news/so...stros-to-choose-from/articleshow/38781789.cms
https://community.kde.org/Plasma/Active
All the best!
Thanks ishaang.
The middle link was pretty interesting, though I wish they had elaborated on their installation method:
We're fairly sure you don't need to be told how to install a Linux distro - most now use an identifiable and easy-to-navigate installer - but we thought it would be interesting to see how well they coped, first as a live image, via a bootable USB, then secondly as a fully installed OS.
Click to expand...
Click to collapse
My own interest is in Puppy Linux, which is generally accomplished from an ISO live CD session running in memory (on most computers). You run the CD then install to HD or USB stick.
For a so-called "frugal install" (the kind I use) there's another option besides making and running the LiveCD, You can just extract three files from the ISO, place them in a folder on the HD and point a stanza of GRUB's menu.lst to them. Typically the files are:
initrd.gz
vmlinuz
puppyversion.sfs
and an example GRUB menu.lst boot stanza for the Racy 5.5 version of Linux located on sda5 of a hard drive would look like this:
title Racy 5.5
kernel (hd0,4)/Racy55/vmlinuz PDEV1=sda5 ro
initrd (hd0,4)/Racy55/initrd.gz
boot
So I'm wondering how this translates to an alternative OS boot on the Iconia tablet? -- I could easily put those three files on an external sdcard, but how do we point the boot process to it on the a1-830?
Any update to this since 2014, I know i'm resurrecting a old thread. Hoping to breath new life into an x86 android 4.2 device.

Categories

Resources