Close

Compiling the Kernel With Framebuffer Support and DMA to SPI

A project log for A VGA Display for the Intel Edison!

Playing Quake on the Internet of Things...

pkPK 07/30/2015 at 07:220 Comments

You should, of course, start with a cross compilation setup. I'm using Ubuntu 14.04 in Virtual Box just fine. I'm starting with the 2.0 version of the Image/Board Support Package . I can't guarantee it will work with the newer version; if you get it working let me know!

A few changes have to be made to the kernel on the Edison before the framebuffer will work. Namely, the following things have to be enabled:

CONFIG_FB=y
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
CONFIG_FB_SYS_IMAGEBLIT=y
CONFIG_FB_SYS_FOPS=y
CONFIG_FB_DEFERRED_IO=y

Here is the config file I used. Copy it to /meta-intel-edison/meta-intel-edison-bsp/recipes-kernel/linux/files/defconfig in your BSP/cross compilation setup.


There are issues with SPI on the Edison with the 2.0 image - DMA won't work, and you'll be capped at 6.25 MHz SPI speed. Luckily smaguire and jkramarz have saved everyone a ton of work and got working DMA SPI writes at 25 MHz.

Install that patch, then build. Just do it overnight - it'll take a while. This page is an excellent reference for building the kernel.

Discussions