Porting FreeBSD to Raspberry Pi

Aleksandr Rybalko ray at ddteam.net
Fri Nov 4 18:29:42 UTC 2011


On Fri, 04 Nov 2011 11:53:27 -0500
Mark Tinguely <marktinguely at gmail.com> wrote:

> On 11/4/2011 11:02 AM, Lev Serebryakov wrote:
> > Hello, Arnaud.
> > You wrote 4 ноября 2011 г., 19:48:29:
> >
> >>>> $89, 700MHz Cortex A8, 256MB DRR2, micro-SD. However, do not
> >>>> expect being able to run FreeBSD on it before a few years :)
> >>>   What is so special about A8?
> >>>
> >> It is the consumer technology of today. The best people can afford
> >> without being in ARM's R&D centers.
> >> Let me tell you what is going to happen. ARM11 has been around for
> >> years, it will take you a year or two to complete the project,
> >> nice, hacker thrill, you did it. However, by the time you release
> >> it, the Raspberry Pi will be sold-out and will be replaced by an
> >> ARMv7 core, smaller, faster, eventually cheaper. By that time, the
> >> current technology will be a 64bits MP-core ARMv8, And you will be
> >> in the exact same situation as today, FreeBSD lagging one or two
> >> generation behind Linux, keep up.
> 
> 
> I am sure people will be running ARM9 (ARMv5) for a long time. Your 
> point that they will not be available as consumer products is well
> taken.
> 
> 
> >    As I'm not a ARM specialist, I have several questions.
> >
> >    Does porting to ARM11 (ARVv6, am I right?) will make porting to
> > ARMv7 (Cortex) easier? You see, i486 adds some nice commands, tricks
> > and configuration registers to i386, but porting to i486 after you
> > have working port to i386/Protected mode is almost trivial.
> >    Or it is completely different architectures, which doesn't have
> > anything in common?
> >
> >    ARMvX is only a core, as far as I understand. How much different
> > are implementations from different vendors? MMU? Bus? Configuration
> > space?
> 
> We can run ARMv6/ARMv7using the ARMv5 model. But it would not be very 
> efficient. The ARMv6/7 new features can improve how things run. For 
> example we have hardware assisted atomic commands, we can remove all
> the VIVT cache fixing code, and we can share the kernel address space
> in each memory map.
> 
> But IMO, there are enough new features in the ARMv7 that finally make 
> something pv_entrys un-necessary.
> 
> The Cortex-A15 will be out next year with a whole new memory model.
> (40 bit physical, 32 bit virtual kernel, 40 bit hypervisor virtual).
> It will have an AMBA change that can shed some bus mastering problems.
> 
> 
> Besides the core new features, we always have all the different 
> peripherals for each SoC...
> 
> >
> >    Why do you think, porting to different ARMs should go
> > sequentially? :) Yes,  we (FreeBSD) doesn't have a lot of
> > resources, but as nobody could be forced to do what he don't want,
> > it is better, IMHO, to have ARM11 port, that to not have any ARM
> > port at all.
> >
> >    But I agree, that port to Cortex-A8/A9 looks more interesting :)
> >
> 
> The Cortex-A9 pandaboard is $174. The Cortex-A8 and A9 have some 
> differences, but they are more alike than the ARM11 and the Cortex-A8.
> 
> It will be tough to stay current with the hardware advances without
> some kind of sponsorship.
> 
> --Mark Tinguely.
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to
> "freebsd-hackers-unsubscribe at freebsd.org"

Yep. I use sponsorship of my company(D-Link) to port FreeBSD onto many
our devices :)

Q: Why to do any port, even on "new-old"(like a ARM11 in Pi)
chip?

A: (my personal opinion)

1. Most vendors not have even idea about producing device with FreeBSD,
because FreeBSD sold only in expensive hardware without any links which
OS inside. And no one said that FreeBSD can serve box with 32M RAM and
4M Flash. So second answer is advertising FreeBSD as embedded OS. And
then, when vendors will know what FreeBSD not only well for servers but
for small boxes also, then vendors will decide what to use: lame
Windows CE, old Linux kernel with cut-off userland or STABLE/CURRENT
FreeBSD. And as result some vendors will donate H/W for development
and will cooperate on development with FreeBSD hackers. 

2. I like to see FreeBSD on all devices around me, so for fun! :)

P.S. I know last sentence of A: Part1 already begin to work :)

-- 
Aleksandr Rybalko <ray at ddteam.net>


More information about the freebsd-hackers mailing list