# Cubieboard



## bkouhi (Mar 6, 2013)

Hello forum,

I want to buy a cubieboard (something like raspberry pi) and then install FreeBSD on it. Cubieboard has an allwinner a10 core. Does FreeBSD supports this core? Can I install FreeBSD on it? I want to make sure about this before I pay.

Thanks!


----------



## SirDice (Mar 7, 2013)

Keep in mind that ARM is still a tier 2 platform. That said, there's a lot of work currently going on. Support for new hardware is being added as we speak. Still a lot of work to be done though. One of the problems with ARM is the differences in implementations. There are a lot of them.

You can find what's supported here: https://wiki.freebsd.org/FreeBSD/arm

Specific questions regarding the ARM platform are probably best asked on the mailinglists.


----------



## tingo (Mar 9, 2013)

It's very early days for Cubieboard: http://lists.freebsd.org/pipermail/freebsd-arm/2013-February/005026.html and http://lists.freebsd.org/pipermail/freebsd-arm/2013-March/005105.html, so unless you want to help developing and/or testing, you better wait a bit.


----------



## Animatrix (Mar 11, 2013)

Look at this part of `dmesg`:

```
Copyright (c) 1992-2013 The FreeBSD Project. 
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 
   The Regents of the University of California. All rights reserved. 
FreeBSD is a registered trademark of The FreeBSD Foundation. 
FreeBSD 10.0-CURRENT #27 r245250:245455M: Wed Jan 16 09:42:54 ULAT 2013 
    [email]tsgan@bsd.mobicom.mn:/usr/obj/arm.armv[/email]6/usr/src/sys/CUBIEBOARD arm 
WARNING: WITNESS option enabled, expect reduced performance. 
CPU: Cortex A8-r3 rev 2 (Cortex-A core) 
 Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext 
 WB disabled EABT branch prediction enabled 
LoUU:2 LoC:2 LoUIS:1 
Cache level 1: 
 32KB/64B 4-way data cache WT WB Read-Alloc 
 32KB/64B 4-way instruction cache Read-Alloc 
Cache level 2: 
 256KB/64B 8-way unified cache WT WB Read-Alloc Write-Alloc 
real memory  = 1073741824 (1024 MB) 
avail memory = 1042694144 (994 MB)
```
It is still ARMv6, rather than ARMv7, no floating point support.


----------



## andrew@ (Mar 12, 2013)

Animatrix said:
			
		

> ```
> CPU: Cortex A8-r3 rev 2 (Cortex-A core)
> ```
> It is still ARMv6, rather than ARMv7, no floating point support.



This line tells you it is an ARMv7.

The arm.armv6 in the kernel directory is because the ARMv6 and ARMv7 cores are close enough that they share a large amount of code and are considered the same architecture from FreeBSD's point of view. Floating point support is being worked on but a few toolchain issues need to be fixed first.


----------



## prp-e (Apr 30, 2013)

Hi. 

I'm very interested in ARM processors and I bought a Cubieboard about 4 months ago  I've decided to run FreeBSD on it, but I don't know where's start point  

Regards.


----------



## sossego (Apr 30, 2013)

Look at the technical specifications of the processor and board.
Find what operating system has been ported to the board.

In order to port a system to a processor:

What operating system runs on it?
Which version of that system is being used?
What compiler and which version of said compiler runs on it?

Porting from one OS architecture to another.

Has the sub-architecture of the processor been ported to the OS design of choice.
 E.g. is it in FreeBSD? If the answer is no, then look to see if it has support in OpenBSD or NetBSD.
Has the compiler been ported to the OS of choice? See the reference above.

You may need to do something as complex as:

Look to see what is the closest BSD version ported to the most recent version of that sub-architecture.
Port down-the-line on similar machines. 
Start porting and ask developers for help. Some people work across system and architecture lines to help others.


The processor may already be supported.


----------



## jackp (Apr 30, 2013)

There's already a Cubieboard topic open in the Embedded subforum:

http://forums.freebsd.org/showthread.php?t=38243


----------



## DutchDaemon (Apr 30, 2013)

Thread merged in.


----------

