TS-7600 kernel compile guide

From embeddedTS Manuals
Revision as of 22:00, 16 May 2013 by Mark (talk | contribs) (Created page with "For adding new support to the kernel, or recompiling with more specific options you will need to have an X86 compatible Linux host available that can handle the cross compilin...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

For adding new support to the kernel, or recompiling with more specific options you will need to have an X86 compatible Linux host available that can handle the cross compiling. Compiling the kernel on the board is not supported or recommended. Before building the kernel you will need to install a few support libraries on your workstation:

Prerequisites

RHEL/Fedora/CentOS:

yum install ncurses-devel ncurses
yum groupinstall "Development Tools" "Development Libraries"

Ubuntu/Debian:

sudo apt-get install build-essential libncurses5-dev libncursesw5-dev git
## If you are on a 64-bit system then 32-bit libraries will be required for the toolchain
# sudo apt-get install ia32-libs

For other distributions, please refer to their documentation to find equivalent tools.

Download sources and configure

git clone https://github.com/embeddedarm/linux-2.6.35.3-imx28.git

# This sets up the default configuration that we ship with for the TS-471x
make ts7600_defconfig

Once you have the configuration ready you can make your changes to the kernel. Commonly a reason for recompiling is to add support that was not built into the standard image's kernel. You can get a menu to browse available options by running:

make menuconfig

You can use the "/" key to search for specific terms through the kernel.

Build the kernel

Once you have it configured you can begin building the kernel. This usually takes about 5-10 minutes.

make

Install the Kernel and Modules

Next you need to install the kernel and modules to the SD card. Freescale uses a specialized booting mechanism for their processor, so to simplify installation we provide a script to handle installation as well as building/installing wireless-compat.

For example, if your workstation's SD card is /dev/mmcblk0:

sudo ./install_to_sd /dev/mmcblk0p
## or sdb
# sudo ./install_to_sd /dev/sdb