Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Dec 2012 23:52:28 -0800
From:      Oleksandr Tymoshenko <gonzo@bluezbox.com>
To:        "<freebsd-arm@freebsd.org>" <freebsd-arm@freebsd.org>
Subject:   FreeBSD/armv6 for QEMU
Message-ID:  <B0C37560-A258-43C7-83E3-CF35F20A62B8@bluezbox.com>

next in thread | raw e-mail | index | archive | help
Hello,

I've just finished first version of VersatilePB support for =
FreeBSD/armv6.
QEMU uses this machine as a base for armv6 emulation.=20

Full patch: http://people.freebsd.org/~gonzo/arm/qemu/versatilepb.diff
Build/run info: http://kernelnomicon.org/?p=3D229

Kernel supports serial console, timers, primary and secondary interrupt
controllers, PCI, LCD controller, Keyboard/Mouse interface (partially,
no LEDs suport, no mouse)

Some patches are not versatile-pb specific so I'd like more people to =
look
at them:

- http://people.freebsd.org/~gonzo/patches/fdt-baseaddr.diff
Check for return code of fdt_get_range and if it fails assume base =
address=20
is zero. Otherwise pbase was used uninitialized and causes exception

- http://people.freebsd.org/~gonzo/patches/smc-interrupts.diff
Disable if_smc's interrupt in filter. It is reenabled by taskqueue later

- http://people.freebsd.org/~gonzo/patches/sym-barrier.diff
Barrier function for ARM

There is one more PL011-specific change, but Im still not sure if it's =
correct

Some notes taken during development:

- FDT support for handling interrupt-source property is insufficient for =
cascading=20
  interrupt controllers. I think concept of global IRQ space,  =
arm_get_next_irq=20
  and related functions should be reconsidered at least for FDT-enabled =
kernels.

- Proper PS/2 keyboard support for arch other than sparc/x86 is =
inevitable
   code duplications. PS/2 protocol logic should be extracted from =
dev/atkbd
   and made arch-indepedent.

- Framebuffer/syscons driver is PITA. No news here=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B0C37560-A258-43C7-83E3-CF35F20A62B8>