[http://beaversource.oregonstate.edu/projects/cspfl Main] -> [wiki:CSPFL_Software Software Overview] -> [wiki:CSPFL_Kernel "The Kernel"] [[PageOutline]] ---- = The Kernel = The kernel source is maintained in the oswald-kernel git repository found at [https://code.oregonstate.edu/git/oswald-kernel]. Notice that there are a number of branches on the main kernel tree: * master - This is the main branch, use this for normal use * oswald-dss2 - This branch keeps up to date with upstream video trees * oswald-origin - This branch keeps up to date with upstream (kernel.org) * oswald-goskab - This is Ben Goska's branch, be careful if you decide to use it as it is never considered stable ---- == Checking out the code == The OSWALD kernel repository is maintained using git so it can be checked out using: {{{ #!sh git clone git://code.oregonstate.edu/oswald-kernel }}} == Configuring the kernel == To configure the kernel with the default settings for the OSWALD run the command: {{{ #!sh make omap3_oswald_defconfig }}} Then, you can manually configure kernel options using your favorite method such as: {{{ #!sh make menuconfig }}} == Building the kernel == In order to build the kernel, you must have a cross-compile toolchain for the OSWALD on your system. The easiest way to get one is get use the provided [wiki:CSPFL_SDK SDK]. Otherwise, if you are familiar with Gentoo you can build the cross-compile toolchain using [wiki:CSPFL_GentooCrossCompiling these instructions]. If you are using the toolchain provided with the SDK, you can execute the following command to build the kernel: {{{ #!sh CROSS_COMPILE=arm-radix-linux-gnueabi- make -j2 uImage }}} If you are using a Gentoo cross-compile toolchain you will have to use the command: {{{ #!sh CROSS_COMPILE=armv7a-softfloat-linux-gnueabi- make -j2 uImage }}} Note that you should increase the "-j2" argument if you have a fast, multi-core system and want to speed up the compile time.