ti816x Linux Kernel

Table of Contents

Make kernel

clean

make mrproper
make clean

make

 make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm ti8168_evm_defconfig
To view configuration interactively:
 make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm menuconfig
 make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm uImage
 make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm modules
 make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm INSTALL_MOD_PATH=/home/testbed/targetfs  modules_install

Auto detection of Kernel Load Address and Run Time RAM Base Determination

By default, the DM81xx kernel is built to be loaded at physical address 0x80008000 in RAM and take start of RAM as 0x80000000.

It is possible to load the kernel at a different location in RAM with kernel automatically determining RAM base depending upon the load address. This is achieved by the combination of two features added the kernel:

  1. Run time PHYSOFFSET determination: This feature enables determining physical to virtual translations

dynamically depending upon the position of kernel in system memory.

  1. Auto calculation of address for uncompressed kernel: This feature enables the compressed kernel entry code (part

of kernel zImage) to determine the address to uncompress the kernel depending upon the location it is loaded (started from).

  • Method 1
    BUILDHOST$ make ARCH=arm ti8168_evm_defconfig
    BUILDHOST$ make ARCH=arm zImage
    Here we use 0x90008000 as the kernel load address and entry point
    BUILDHOST$ mkimage -A arm -O linux -T kernel -C none -a 0x90008000 -e 0x90008000 -n 'Linux-2.6.37' -d arch/arm/boot/zImage uImage
    
  • Alternate Method: Single Step Build
    zreladdr-y=<desired-load-address> to make when building the uImage.
    BUILDHOST$ make ARCH=arm zreladdr-y=0x90008000 uImage
    

Misc

filesystem

Using The Correct Console Device

update the /etc/inittab file in the filesystem used for kernel

S:2345:respawn:/sbin/getty 115200 ttyS2
by,
S:2345:respawn:/sbin/getty 115200 ttyO2

Author: Shi Shougang

Created: 2015-03-05 Thu 23:20

Emacs 24.3.1 (Org mode 8.2.10)

Validate