Pro 01

I’m pleased to announce that the Linux 2.6 kernel has been ported to Apple’s iPhone platform, with support for the first and second generation iPhones as well as the first generation iPod touch. This is a rough first draft of the port, and many drivers are still missing, but it’s enough that a real alternative operating system is running on the iPhone.

What we have:

– Framebuffer driver
– Serial driver
– Serial over USB driver
– Interrupts, MMU, clock, etc.

What we have in openiboot (but hasn’t been ported yet):

– Read-only support for the NAND

What we don’t have (yet!):

– Write support for the NAND
– Wireless networking
– Touchscreen
– Sound
– Accelerometer
– Baseband support

The current userland we’re using, in the interest of expedience, is a Busybox installation created with buildroot, but glibc works fine as well, and we’re going to build a more permanent userland solution.

A demonstration video can be seen here: http://www.vimeo.com/2373142

Instructions here: http://www.iphone-dev.org/planetbeing/LINUX-README.txt

Download here: http://91.186.26.18/iphone/files/iphonelinux-demo.tar.gz (look for mirrors in the comments)

EDIT: The instructions are missing the step that you have to select openiboot console from the menu before performing the „sudo ./oibc“ step. Just be aware you have to do that if it seems like you’re not getting a response from the oibc client.

Project lead: planetbeing

Contributors: CPICH, cmw, poorlad, ius, saurik

If you’re experienced with hacking/porting Linux and especially if you’re experienced with porting Android, I’d definitely like to hear from you. Come chill in the #iphonelinux channel on irc.osx86.hu. Thanks. 🙂

EDIT: I was asked a couple times by people who wanted to donate (financially) to the project. I made a post discussing this possibility, if you are interested.

 

Copy of install instruction: ¨

These are utility binaries precompiled on Ubuntu 8.10. They require:

– libpthread
– libncurses
– libusb
– libreadline

You may elect to build them from source by pulling from
iphonelinux/openiboot’s git repository.

REALLY SUPER IMPORTANT, PLEASE DON’T JUST JUMP OVER THIS SECTION
—————————————————————-

BE WARNED THAT THESE STEPS ARE NOT INTENDED FOR NOVICES. YOU ATTEMPT THIS AT
YOUR OWN RISK. AT THIS TIME, WE CANNOT AFFORD THE EFFORT REQUIRED TO GIVE
SUPPORT TO NOVICES AND/OR RESCUE THEM FROM THEIR OWN ACTIONS.

Although unlikely, if the installation goes wrong, you may have to perform a
DFU restore on your iPhone. If you do not know how to do that, you should not
follow these steps. You should also know how to use iRecovery (or similar) and
the fsboot command to „kick an iPhone out of recovery mode“. If you do not
know how to do that, you should not follow these steps.

The installation of openiboot itself is safe, but openiboot has the facility
to erase device-specific information from your NOR flash. If you did not make
a backup, and execute the commands necessary to make openiboot erase that
information, it is gone forever and your device may never boot properly again.

The instructions below will show you how to make such a backup before any
changes are made.

INSTALLING OPENIBOOT
——————–

1. Put your iPhone in Recovery Mode
2. sudo ./loadibec openiboot-2g.img3
– Or -3g, -ipod, depending on your platform.
3. sudo ./oibc
4. nor_read 0x09000000 0x0 1048576
5. ~norbackup.dump:1048576
– This will create a file called norbackup.dump in your
current directory. GUARD IT WITH YOUR LIFE.
6. install
7. After ‚install‘ has finished, type in: reboot.
8. You ought to see the openiboot menu.

BOOTING LINUX
————-

1. Use the Hold button to navigate the menu. Push the Home button
when openiboot client is selected.
2. sudo ./oibc
3. !zImage
4. kernel
5. !rootfs.arm.ext2.gz
6. ramdisk 3588
7. boot „console=tty console=ttyUSB root=/dev/ram0 rw“
8. sudo ./linux

You should now get a login prompt. Nothing that’s happening will show up on
the LCD automatically, but you can redirect it to the display with the
following command:

9. sh 2>&1 > /dev/tty0

Enjoy!

Zdroj: http://linuxoniphone.blogspot.com/2008/11/linux-on-iphone.html

Zanechte komentář