Jump to content

Android on i900?


Guest us1111

Recommended Posts

  • 2 weeks later...
Guest aleksanderp3
Also with linux running, we might be able to tap into the session and use a physical keyboard at first to test stability until IMF comes up... But first things first, get the kernel running B)

Damn.. This was supposed to be an edit, not a reply..

Have you found more information about android for PXA312? Now for about a month im searching the net every night for about 2 hours and no luck. Let me know how far you are i think i can help.

Link to comment
Share on other sites

  • 2 weeks later...
Guest zingaralho

as a nokia n770 / n810 owner , and 4 computers with linux and 2 with windows , yes the touchpad exist , more than one project and live runing , the nokias run with linux maemo.org , they just dont have phone , about the drivers , all people with knowhow now that is not that dificult to port some drivers , and this ones are more easy to port and hack than x86 bases , YES i love my i900 , and yes he do all the tricks ..... but linux for ever , and with a processor with this power you can have a fast linux base and stable , arm ports , debian and others , for example runing pure debian in n810 , the processor is weak than the omnia processor and go see what is runing xfce under a arm B)

yes i can be basic and dont whant to develop or .... i can learn day by day a little more

SPB SHELL ????? omg , why put omnia with more spend ram ??? if you whant the base "perfection" please dont delay the system

sorry about the typos , and long live linux , and lets go port gentoo to omnia hihiihihih , exist a arm version of gentoo

and gentoo already used on arm processor that whent to mars B)

Edited by zingaralho
Link to comment
Share on other sites

  • 3 weeks later...

Okaye.. I compiled the kernel and the kernel boots with Haret at least!!!

Install for example JEOS (in an Virtual Machine)

Install Dev Environment:

apt-get gcc

apt-get make

apt-get install linux-headers-$(uname -r)

apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

Download Cross Compiler

http://www.codesourcery.com/gnu_toolchains...?@template=lite

Select: GNU/Linux (and then Advanced Packages / IA32 GNU/Linux TAR)

Download and Unpack Cross Compiler

wget http://www.codesourcery.com/gnu_toolchains...nux-gnu.tar.bz2

cd /usr/local ; tar -xjvf /tmp/arm-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

Download GIT Kernel

# apt-get install git-svn

Download Kernel

# git clone http://www.oliford.co.uk/hpipaq214/ipaq214.git v4

Change in Makefile:

# vi /ANDROID/v4/Makefile

ARCH ?= arm

CROSS_COMPILE ?= /usr/local/xscale/arm-2008q3/bin/arm-none-linux-gnueabi-

Compile kernel:

make Image

The compiled and with Haret runable image will be in "arch/arm/boot/Image"

Download Haret (I used the PXA312 version from Oliver Ford from www.handhelds.com)

http://www.oliford.co.uk/hpipaq214/files/h...aq214-aug08.exe

Change Haret Settings (default.txt)

set kernel "Image"

Set ramaddr 0xa0000000

Set RAMSIZE 0x04000000

Set cmdline "root=179:2 rootdelay=3 rw init=/sbin/init"

Set mtype 1653

Set kernelcrc 0

Set fbduringboot 1

Set forcefbduringboot 1

Bootlinux

Booting.....

If you copy the compiled Image to the directory in which you placed Haret, you should be off, the kernel will boot.. Mind you, this is just the booting kernel, the hard work will start from here!

Edited by us1111
Link to comment
Share on other sites

Guest finaldestiny

wohoo! great work mate! glad to see this finally getting somewhere after all the research that's gone into it! Be sure to post here ways in which those interested can help out :rolleyes:

Link to comment
Share on other sites

wohoo! great work mate! glad to see this finally getting somewhere after all the research that's gone into it! Be sure to post here ways in which those interested can help out :rolleyes:

Well... I seem to remember that someone posted a picture of the insides of the omnia once.... That could help me finding out the right LCD driver.. The kernel has the wrong resolution because of this..

So if anyone has a picture of the insides of the omnia please..

Link to comment
Share on other sites

Guest Mr.Tuan
Okaye.. I compiled the kernel and the kernel boots with Haret at least!!!

Install for example JEOS (in an Virtual Machine)

Install Dev Environment:

apt-get gcc

apt-get make

apt-get install linux-headers-$(uname -r)

apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

Download Cross Compiler

http://www.codesourcery.com/gnu_toolchains...?@template=lite

Select: GNU/Linux (and then Advanced Packages / IA32 GNU/Linux TAR)

Download and Unpack Cross Compiler

wget http://www.codesourcery.com/gnu_toolchains...nux-gnu.tar.bz2

cd /usr/local ; tar -xjvf /tmp/arm-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

Download GIT Kernel

# apt-get install git-svn

Download Kernel

# git clone http://www.oliford.co.uk/hpipaq214/ipaq214.git v4

Change in Makefile:

# vi /ANDROID/v4/Makefile

ARCH ?= arm

CROSS_COMPILE ?= /usr/local/xscale/arm-2008q3/bin/arm-none-linux-gnueabi-

Compile kernel:

make Image

The compiled and with Haret runable image will be in "arch/arm/boot/Image"

Download Haret (I used the PXA312 version from Oliver Ford from www.handhelds.com)

http://www.oliford.co.uk/hpipaq214/files/h...aq214-aug08.exe

Change Haret Settings (default.txt)

set kernel "Image"

Set ramaddr 0xa0000000

Set RAMSIZE 0x04000000

Set cmdline "root=179:2 rootdelay=3 rw init=/sbin/init"

Set mtype 1653

Set kernelcrc 0

Set fbduringboot 1

Set forcefbduringboot 1

Bootlinux

Booting.....

If you copy the compiled Image to the directory in which you placed Haret, you should be off, the kernel will boot.. Mind you, this is just the booting kernel, the hard work will start from here!

Thank U

Can u upload some screenshots plz?

Link to comment
Share on other sites

Guest Akshay_LP

Great Work! Although I understand almost next to nothing about what you've done but I do know you've gotten somewhere!

Good job, lets get this thread active people!

Link to comment
Share on other sites

Guest BigDaemon

OK, i don´t know THAT much about Linux and next to nothing about Android, but:

If you have the Kernel running on the Samsung i900, i guess a hard step is already done?!

Is ANYONE working on this project now? And if not: Why did you stop it??

Thanks for your answers

Link to comment
Share on other sites

Guest BigDaemon

hmm seemes like no one is interested anymore in getting Android on the i900 :-(

I will get mine in a few weeks and will start playing around with haret and Android with my friends from university, but i guess i won´t even come closer on running android than you, because i don´t know very much about linux and ppc :-(

too sad, android looks like a cool OS and the i900 is a very cool device...would be a better device with android ;-)

Link to comment
Share on other sites

I have a problem. When I run Haret, the screen freeze with the letters: Jumping to kernel... And it stop here. Can somebody help me?

Hi,

I'm having exactly the same problem as chomi7.

I followed though all steps, however I had to "make menuconfig", then saved with the defaults, before "make Image". Could this be wrong?

Looking forward to help on this.

Thanks,

oxi

Link to comment
Share on other sites

  • 4 weeks later...

I did successful to boot the kernel for omnia,

but it stop at somewhere Driver 'sd' needs updating, please use bus-type method.

For resolution, if you compile from source, you can try to find something *fb* in the arm folder, then search

for the .xres or .yres and .pixclock.

Photo0201.jpg

Edited by z720
Link to comment
Share on other sites

Update (thanks to z720 for getting the resolution right for debugging) we can now boot into a shell... Which is unreachable because of lack of input (keyboard) :D

Complete steps for booting the android linux kernel (updates follow as we progress):

Install Dev Environment:

apt-get install linux-headers-$(uname -r) gcc make kernel-package libncurses5-dev fakeroot wget bzip2 git-svn curl

Download Cross Compiler

www.codesourcery.com/sgpp/lite/arm/portal/release642

Select: GNU/Linux (and then Advanced Packages / IA32 GNU/Linux TAR)

Download and Unpack Cross Compiler

(www.codesourcery.com/sgpp/lite/arm/portal/package3686/public/arm-none-eabi/arm-2008q3-66-arm-none-eabi-i686-pc-linux-gnu.tar.bz2)

# wget http://www.codesourcery.com/sgpp/lite/arm/...nux-gnu.tar.bz2

# cd /usr/local ; tar -xjvf /tmp/arm-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

Download Kernel (Thans to Oliver Ford!)

# git clone http://www.oliford.co.uk/hpipaq214/ipaq214.git v4

Change in Makefile:

# vi /ANDROID/v4/Makefile

ARCH ?= arm

 CROSS_COMPILE ?= /usr/local/xscale/arm-2008q3/bin/arm-none-linux-gnueabi-
Adjust resolution (Thanks to z720!) open the /arch/arm/mach-pxa/hpipaq214-lcd.c and change the folowing parameters:
.xres = 240 

 .yres = 400

 .pixclock = 96153.
Compile kernel: make Image The compiled and with Haret runable image will be in "arch/arm/boot/Image" Download Haret (I used the PXA312 version from Oliver Ford from www.handhelds.com) http://www.oliford.co.uk/hpipaq214/files/h...aq214-aug08.exe Change Haret Settings (default.txt)
set kernel "Image"

 Set ramaddr 0xa0000000

 Set RAMSIZE 0x04000000

 Set cmdline "root=179:2 rootdelay=3 rw init=/sbin/init"

 Set mtype 1653

 Set kernelcrc 0

 Set fbduringboot 1

 Set forcefbduringboot 1
Bootlinux Booting..... If you copy the compiled Image to the directory in which you placed Haret, you should be off, the kernel will boot.. Mind you, this is just the booting kernel, the hard work will start from here! Photo0201.jpg Thanx for the picture z720! Cross Compile busybox with static linking: cd busybox-1.13.2/ Change Makefile to have the cross compiler active again:
ARCH			?= arm

 CROSS_COMPILE   ?= /usr/local/arm-2008q3/bin/arm-none-linux-gnueabi-
Make the static busybox (make menuconfig first and disable all non wanted busybox commands, leave ash, init, rclinux and telnetd active for later use!): # LDFLAGS="--static" CFLAGS="--static" make # file busybox busybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped Copy the busybox to the new initrd directory: # cp busybox /ANDROID/initrd # cd /ANDROID/initrd # ln -s busybox init # ln -s busybox ash # ln -s busybox rclinux # mkdir dev; mkdir sys ; mkdir proc # cp -dpr /dev/ttys1 /dev/ttys2 /dev/ttys3 /dev/ttys4 /ANDROID/initrd/dev Make the initrd.gz ramdisk fromout the initrd directory # find . | cpio --create --'format=newc' | gzip >../initrd.gz Copy it to the directory in which the kernel is placed... Change default.txt cmdline:
Set cmdline "root=/dev/ram0 ramdisk_size=8192 rootdelay=5 rootwait rw init=/ash lpj=loops_per_jiffy boot_delay=100"

Boot and see why we need a keyboard now :) Next step is maybe auto configure network and start telnetd in the ramdisk :)

Edited by us1111
Link to comment
Share on other sites

Guest shokka9

well done guys...i been watching with interest. Because as soon as you have something usable, i will be using it.

You have made progress from the beginning, when it was just an idea. Now it should (hopefully) move a bit quicker, i asssume the next problems have been encountered by some when trying to do the same as you (but on other devices).

I wish i could offer something to you guys, but i could not help at this stage, this is way beyond my knowledge base.

Keep it up and i cannot wait for the end(ish) product.

Congrats for all your efforts!

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.