E1XX Kernel hacking

Under construction. Al, the CROSS_COMPILE var and path need adapting for the Linaro toolchain.

How to build the kernel for the E1XX.

  • Source a file that adds the cross compiler to your path.
export PATH=/usr/local/angstrom/arm/bin:${PATH}

export CROSS_COMPILE=arm-angstrom-linux-gnueabi-

export INSTALL_MOD_PATH=${HOME}/src/install/linux-omap-modules
export INSTALL_MOD_STRIP=1
  • Clone the git repo: git clone git://github.com/balister/linux-omap-philip.git linux-omap
  • cd linux-omap
  • Checkout the E1XX branch: git checkout origin/e100-3.0-pm-2-bugfixes
  • Give this branch a name: git checkout -b my-e100-kernel
  • Create the kernel config file: cp defconfig .config
  • Build the kernel: make ARCH=arm uImage
  • Copy arch/arm/boot/uImage to the e1xx boot partition.
  • Build the modules: make ARCH=arm modules
  • Install the modules so we can make a tarball: make ARCH=arm modules_install
  • ${HOME}/src/install/linux-omap-modules/lib/modules
  • tar czvf modules.tgz ./3.0.0+/kernel
  • Copy modules.tgz to the e1xx.
  • cd /lib/modules
  • tar xzvf modules.tgz
  • Reboot.
  • Run depmod
  • Reboot again.