[RFC v2] Add support for Xen ARM guest on FreeBSD

Andrew Turner andrew at fubar.geek.nz
Fri Nov 28 13:57:51 UTC 2014


On Sun, 23 Nov 2014 22:35:36 +0000
Julien Grall <julien.grall at linaro.org> wrote:
> Hello all,
> 
> At the beginning of the year, I have sent a first RFC to add support
> for FreeBSD on Xen ARM [1].
...
> Major changes in this new version:
>   	* Add Device Tree support via Linux Boot ABI
> 	* Add zImage support
> 	* Netfront support
> 	* Blkfront fixes
> 	* DOM0 support (separate branch see below)
> 
> The former item is very hackish. I was wondering if there is another
> way to do it? Or maybe we should support FreeBSD Bootloader in ARM
> guest?

I think using the loader is the correct way to handle booting in Xen. It
allows us to relocate the dtb as required. It look like a zImage then
use the Xen console to interact with the user.

> 
> The patch series is divided in X parts:
> 	* #1 - #14: Clean up and bug fixes for Xen. They can be
> applied without the rest of the series
>          * #15 - #19: Update Xen interface to 4.4 and fix
> compilation. It's required for ARM.
>          * #20 - #26: Update Xen code to support ARM
>          * #27 - #33: Rework the event channel code for supporting
> ARM. I will work with Royger to come with a common interface with x86
>          * #34 - #36: Add support for ARM in Xen code
>          * #37 - #46: ARM bug fixes and new features. Some of thoses 
> patches (#37 - #40) could be applied without the rest of the series
>          * #47 - #48: Add Xen ARM platform

I have committed patches 30 and 40 as they look good. I'm not familiar
with the code to review 37 or 38, however from my quick look at 38 I
appears _bus_dmamap_load_buffer does take in to account buflen and
dmat->maxsegsz when setting sgsize just not dmat->alignment.

...
> 
> TODO:
> 	* Add SMP/PSCI support in FreeBSD. Could be useful other
> platform too

Adding PSCI support is on my TODO lost for arm64, however I don't
expect to get on ti in until early next year.

> 	* Only FreeBSD to load anywhere. Currently there is a 2M
> alignment which require a patch in Xen.

If you use the loader this will be fixed as the loader can load the
kernel at the correct alignment.



More information about the freebsd-arm mailing list