Related
As lately some people are asking me about ROM porting I decided to create this new thread where we can share knowledge about this hard task.
Please note this is a Dev talk thread, so DON'T ASK about fixing a particular ROM problem here. Also don't ask questions like "My phone is bricked! please help!". This IS NOT the appropriate place for it. There are plenty of other threads to help you out.
Also note that this is not a step by step guide (and not a guide at all), it's just a point where you can start from. Android is a very complex system and there are many things I don't know yet. So, research and hard work is what you need to learn it deeply. My first tip is Google really works. Don't be afraid to search
Ok, to the basics. Porting a ROM is no simple task. It requires advanced understanding of how android works and how it is organized. Previous Linux/Unix knowledge helps A LOT. As android is based on this O.S. there are many similarities between both. In fact many ppl consider android to be a kind of linux distro.
The very first task to port a ROM is finding a device which is compatible with your own. For example Defy/Milestone2. Then you are going to choose a ROM to port to your device.
As our devices (Milestone2) have a locked bootloader we now need to find a system image that have a compatible kernel with the ROM we are trying to port. This is mainly based on trial and test and takes a long time. You'll be ending flashing your phone several times with RSD Lite. You should learn how to use MotoAndroidDepacker and how to create a fixed SBF.
The basic procedure to try that:
1. Open original ROM update.zip and remove any files/commands that flashes boot/devtree/recovery/anything.
2. Install this new file on your phone via CW Recovery.
3. Boot into bootmenu and enable ADB so you can read logcat while phone boots.
4. Choose Boot/Normal. If your ROM uses 2nd-init you will need to place/edit/adapt bootscripts into bootmenu 2nd-init folder.
5. Check logcat for errors:
- If you're getting HAL errors you're going to need a new kernel;
- If you can start android without getting HAL errors but still getting errors and bootloop on android animation you should try to replace libs with appropriate original ones.
6. Once you are able to boot android you should test it's features to see what needs to be fixed.
This is what I have to say for now. The thread is now open for discussion.
At this week, motorola has just pushed the GB official update for Droid 2 and Droid 2 Global....
Can i try to port this new rom to milestone 2 and after a success boot, fix the radio..??
I was asking that, because some people has success on port CM7 to milestone 1, when it originally maked for droid 1...
tks a lot..!!
jorgebaruchi said:
At this week, motorola has just pushed the GB official update for Droid 2 and Droid 2 Global....
Can i try to port this new rom to milestone 2 and after a success boot, fix the radio..??
I was asking that, because some people has success on port CM7 to milestone 1, when it originally maked for droid 1...
tks a lot..!!
Click to expand...
Click to collapse
It may be possible, but you'll have a hard time fixing the baseband.
You may have to mod the init.rc scripts and find the right radio binaries (rild is one of them) and drivers.
Ask those ms1 people for help, if they are still with the same phone...
Sent from my Milestone 2 XDA App
I don't know if this will be relevant or not.
I wanted to know if to do any of this, having a Linux distro as OS a must or can I try my hands at it on a windows based machine. I mean I'm sure that a Linux distro will give certain advantages (as Android is based on UNIX/Linux) but can we get things to work a 100% on windows.
If yes, then will someone be kind enough to get give the list of all softwares etc. which will be required to do the job on Windows machine as well as a Linux machine.
I do know a few softwares but I'm not sure if I have an exhaustive list. I would like to learn and try and at least be able to modify in bits n pieces to begin with.
I apologize if this wasn't supposed to be asked in this thread.
The only thing i can get from SBF is a bunch of smg files.
But the only ones i can open are
preinstall.smg
CG39.smg
Is there a way to open/see the rest?
2)
Im trying to modify the CM7 rom, what boot does it use? 2nd-init or 2nd-boot?
i guess it is second-init. but not sure
thanks a lot for this !!!
WeeDv2 said:
The only thing i can get from SBF is a bunch of smg files.
But the only ones i can open are
preinstall.smg
CG39.smg
Is there a way to open/see the rest?
2)
Im trying to modify the CM7 rom, what boot does it use? 2nd-init or 2nd-boot?
Click to expand...
Click to collapse
SMG files are disk images of certain partitions of your flash memory.
You can only open CG39.smg and preinstall (CG66.smg) because they are the only images in ext3 format. The rest of images may be on ramdisk format or some proprietary format. For more details on partition codes take a look here:
http://and-developers.com/partitions:cdt
You may be able to open and see contents of other partitions but the only one that matters aside from system and preinstall is the boot partition (CG35.smg), which contains the init scripts we should mod in order to make they work with 2nd-init. Boot partition is in ramdrive format. More details here:
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
http://elinux.org/Android_on_OMAP
It is easier to unpack boot image using Dsixda's Kitchen here:
http://forum.xda-developers.com/showthread.php?t=633246
Edit: To see what boot your CM7 uses just go inside /system/bootmenu/config and look for a file called default_bootmode.conf. That should be the boot method used. It's normally 2nd-init.
sahilarora911 said:
I don't know if this will be relevant or not.
I wanted to know if to do any of this, having a Linux distro as OS a must or can I try my hands at it on a windows based machine. I mean I'm sure that a Linux distro will give certain advantages (as Android is based on UNIX/Linux) but can we get things to work a 100% on windows.
If yes, then will someone be kind enough to get give the list of all softwares etc. which will be required to do the job on Windows machine as well as a Linux machine.
I do know a few softwares but I'm not sure if I have an exhaustive list. I would like to learn and try and at least be able to modify in bits n pieces to begin with.
I apologize if this wasn't supposed to be asked in this thread.
Click to expand...
Click to collapse
Don't worry, this is the right place
As for your question: yes you can work in windows if you like, but using at least a Linux VM is more productive. I don't have a full list of applications to give you, as different mods may require different tools, but I advice you to have at least:
- Notepad++ (essential for editing text files and keeping linux end-line format);
- dsixda's Android Kitchen (http://forum.xda-developers.com/showthread.php?t=633246)
- 7zip (or some other compress tool you like)
- Moded putty for ADB as working with windows command prompt really suck (http://forum.xda-developers.com/showthread.php?t=803225)
- Oracle Virtual Box (if you are going to use linux VM).
r2beta0 said:
SMG files are disk images of certain partitions of your flash memory.
You can only open CG39.smg and preinstall (CG66.smg) because they are the only images in ext3 format. The rest of images may be on ramdisk format or some proprietary format. For more details on partition codes take a look here:
http://and-developers.com/partitions:cdt
You may be able to open and see contents of other partitions but the only one that matters aside from system and preinstall is the boot partition (CG35.smg), which contains the init scripts we should mod in order to make they work with 2nd-init. Boot partition is in ramdrive format. More details here:
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
http://elinux.org/Android_on_OMAP
It is easier to unpack boot image using Dsixda's Kitchen here:
http://forum.xda-developers.com/showthread.php?t=633246
Edit: To see what boot your CM7 uses just go inside /system/bootmenu/config and look for a file called default_bootmode.conf. That should be the boot method used. It's normally 2nd-init.
Click to expand...
Click to collapse
Thanks again r2beta
thanks r2beta0
- Notepad++ -- got it
- dsixda's Android Kitchen -- downloaded (need some link for a how-to on its usage)
- 7zip -- got it
- Moded putty for ADB -- got it
- Oracle Virtual Box -- can't install Linux on my system as this is a work machine
dunno if I can do without the last option.
sahilarora911 said:
thanks r2beta0
- Notepad++ -- got it
- dsixda's Android Kitchen -- downloaded (need some link for a how-to on its usage)
- 7zip -- got it
- Moded putty for ADB -- got it
- Oracle Virtual Box -- can't install Linux on my system as this is a work machine
dunno if I can do without the last option.
Click to expand...
Click to collapse
Oracle Virtual Box is an application that lets you run an operational system on a virtual machine, in other words, it doesn't install linux on your real computer. It's a very useful tool that I use everyday. Google for it and learn a bit, you won't be disappointed. About kitchen: the link I provided was download + guide. Read it again. If necessary read the full thread.
r2beta0 said:
Oracle Virtual Box is an application that lets you run an operational system on a virtual machine, in other words, it doesn't install linux on your real computer. It's a very useful tool that I use everyday. Google for it and learn a bit, you won't be disappointed. About kitchen: the link I provided was download + guide. Read it again. If necessary read the full thread.
Click to expand...
Click to collapse
I know a bit about virtual box but as I said I'm not allowed to have softwares not approved by the IT team to be present on the system. Though I can get away with small things like notepad++ and 7-zip, having virtual box on my system may raise some eye brows.
I'm trying to arrange an alternative system.
Me neither. I must do almost everything at home, and at this very moment I simply don't have any free time. I'm afraid you're not going to see me here very often anymore (maybe in a few months? a year? well, it might be a bit too late for milestone2...)
hi. Have a question, I want to remove baseband from a flashable zip (lets say, CM7 from Tezet) , is it posible? I dont know where to look for it (baseband). Thanks!!
Baseband is located in \system\etc\motorola\bp_nvm_default\
But don't remove it, just replace it with files from ROM, which have baseband you want.
---UFO--- said:
Baseband is located in \system\etc\motorola\bp_nvm_default\
But don't remove it, just replace it with files from ROM, which have baseband you want.
Click to expand...
Click to collapse
Ok thanks for the info.
Sent from my A953 using XDA
Hi All,
Just a quick question. I have ported Paranoid Android 2.10 to MS2 but the problem I am facing is that Reboot goes through Bootmenu and I have to choose reboot from Bootmenu again.
Any inputs?
Thanks in advance
Megalith27 said:
Hi All,
Just a quick question. I have ported Paranoid Android 2.10 to MS2 but the problem I am facing is that Reboot goes through Bootmenu and I have to choose reboot from Bootmenu again.
Any inputs?
Thanks in advance
Click to expand...
Click to collapse
I meant to get to it last night, but I was tired after work and fell asleep watch tv. Eventually, later tonight, I'll be uploading PA for MS2. Check my Defy PA thread in 12-14 hours cause I'm about to go to work and I'm not gonna feel like making a MS2 PA thread or updating my Bravo PA thread -- but the Defy Thread is always up to date when I put out new roms.
Also, I'm looking to get either a Defy or MS2 -- I've heard that there's 3G issues with AT&T users (which I am) with the MS2 -- Apparently the MS2 has different 3G frequencies than AT&T. Are there any AT&T MS2 users who are knowledgeable about that? While I can deal with no 3G, edge only, calls only -- I need to make sure I can at least do that before I commit to something.
I'd rather have the MS2 because I want a hw keyboard and I don't have the $300+ to try and get a Photon Q LTE from eBay (and I don't have to change up my repos if I get a MS2). If anyone here knows of a phone that's AT&T compatible, Defy code compatible, and has a keyboard, please let me know.
Thanks.
//Normally I'd post the latter half in the Q&A section, but ya'll don't have one so I'm just gonna piggyback
//My Bravo doesn't have a Q&A page either -- it needs one that's not my PM box...Don't PM me on how to root your phone and flash CM7 -- read one of the 5 guides on the first page of both General & Dev...:silly:
Ok devs need some help here.
I am trying to port a rom to our Milestone 2...but it bootloops on rom animation.
I tried to logcat it but I don't think it gets as far as adb server to detect the device.and just keeps saying "waiting for device"...so I end up with no logcat to diagnose the problem.
I can logcat my current working rom but only after the phone boots....am i missing something here? please, help
Any help is very much appretiated.
Thanks a lot in advance
Hi
I saw that the TF101 and SL101 are very similar.
On ASUS Website they even provide me with both, TF and SL firmware if I go to downloads.
So my question:
Are any Custom ROMs compatible to both, TF and SL?
Or are there modifications needed?
@Devs: Who's ROM is compatible to SL101?
Use the slider compatibility pack available here: http://forum.xda-developers.com/showthread.php?t=1586382&highlight=slider+compatibility
Then Any tf101 rom works with the slider!
1. Flash ROM
2. Flash slider compatibility pack over it
3. ???
4. Profit.
Thanks.
Another question to ROMs:
I know there is a possibility to run Ubuntu on the TF in dual-boot with android.
What about this on SL101?
If I use this tool: http://forum.xda-developers.com/showthread.php?t=1364095 will I be able to flash the Compatibility Pack afterwards?
And will Ubuntu run clean then?
That may be another matter entirely, as the compatibility pack is for Android 4.0 ICS. I don't think it would help. You can still flash ubuntu, but you may encounter a few bugs, it's an ARM processor build though. It will work, I just can't say whether it would work well or not. Don't flash the compatibility pack with it though.
But didn't I get this right?
I will hae both, Android and Ubuntu on my device then.
I have to flash the comp pack over the Android ROM to get it working perfectly.
So if I use the tool above I install my Android and Ubuntu ROM together. How do I get Android working correctly then?
How does this ubuntu dualboot install?
is it like this:
One half CWM + Android, Other half Ubuntu
or like this:
CWM is above everything and Ubuntu and Android are the next level deeper?
I mean does CWM even have access to ubuntu through normal flash methods?
What if I want to change my android ROM after installing ubuntu? If I just flash using CWM, will I overwrite my ubuntu?
No, the ubuntu zip that you flash simply tells the tab to boot the ubuntu system image you store on your internal memory rather than your android os, your android os is unaffected as you flash the android zip to reboot android.
So I have to flash a zip file every time I want to boot the other OS again?
I mean everytime i want to switch between Ubuntu and Android?
I thought it would be a real Dual-Boot. Unfortunately I am completely new to Ubuntu. The last time I had a dual-booting device was my HD2 with Windows and Android using MagLdr... I thought it would be similar to this.
//Edit:
http://forum.xda-developers.com/showthread.php?t=1191141
If I install in dual boot config did I get that right:
It replaces the ClockWorkMod/Recovery Boot-Option with buntu boot option?
So I will be able to boot Android (normally), Ubuntu (by starting recovery) or flash a new ROM through NVFlash. But I will loose ClockWorkMod
I don't want to spam the thread with this so I ask here. Excuse me for this please.
Yes that is correct, Make Sure, you have NvFlash though. Otherwise you'd be pretty stuck in the event of an issue
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.
Hey guys!
I followed the process of using ubuntu on a tf101 now for 1 year and thaught thst i will flash it once it is more stable.
Well i kind of searched but i can't find any comments on how good/bad it runs on our tf101.
So i wanted to know how well ubuntu runs on our tablets.
Is it smooth?
Is it useable?
And do you think it is better than android?
I use it mostly for reading pdf's and browsing with little bit of watching live streams or youtube videos. Do you think ubuntu would be better for me?
I used it ubuntu quite a long time for everything but gaming on my desktop so i have enough experience for it.
However if it won't run well on the tf101 i will not flash it and stick with android
Regards
Sent from my Nexus 4 using xda app-developers app
hi!
actually i've the same "problem"...
i've read a lot in the threads about how to install and how to fix some bugs (wifi, bluetooth and so on)
there are also some problems with the dock. (depending on which kernel you're using)
but i hardly find a answer how the usability is... there are some youtubevideos but they main information of them is "it's bootable and i can open browser and office"
it would be really nice if somebody could share his experience with ubuntu, tubuntu or arch on the transformer.
i've just ordered the keyboarddock and once i've got it i'll try it on my own and make a real review of linux on the tf101.
but if somebody of you says:
-> the batterydrain is horrible
-> the browser is much slower than in android
-> there too much bugs and crashes
i'll wait till a better version of ubuntu touch probably.
kind regards
I'm dual booting ubuntu and android on my tab.
The reason i can't let android go, is the lack of hardware accelaration and flash on the ubuntu. Other than that it feels amazing!
Super fast and pretty stable. I even do some programming and compiling on it without problems.
So, if you would only browse the web, and read PDFs, i would recommend it. But as you mentioned Youtube and other streaming services, i'd say android.
Only way to find out is dual booting, then you'll have a taste of having a full desktop experience on your hands
thx!
no hardware acceleration is really a pity but i'll guess it's just a matter of time til it also works.
is it possible to make it run without the keyboarddock or should i wait til it's here?
edit:
which version do you prefer?
at the moment i guess the tubuntu verion is the most relieable?
http://forum.xda-developers.com/showthread.php?t=1995157
Mooks said:
thx!
no hardware acceleration is really a pity but i'll guess it's just a matter of time til it also works.
is it possible to make it run without the keyboarddock or should i wait til it's here?
edit:
which version do you prefer?
at the moment i guess the tubuntu verion is the most relieable?
http://forum.xda-developers.com/showthread.php?t=1995157
Click to expand...
Click to collapse
You can install a touchscreen keyboard in all of them.
The first one i used was Tubuntu, but i had no experience with linux. After feeling a little more confident i've flashed the Raring image just for fun
You'll enjoy it
it worked!
i've accidentally installed the old lubuntuversion v1.1rc1 but it still worked very well! :victory:
however i had the bug with the blank browser, thats why i've tried raring but i've noticed that for raring the hardwarekeyboard is a musthave for installation
now i'll try v1.2 and i'm very positive that its working great!
Mooks said:
it worked!
i've accidentally installed the old lubuntuversion v1.1rc1 but it still worked very well! :victory:
however i had the bug with the blank browser, thats why i've tried raring but i've noticed that for raring the hardwarekeyboard is a musthave for installation
now i'll try v1.2 and i'm very positive that its working great!
Click to expand...
Click to collapse
It's confusing at first, so many threads and information spreaded all over.
Lubuntu 1.2 and chromium kernel is the best combination for starting
ok i've managed to install lubuntu v1.2 (i guess the standardkernel is chromium) but now the wifi is broken
Mooks said:
ok i've managed to install lubuntu v1.2 (i guess the standardkernel is chromium) but now the wifi is broken
Click to expand...
Click to collapse
Download the latest kernel from the same place you downloaded lubuntu (x3's dev.h If I remember correctly). Rename it to Linux.IMG and put it on the images folder of tubuntu app. Flash chromium kernel again from the app .
I'm on mobile now, but as soon I get back to my tablet or PC I'll give you better instructions.
Sent from my GT-N7000 using XDA Premium HD app
thx! but there's no need to hurry
i gueass it's a little bit mor complicated because i've a sbk1-version.
i've downloaded now the 2.6.36 - [cpu 1.4 ghz] [gpu 300mhz] kernel from here http://forum.xda-developers.com/showthread.php?t=1995157 renamed it as you told and flash it by reflashing the whole sys.
the other way for sbk1 for flashing only the kernel is much more complicated...
edit: with the 1.4 ghz kernel the wifi worked but after one minute i've got a freeze. i thought it's maybe because of the oc so i've tried it again with the 1.2ghz (stock) kernel -> also freeze after some seconds...
Mooks said:
thx! but there's no need to hurry
i gueass it's a little bit mor complicated because i've a sbk1-version.
i've downloaded now the 2.6.36 - [cpu 1.4 ghz] [gpu 300mhz] kernel from here http://forum.xda-developers.com/showthread.php?t=1995157 renamed it as you told and flash it by reflashing the whole sys.
the other way for sbk1 for flashing only the kernel is much more complicated...
edit: with the 1.4 ghz kernel the wifi worked but after one minute i've got a freeze. i thought it's maybe because of the oc so i've tried it again with the 1.2ghz (stock) kernel -> also freeze after some seconds...
Click to expand...
Click to collapse
Can't you update the kernel using the tubuntu tool? I think it's the same procedure no matter the sbk version.
Sent from my GT-N7000 using XDA Premium HD app
i looked it up in the how-to from tomcom http://forum.xda-developers.com/showpost.php?p=35895490&postcount=2
i'll try it, but as far as i know, changing the kernel.img into linux.img and reflashing the whole thing should do the same...
the strange thing ist that the only working version was the old build (exept chromium browser bug), the newest tubuntu version has no wifi and with the newest kernel it has random bugs. (freezing at boot, freeze after login, booting into "tf101 login:")
those errors are even with the same version after just rebooting my tablet
edit: ok i've reloaded everything and used the 1.4ghz kernel. the first time wifi wasn't working and it froze but after a reboot wifi worked finally! but it's really slow an unstable
ok, finally i've got my dock.
i've reflashed again 1.2 with 1.2ghz kernel. wifi working, but chromium is really unuseable... sometimes it's loading the page but most of the time it crashes the whole program or there's an errormessage "ups something went wrong"
i'm not shure if lubuntu is unstable only on my tf101 or if i've done something wrong. i fear it's my tablet because i've done everything exactly like in the tutorial.
is it worth to try raring? now i've the dock so i can install it, or is it more unstable than lubuntu?
edit: i've manage to reflash from prime to eos4 and back to working dualboot. suddenly the lubuntu was working better and was more stable. even chromium was much faster than any browser in adnroid. after that i wanted to install th ubuntu softwarecenter, but afer 5min the whole tablet froze... after rebooting i everything worked fine. to i whanted to boot again into linux and now it suddenly can't even boot
is there a way to just reflash only the linuxpart? i don't want to reset android again...
Mooks said:
ok, finally i've got my dock.
i've reflashed again 1.2 with 1.2ghz kernel. wifi working, but chromium is really unuseable... sometimes it's loading the page but most of the time it crashes the whole program or there's an errormessage "ups something went wrong"
i'm not shure if lubuntu is unstable only on my tf101 or if i've done something wrong. i fear it's my tablet because i've done everything exactly like in the tutorial.
is it worth to try raring? now i've the dock so i can install it, or is it more unstable than lubuntu?
edit: i've manage to reflash from prime to eos4 and back to working dualboot. suddenly the lubuntu was working better and was more stable. even chromium was much faster than any browser in adnroid. after that i wanted to install th ubuntu softwarecenter, but afer 5min the whole tablet froze... after rebooting i everything worked fine. to i whanted to boot again into linux and now it suddenly can't even boot
is there a way to just reflash only the linuxpart? i don't want to reset android again...
Click to expand...
Click to collapse
If you wish to only reinstall Ubuntu, put a copy of bootloader.bin and transformer.bct in the \bins directory of your Tubuntu application folder. They are located in the \images directory.
Now copy ubuntu.img (it doesn't matter which image you use for example lubuntu or the others available) to the \bins directory.
Connect your cable and boot the tablet into APX mode. You can have the Tubuntu app open to see "green" letters that say you are connected just to make sure.
Now open a command prompt and make sure it is set for the \bins directory.
Copy each line and hit enter (wait for the command prompt to show it's done each time)
wheelie -1 -o 0x300d8011 --bl bootloader.bin -c transformer.bct
nvflash -r --download 16 ubuntu.img
nvflash -r --go
After the last command there the tablet should reboot and most likely to Android if Android is your primary OS that is loading. Once in Android, shutdown and boot back up with volume down and power, then volume up like normal.
The new image is installed without disturbing the Android partition. There is a function called flash rootfs on the Tubuntu app to do this automatically but X3 is aware it isn't working and will fix it when he gets a chance.
thx! i#ve now installed raring and tried to install gnome-core and (after error an reflashing) lubuntu-desktop.
however i get now a error when installing the gui.
unpacking libpython3.3-stdlib:armhf (from .../libpython3.3-stdlib_3.3.0-12ubuntu3_armhf.deb) ...
dpkg-deb: error subprocess paste was killed by signal (broken pipe)
E: sub-process /usr/bin/dpkg recieved a segmentation fault.
Mooks said:
thx! i#ve now installed raring and tried to install gnome-core and (after error an reflashing) lubuntu-desktop.
however i get now a error when installing the gui.
unpacking libpython3.3-stdlib:armhf (from .../libpython3.3-stdlib_3.3.0-12ubuntu3_armhf.deb) ...
dpkg-deb: error subprocess paste was killed by signal (broken pipe)
E: sub-process /usr/bin/dpkg recieved a segmentation fault.
Click to expand...
Click to collapse
Hmm...did you uncomment universe entries in the aptsources? Can't remember the name of the file but if you install gnome core without editing the sources file it may not get the packages it needs. Rerun through my raring gnome core guide.
jep i've followed your guide.
http://forum.xda-developers.com/showthread.php?p=37803357
i'll try it again. could it be that my cpu or the ram is producing errors?
Mooks said:
jep i've followed your guide.
http://forum.xda-developers.com/showthread.php?p=37803357
i'll try it again. could it be that my cpu or the ram is producing errors?
Click to expand...
Click to collapse
You could try this:
http://dtbaker.com.au/random-bits/dpkg-received-a-segmentation-fault.html
mhm... it's getting stranger and stranger...
i've redone everything and while gnome-core installation i get a lot of:
[random numbers] BUG: scheduling while atomic: swapper/0/0xffff random codes...
i've tried dpkg --clear-avail but apt-get update makes also an error suddenly:
dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct problem.
after that it's still not working.
yesterday i was able to get nearly through the installation with repeating sudo dpkg --configure -a several times, but after 30min my transformer froze...
Is it possibel to use 3g on Ubuntu? Got the 101G.
Hi, I've been searching around for a stock tf300tg deodexed ROM but I can't find anything, and before you say "Install the tf300t one" I will say that I need the 3g version cause the combination of apps I use don't work well on the 3g with the non-3g ROM, I will probably get around deodexing in it myself but that might take me a few weeks before I can spare the time since I've never done it before and my experience with code is the turbo pascal I learned in high school .
Thanks in advance!!
Bump! x1000
Am in exactly the same position it would appear where all I want is a stock TG ROM that can run nicely. Have tried lots of the T-biased ROMs and they all come short...either the 3G functionality doesn't work or they are so laggy as heck you can't even do anything with your device. This might actually force me to go into development just to produce my own custom ROM...starting with a TG-specific kernel... Please let me know how it goes on your side.
EDIT: Busy setting up a Linux Mint box on the other side, and downloaded this stock ROM already. Soon as all's running fine on the Linux box, I can start with deodexing...that's the easy part, and then rooting
You could try the Arch Linux kernel for TF300TG
cb22 build a kernel for the tf300tg from scratch for the Arch Linux on TF300TG project. It can be used to just run Android (JB 4.1.1) and you may ignore the Arch Linux part. I don't have it myself yet, so I cannot say if it's deodexed.
http://forum.xda-developers.com/showthread.php?t=1918849
will try archlinux just for the fun of it but next week I might get around deodexing it, IIF I get a day off :--(
I just used xUltimate to pull the system files but I don't see any .odex files, is the stock ASUS rom deodexed by default or am I doing something wrong?
If not why do the elesbb mods don't work properly and I lose the whole status bar?
crossmission said:
I just used xUltimate to pull the system files but I don't see any .odex files, is the stock ASUS rom deodexed by default or am I doing something wrong?
If not why do the elesbb mods don't work properly and I lose the whole status bar?
Click to expand...
Click to collapse
Which firmware SKU are you trying to deodex (10.4.3.9) WW or TW?
Also not positive but think elesbb has only done the mods for the 10.4.2.20 (and the new 10.6.1.8) for the tf300t firmwares where the tf300tg firmware has not been updated for some time (still 10.4.3.9) and would think the systemui between the two would be somewhat different, so when you flash the mod you will have the tf300t systemui from tf300t (10.4.2.20) and it would not be compatible with the tf300tg.
Sorry disregard the WW or TW question, your in Limassol so you'll be using the WW.
Use adb to do a system pull
Code:
adb shell
adb pull system c:\androidpull
You can then zip that up and run a deodex in dsixda's Android Kitchen
pjc21 said:
You can then zip that up and run a deodex in dsixda's Android Kitchen
Click to expand...
Click to collapse
I would but if what you're saying is correct there are no mods for my version and I would have to see how elesbb changed his to make a similar mod for myself, by myself which is something I'm not familiar with, my knowledge domain stops to basic photoshop and coreldraw, flashing through recovery, some adb stuff and basic command line use (either windows or linux).
Unless you mean that I could package HIS mod for my rom using dsixda's kitchen?
If I get down to it I will give them to elesbb to put on his threads too so everyone who wants them can get them as I don't see a lot of action for the 3g model.
On a second thought I just quit my job last week and the new job I went to didn't go as planned, so I might end up selling it by next week
Anyway, there's always someone with worse problems...
Thanks for the help m8!!