Site Tools


kerneldev

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
kerneldev [2012/07/03 17:53] – Instructions for patching the stock Ubuntu kernel turboosterkerneldev [2014/06/21 18:57] (current) – [Mainline Git Kernel] santox
Line 142: Line 142:
 apt-get source linux-ac100 apt-get source linux-ac100
 cd linux-ac100-3.0.27/ cd linux-ac100-3.0.27/
-make paz00_defconfig 
 </code> </code>
 +Now if you want the original Ubuntu config do 
 +<code>cp /boot/config-$(uname -r) .config</code>
 +If you want the standrad ac100 config instead do:
 +<code>make paz00_defconfig</code>
 Apply patches if wanted. In this example I use gordans overclocking patches from [[http://www.altechnative.net/2011/12/31/overclocking-the-toshiba-ac100/|his site]]. Apply patches if wanted. In this example I use gordans overclocking patches from [[http://www.altechnative.net/2011/12/31/overclocking-the-toshiba-ac100/|his site]].
 <code>patch -p1 < tegra_common.patch <code>patch -p1 < tegra_common.patch
Line 153: Line 156:
 make -j3 modules_install make -j3 modules_install
 cp arm/boot/zImage /home/turbo/Downloads/zImage1200-3.0.27 cp arm/boot/zImage /home/turbo/Downloads/zImage1200-3.0.27
 +cp .config /boot/config-3.0.27
 </code> </code>
  
 Get the bootimg.cfg Get the bootimg.cfg
-<code>cd /tmp&& abootimg -x /dev/mmcblk0p4 && cp bootimg.cfg /home/turbo/Downloads/ && cd -</code>+<code>cd /boot/bootimg.cfg /home/turbo/Downloads/</code>
 Adjust the bootimg.cfg to your needs. Most importantly giving it a cool greeting text of course! Adjust the bootimg.cfg to your needs. Most importantly giving it a cool greeting text of course!
  
Line 183: Line 187:
 Reboot. Reboot.
  
 +===== 3.10.x Kernel series =====
 +3.10 build process is close to 3.0 for-next.
 +Device-tree is mandatory, you need to build it and concatenate with a kernel:
 +<code>
 +make dtbs
 +cat arch/arm/boot/tegra20-paz00.dtb >> arch/arm/boot/zImage
 +</code>
 +But 3.10 don't use paz00_defconfig anymore. Instead is uses tegra_defconfig (main idea of device-tree is to have all-in-one kernel and choose drivers on boot time using device-tree):
 +<code>make tegra_defconfig</code>
 +
 +===== Mainline Git Kernel =====
 +From 3.15, AC100 finally boots the official mainline kernel ! 
 +To succesfully cross-compile it, i used linaro precompiled toolchain [[http://releases.linaro.org/14.05/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.05_linux.tar.xz]]:
 +
 +  wget http://releases.linaro.org/14.05/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.05_linux.tar.xz
 +
 +extract it somewhere, and export install path so the toolchain can be found:
 +  tar xvf gcc-linaro-arm-linux-gnueabihf-4.9-2014.05_linux.tar.xz 
 +  export PATH=$PATH:gcc-linaro-arm-linux-gnueabihf-4.9-2014.05_linux/bin/
 +
 +Now you have to clone the kernel git repository:
 +  git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
 +  cd linux
 +  
 +As already described above, configure && make && install and your kernel is ready!
 +  make tegra_defconfig ARCH=arm
 +  make zImage modules dtbs INSTALL_MOD_PATH=/tmp INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
 +  make modules_install INSTALL_MOD_PATH=/tmp INSTALL_MOD_STRIP=1 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
 +
 +Copy everything you need in a folder (to copy on SD or USB key and put into AC100)
 +  mkdir ~/linux-3.16-0
 +  mv /tmp/lib/ ~/linux-3.16-0/
 +  cp arch/arm/boot/zImage ~/linux-3.16-0/
 +  cp arch/arm/boot/dts/tegra20-paz00.dtb ~/linux-3.16-0/
 + 
 ==== Kernel Debugging ==== ==== Kernel Debugging ====
  
kerneldev.txt · Last modified: 2014/06/21 18:57 by santox