[openbeos] Re: openbeos Digest V8 #114
- From: Travis Geiselbrecht <geist@xxxxxxxxxx>
- To: openbeos@xxxxxxxxxxxxx
- Date: Fri, 27 Jun 2008 12:29:35 -0700
On Jun 27, 2008, at 5:08 AM, François Revol wrote:
From what I've done on m68k I'd say it's not too hard as long as
you
target arm with mmu. mmu-less ones aren't worth it.
Intriguing...
ARM920T for ex has one, 940 doesn't.
While it's possible to support mmu-less versions, in practice it'll be
much work for not much gained.
Linux doesn't run on those (only uCLinux), and I don't think WinCE
does.
Most user-interactive devices have one with an mmu anyway.
Yep, however if you want anything reasonably close to a PC performance
wise, you're going to want to target an arm11 or above. arm9s have
serious restrictions on how the mmu/cpu cache works, and generally is
somewhat inefficient running systems with lots of address spaces
(context switches are pretty expensive).
Anyway, I'm half considering doing the ARM port myself... I'll need
to
start reading up on the Haiku kernel, anyone got any pointers where
I
should start?
Now *that's* the spirit! :-) I don't know if there is much material
about
the subject although some material may be at <www.haiku-os.org/documents
>.
The code should hopefully be well structured and there are some
people
around with porting knowledge: Francois Revol is working on the M68K
port
right now (mmu_man in #haiku), Ingo Weinhold had worked on the PPC
port at
a time, Axel Dörfler of course and Travis (gheist), who wrote the
NewOS
kernel, is also pretty helpful and usually around in #haiku. The best
approach may be to eventually get network booting going for short
turn
around times, if your device supports it. Axel and Ingo can probably
help
you best with that.
Ithamar is also interested in the port, he has many devices at work :)
I've looked into it, and I think the simplest option is to use a 2-
stage boot:
- have uboot ported to the platform (should be available already),
with
added BFS support
- have initialize the hw and load zbeos, so zbeos doesn't have to
handle the myriad of hw combination, and can use uboot as a king of
BIOS
- then zbeos loads the kernel after initializing it mmu and other
stuff.
I'd be willing to help out. I work with low level arm code day in and
day out (currently doing linux hackery on ARM, previously did some of
the kernel hackery at apple to get darwin onto it). It's pretty
straightforward. I never got around to porting newos to arm mostly
because I was doing it at work, so I figured it wouldn't be a good
idea to do the same thing at home, but it's a pretty easy port.
If it'll help I can probably pretty quickly get newos ported to arm if
you want to use the code as reference. Probably wont take more than a
day or so to get the core kernel stuff running on it. It's the system
drivers that take a while with these chips, since essentially every
vendor's arm implementation is an entirely new architecture. The only
thing that is really shared is the instruction set, essentially.
At the minimum, come by #haiku and ask me questions if you need any
help. I've pretty much seen it and done it with regards to porting
stuff to arm, I doubt you'll stump me with anything new. :)
travis (geist)
- Follow-Ups:
- [openbeos] Re: openbeos Digest V8 #114
- From: François Revol
- References:
- [openbeos] Re: openbeos Digest V8 #114
- From: François Revol
Other related posts:
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
- » [openbeos] Re: openbeos Digest V8 #114
From what I've done on m68k I'd say it's not too hard as long as you target arm with mmu. mmu-less ones aren't worth it.Intriguing...
ARM920T for ex has one, 940 doesn't. While it's possible to support mmu-less versions, in practice it'll be much work for not much gained. Linux doesn't run on those (only uCLinux), and I don't think WinCE does. Most user-interactive devices have one with an mmu anyway.
Anyway, I'm half considering doing the ARM port myself... I'll need to start reading up on the Haiku kernel, anyone got any pointers where I should start?Now *that's* the spirit! :-) I don't know if there is much material aboutthe subject although some material may be at <www.haiku-os.org/documents >.The code should hopefully be well structured and there are somepeople around with porting knowledge: Francois Revol is working on the M68K port right now (mmu_man in #haiku), Ingo Weinhold had worked on the PPC port at a time, Axel Dörfler of course and Travis (gheist), who wrote the NewOS kernel, is also pretty helpful and usually around in #haiku. The best approach may be to eventually get network booting going for short turn around times, if your device supports it. Axel and Ingo can probably help you best with that.
Ithamar is also interested in the port, he has many devices at work :) I've looked into it, and I think the simplest option is to use a 2- stage boot:- have uboot ported to the platform (should be available already), with
added BFS support - have initialize the hw and load zbeos, so zbeos doesn't have to handle the myriad of hw combination, and can use uboot as a king of BIOS - then zbeos loads the kernel after initializing it mmu and other stuff.
- [openbeos] Re: openbeos Digest V8 #114
- From: François Revol
- [openbeos] Re: openbeos Digest V8 #114
- From: François Revol