This demo is a reference of ARM Linux Internet Platform ( ALIP ) Desktop Image on Sodia Board.

This page describes how to assemble and install Linaro ALIP (ARM Linux Internet Platform) distro based on Debian Jessie for Sodia Board.

You can see Desktop with DVI output.

2 ALIP image.jpg


Board Setup

sodia photo top.png
  • MSEL (J7)
    You need to set MSEL is FPP mode for FPGA configuring from HPS. Please set MSEL as follows:

msel_table.PNG   MSEL.png
    For SD Card Boot. You need to set BSEL & CSEL as follows:



  • USB-UART Connector (CN11)
    Use as console. Please connect to host PC using usb cable.

  • SD Card Slot (CN13)
    Please insert prepared SD card before power on.

  • DVI Out (CN9)
    Use as display output. Please connect to display using DVI cable (720p).

Prebuild SD Card Image

Item Download Note
All In One SD Card Image sd_card_image_sodia_alip.tar.gz

From Linux PC:
$ sudo dd if=xxx.img of=/dev/sdx bs=1M or
$ sudo dd if=xxx.img of=/dev/mmcblkx bs=1M

From Windows PC:
You can use Win32DiskImager tool

Please refer to following page: 

Individual Component

Item Download Note
HW Reference Design sodia dvi ghrd v16.1.0 This Reference Desing is using VIP core, this will need a license to compile a HW Design.
Linaro ALIP Root File System Linaro ARM linux Internet Platform.
This RootFS includes xwindow applications.
The default user is linaro, and the password for this user is set to linaro.
Linux Kernel Soruce

Download Snapshot from GitHub:

You can also use git clone. Please refer to following link:
- Building Kernel & U-Boot Separately From Git Trees

zImage zImage Prebuild Linux Kernel Image (4.1.22-ltsi)
Preloader preloader-mkpimage.bin Genereted by v16.1.0
U-Boot u-boot.img Genereted by v16.1.0
DeviceTree Blob soc_system.dtb Genereted by v16.1.0
U-Boot Script u-boot.scr Configure FPGA from U-Boot & Release a bridge reset before Linux boot
FPGA Configuration Image data soc_system.rbf Compressed RBF


Setup Build Tool Chain

In case the Linux kernel git trees are directly used, the build toolchain has to be manually downloaded. You need to setup cross compiler as follows:

$ cd ~
$ wget
$ tar Jxfv gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
$ export CROSS_COMPILE=~/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-

If build tool chain is missed, you can use cross compiler tool chain that is built in SoC EDS.
If SoC EDS that is v16.1 is intalled in your PC ,like follows:

$ export CROSS_COMPILE=/home/XXXXX/intelFPGA/16.1/embedded/ds-5/sw/gcc/bin/arm-linux-gnueabihf- 

Build Linux Kernel for DVI output system

This section presents instructions on how to compile the Linux kernel.

$ git clone
$ cd linux-socfpga
$ git checkout -b test_branch origin/socfpga-4.1.22-ltsi
$ export CROSS_COMPILE=~gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
$ export ARCH=arm
$ make socfpga_defconfig
$ make menuconfig

Added Framebuffer Driver:
Device Drivers → Grapics support → Frame buffer Devices.
And check on Support for frame buffer devices, VIP Frame Reader framebuffer support.

1 enable frame buffer.png

$ make zImage 

Some of the files that are created:
File Description
vmlinux Linux Kernel ELF file
arch/arm/boot/zImage Linux Kernel image

Extract Linaro jessie ALIP RootFS

$ sudo tar zxf linaro-jessie-alip-20160913-31.tar.gz

"binary" directory are created. You need do this step as superuser.

Added User Specific Settings to RootFS

For example, if you want you use DHCP. You need to modify /etc/network/interfaces as follows:

Open /etc/network/interfaces file as superuser. You can use any editor for this step.

$ sudo gedit binary/etc/network/interfaces

Added following statement for DHCP.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

You may customize even further if required.

Creating SD Card Imate

For SD Card Image creation, you can use "" python script that is provided from RocketBoards to simplify SD image creation. This script can be downloaded from here. Sample usage is as follows. You can specify files and size for each partitions for your system requirement.

$ sudo ./ -f \
-P preloader-mkpimage.bin,u-boot.img,num=3,format=raw,size=10M,type=A2 \
-P binary/*,num=2,format=ext3,size=2500M \
-P zImage,u-boot.scr,soc_system.rbf,soc_system.dtb,num=1,format=vfat,size=500M  \
-s 3800M -n sd_card_image_sodia_alip.bin

Note: You can download individual compornents from Individual Components section or you can create those binaries by yourself.

Add Debian mirror site for Stable Package Download

For using download Debian download package, you need to modify /etc/apt/sources.list as follows:
Open /etc/apt/sources.list file as superuser. You can use any editor for this step.( This example is for Japan.)
deb jessie main contrib non-free

Give us your feedback

© 1999-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Privacy.