Nova Launcher Update Brings Lollipop Functionality and Feel

One of the most popular third party launcher on Android, Nova Launcher, has just … more

Check Your I/O Usage with Iotop for Android

Ever needed to check the I/O usage of apps? If so, you probably tried searching for an iotop … more

T-Mobile HTC One M8 Gets Selfie-Friendly Android 4.4.4 OTA

The T-Mobie variant of HTC One (M8) just now received an over-the-air update … more

Android L is for Lockdown

Root is, without a doubt, the (un)holy grail of the Android world. Those wonderful permissions that allow you as … more
Thread Closed

[PRO] ToshDroid Linux Kernel (Developers)

OP endrix

21st September 2010, 11:05 PM   |  #1  
endrix's Avatar
OP Member
Flag Lausanne
Thanks Meter: 0
 
86 posts
Join Date:Joined: Sep 2009
Warning From TheRomMistress:

8. Donations.

We appreciate all donations to xda-developers.com, it keeps our forum online and well maintained. As a user you're allowed to ask for donations in your signature as a thank you for your hard work. However donations up front are not allowed, this forum is about sharing, not about getting paid to do something, that's what your job is for.


Hello guys !!!

So I am endrix and I am trying to port the linux kernel to our Toshiba TG01. I am an h.264 developer who loves linux. Many of you may hate the phone (I do a little too) because of the crappy windows mobile operating system that Toshiba has offered us. Beside the resistive touch screen our phones have a strong processor that is used almost in each smartphone (ok Samsung and Apple are not using snapdragon but is still Cortex A8).

So to the main point!

Firstly is not an easy task and I do not somebody to write in this thread when Android will work with our phones, I truly do not know if I will (or we will) achieve this! Secondly think to contribute as you can to this project, I am here to guide you if you have any questions about how to compile the kernel and if you have any other problem just send me a message or write it in this thread!

My git repository of the TG01 kernel is this one
github.com/endrix/kernel_common


System compilers and libraries:

I used the one given by source.android.com

apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev.

certainly you do not need all of them but is ok to have it

So how can you compile the kernel?

Steps:
  • Use an Ubuntu Linux distribution or virtualise it with Virtualbox
  • I am using this cross tools: arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2"
  • in my system I have created a directory in my /opt folder, to that just do "sudo mkdir /opt/cross"
  • Now go to the directory with "cd /opt/cross"
  • now rember where you have download the tar archieve and execute the following command, in this command i have downloaded my tar in /home/endrix/Download: so for my directory I do " tar xjvf /home/endrix/Downloads/gnueabi-i686-pc-linux-gnu.tar.bz2"
  • Now that we have our cross tools installed in our system is it good to create an eviromental varibale to easy our task of ceoss compiling. do this command "gedit ~/.bashrc" and at the end of the file put this line: export CROSS_TOOLS=/opt/cross/arm-2009q1/bin/arm-none-linux-gnueabi-
  • now execute this command "source ~/.bashrc" so that you command can be activated for the current command, the next time that you will open another console or reboot the varibale $CROSS_TOOLS will work
  • This is all for the cross tools

Next step Compile the linux kernel:
  • Create a directory for example "Projects" in your main directory(home), "mkdir ~/Projects"
  • Clone the repository of my git address: "git clone github.com/endrix/kernel_common.git"
  • Now you wait, take a coffe or eat a fruit
  • now you execute this command in the "kernel_common" directory, "make ARCH=arm htcleo_defconfig"
  • and then to compile the kernel" make ARCH=arm CROSS_COMPILE=$CROSS_TOOLS Image"
  • To make the process even faster if you have a multicore system, put -j4 (for 2 cores) or -j16 (if you have an intel iCore7 with 4 cores double threaded), that means, "make -j4 ARCH=arm CROSS_COMPILE=$CROSS_TOOLS Image"
  • After a while depending you system you will get the kernel image file in the arch/arm/boot directory
  • So now you have the kernel compiled

Next step test the kernel with Haret:

1) Create the file default.txt with :
set mtype 2675
set ramaddr 0x11800000
set ramsize 0x18C00000
set kernel Image
boot

2)Download My modified version of Haret with TG01 support!
Haret for TG01


3)Create a folder in your sd card --> "ToshDroid and put the Image the haret.exe and the default.txt in it.

4) Finally execute the haret.ext and clik on run!

That's all folks! Now I am focusing in the Memory Map...

PS: sorry for links, As a junior member i cannot give a full url

I will update also my blog too for TG01

endri-bezati.blogspot.com
Last edited by TheRomMistress; 13th November 2010 at 04:22 AM. Reason: Added Warning
22nd September 2010, 01:13 PM   |  #2  
Senior Member
Thanks Meter: 11
 
261 posts
Join Date:Joined: Jan 2010
Hi endrix and welcome to xda-developers

I very much appreciate your work.. i've the same device.. it's a beautiful phone.. with a powerful hardware.. but windows mobile is not worthy of the hardware it runs on.. so we look forward for a release of android!

BTW.. i'd know what do you need to do your work.. can you make a list of thing that you need to accelerate your work? the first thing is compile android kernel.. but next? need you we post results? how we can fix the errors?

Sorry for my english but i'm italian.. and thank you.. hoping to see soon a first version of android..
22nd September 2010, 04:20 PM   |  #3  
Junior Member
Thanks Meter: 0
 
25 posts
Join Date:Joined: Apr 2010
Image Compiled without errors..

running haret it stops to "Jumping to kernel(custom). and freeze..
22nd September 2010, 04:34 PM   |  #4  
endrix's Avatar
OP Member
Flag Lausanne
Thanks Meter: 0
 
86 posts
Join Date:Joined: Sep 2009
isikil87 : Ok! forgot something!

Do

1) make clean
2) git checkout android-msm-2.6.32-tg01
3) make ARCH=arm htcleo_defconfig
4) make -j4 ARCH=arm CROSS_COMPILE=$CROSS_TOOLS Image

actually I am working on the android-msm-2.6.32-tg01 branch
22nd September 2010, 05:56 PM   |  #5  
Junior Member
Thanks Meter: 0
 
25 posts
Join Date:Joined: Apr 2010
compiled successfully...
boot ok.
jump to image ok.
linux pic visible.ok.

now we need the right address to write memory.
22nd September 2010, 06:37 PM   |  #6  
endrix's Avatar
OP Member
Flag Lausanne
Thanks Meter: 0
 
86 posts
Join Date:Joined: Sep 2009
Cool !
Quote:
Originally Posted by isikil87

compiled successfully...
boot ok.
jump to image ok.
linux pic visible.ok.

now we need the right address to write memory.

Exactly, the framebuffer is wrong too i think the addresse in the msm_iomap is not correct

#define MSM_RAM_CONSOLE_BASE IOMEM(0xF8010000)
22nd September 2010, 07:01 PM   |  #7  
Junior Member
Thanks Meter: 0
 
25 posts
Join Date:Joined: Apr 2010
have you dump the memory???
22nd September 2010, 07:35 PM   |  #8  
endrix's Avatar
OP Member
Flag Lausanne
Thanks Meter: 0
 
86 posts
Join Date:Joined: Sep 2009
dump ?
Quote:
Originally Posted by isikil87

have you dump the memory???

I have run haret with "dump mmu" but is not easy to understand everything, I am really a beginner in this domain I am currently searching for documentation!
23rd September 2010, 12:03 AM   |  #9  
TruckyBN's Avatar
Member
Thanks Meter: 4
 
74 posts
Join Date:Joined: Feb 2010
More
I am beginer too. How can I help?

Can you share with us that Image file?
23rd September 2010, 08:54 AM   |  #10  
endrix's Avatar
OP Member
Flag Lausanne
Thanks Meter: 0
 
86 posts
Join Date:Joined: Sep 2009
Talking The image file
Quote:
Originally Posted by TruckyBN

I am beginer too. How can I help?

Can you share with us that Image file?

It will not help you a lot but here is the compiled kernel

megaupload.com/?d=W027CS8P

Thread Closed Subscribe to Thread

Tags
android, tg01, toshdroid
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes