Android Emulator for FreeBSD + FreeBSD/ARM port

Alexander Tarasikov alexander.tarasikov at gmail.com
Sun Sep 7 18:01:13 UTC 2014


Hi, FreeBSD crowd!

During summer as part of GSoC program I was working on porting FreeBSD
to the Android Emulator.
Besides, I have ported Android Emulator to run natively on x86_64 as opposed to
using linuxulator for 32-bit support.

As for the kernel side, I have implemented the support for the
following hardware:
 *IRQ, Timer, UART
 *MMC
 *Ethernet
 *Framebuffer (using NEWCONS)

It allows to mount rootfs and boot up to login prompt with raspberry
pi sd card image.

As for the emulator, it's a bit complicated. FreeBSD boots fine if you
launch the emulator on Linux or Mac OS X. I have fixed some parts of
the build system and headers to make it compile and pass the tests on
FreeBSD. Unfortunately, the GUI doesn't work right now and only
console output (virtual UART) works.

If anyone is interested, I would like that you read my blog post,
review my kernel commit and suggest ways to improve and push the
changes upstream. As for the Emulator, I think we can get it running
with GUI and everything because it just has too many "#ifdef
__linux__" stuff around the code which should compile and run on
FreeBSD as well, we just need to gradually uncomment each of these
sections.

Relevant links:
[kernel code commit]
https://github.com/astarasikov/freebsd/commit/514be1f08a552f54abef83232498559c72e1d33b
[README, compilation instructions]
https://github.com/astarasikov/freebsd/blob/android_goldfish_arm_master/sys/arm/goldfish/README
[Emulator with patches]
https://github.com/astarasikov/qemu/tree/l-preview-freebsd
[blog] http://allsoftwaresucks.blogspot.ru/2014/09/gsoc-results-or-how-i-nearly-wasted.html

-- 
Regards, Alexander


More information about the freebsd-arm mailing list