How To Compile the Mainline Linux Kernel v4.9 for TS-4900

embedded-linux-ts-board

Here’s a quick how-to guide straight from one of our engineers on how to compile the mainline Linux Kernel v4.9-rc1 and install it on the TS-4900. Support for the TS-4900 in the mainline kernel image (v4.9 and up) is a pretty big deal for us, and we’re excited about it. A big shout out to our friends at Savoir-faire Linux for their hard work in making this happen!

Step 1: Install the Toolchain

We need to install the toolchain from Ubuntu or Debian Jessie by running the following command:

Step 2: Clone the Kernel Git Repository:

We’ll now clone the kernel source code from the official Linux kernel Git repository and change directory into the cloned path.

Step 3: Setup Build Environment Variables

We need to setup important environment variables so everything compiles appropriately for the TS-4900 ARM CPU and load address.

Step 4: Grab Official TS-4900 Kernel Defconfig File

Next step is grabbing the defconfig file which defines what kernel features we need in order to get it working on the TS-4900. If you want to make any modifications to this, you can run make menuconfig before continuing to the compiling step.

Step 5: Compile!

Now we’ll actually compile the kernel image using a fairly standard ‘make’ command.

Step 6: Install

This next step comes directly from the “Compile the Kernel” section of the TS-4900 manual. Basically, we’ll be installing it to the microSD card, so you’ll need a microSD card reader and have the microSD card plugged in. Let’s assume your Linux rootfs is all on /dev/sdc1, and we’ll execute each of these commands in order. Replace /dev/sdc1 with your specific Linux rootfs after determining using fdisk -l.

Final Confirmation

After installing the microSD card into the TS-4900, power up the board to a command prompt. Execute the uname -a command to verify the kernel version.

Author: Derek Hildreth

eBusiness Manager for Technologic Systems

  • Dan Hampleman

    So what if I wanted to do the same thing for only a TS-7260? I’ve already compiled the kernel by replacing the proper deconf file and have copied the uImage file to my sdcard. Which dts files should I copy over? I did a search for “Technologic” and only found the dts file for the 4900.

    • The official, mainstream Linux kernel doesn’t offer support for the TS-7260 like the TS-4900 now has. The latest kernel image we have for the TS-7260 is v2.6.29 available on the FTP site. If you have further questions, support would be happy to answer them or get you pointed in the right direction. Or, you could contact Savoir Faire Linux to see about getting the TS-7260 ported to mainline kernel.

  • Dan Hampleman

    Wow – that was fast! – OK – I’m finding a lot of ways to get to what I’m trying to do. Thanks Derek.

    • Sure thing! Good luck to you. My only other thought, which I’m sure you’re already aware of, is that the TS-7260 is quite old now. I might recommend looking at the TS-7250-V2, but I know our sales team would be much better at pairing the right system to your needs. 😉