VCHIQ drivers work again

January 13, 2013 — 7 Comments

I synced both vchiq-freebsd and userland to latest and greatest.

As I mentioned earlier – OS compatibility shim was removed from upstream sources so I had to create Linux KPI implementation layer which turned out not that awful task because I managed to reuse a lot of code from Max Khon’s DAHDI port. I had to implement (in somewhat hackish fashion) kthread API, re-implement semaphores support using condvar and mutex in order to get _interruptible part of API working properly and create dumb implementation of rather small subset of Linux list.h API.

With latest code I got pretty much all demos in hello_pi working except hello_jpeg(crashes system) and hello_encode(didn’t test). The most exciting bit for me was watching H.264 video playing on Raspberry Pi in hello_video demo. Network throughput still sucks so I had to copy file to tmpfs partition in order to get smooth playback though.

If you want to test VCHIQ – in addition to sources you’ll need latest firmware files. For demos you’ll also have to install freetype2 and manually hack Makefile.include in hello_pi. I’m planning to create ports/packages for both drivers and userland some time next week.

On the related note: Aleksandr Rybalko got XOrg working on Efika MX Smartbook so FreeBSD/Pi will get graphic interface soon 🙂



7 responses to VCHIQ drivers work again

  1. Aleksandr Rybalko January 14, 2013 at 4:47 pm

    Why “it will”? It already have! Commit which ezyclie points to close difference between my driver for Efika MX Smartbook and RPi, so now anyone may follow my blog post and compile and run Xorg on RPi too.


  2. Hello,
    Can someone make an updated image for FreeBSD/pi with these latest developments? (VCHIQ, X.Org packets)?

  3. Hi Gonzo, i saw some files on

    Which files should I use to boot FreeBSD?

  4. Update: Xorg on RPi tested and working 🙂
    Follow instructions here.

Leave a Reply

Text formatting is available via select HTML. <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>