1. Unzip the kernel
sudo xz-d linux-3.15.4.tar.xz
sudo tar xvf linux-3.15.4.tar
2. Modify the makefile on the top level of the kernel source
sudo vim Makefile
Arch=arm
cross_compile=arm-linux-
3.vim arch/arm/mach-s3c24xx/mach-smdk2440.c
S3c24xx_init_clocks (12000000);
The 4.make menuconfig command configures the kernel, uses the default profile/arch/arm/configs/s3c2410_defconfig, selects the CPU, adds its own information to the configuration sheet, supports Eabi (it optimizes for floating-point arithmetic, Use it to compile applications more efficiently)
Note: Make Menuconfig in Ubuntu will be error-messages as follows:
Unable to find the ncurses libraries or the
Required header files.
' Make Menuconfig ' requires the ncurses libraries.
***
Install ncurses (Ncurses-devel) and try again.
***
MAKE[1]: * * [Scripts/kconfig/dochecklxdialog] Error 1
Make: * * [Menuconfig] Error 2
Workaround:
On the command line, enter:
sudo apt-get install Libncurses5-dev
Then in make Menuconfig, success.
Ncurses is a dynamic library that provides function key definitions (shortcuts), screen drawing, and graphical interactive functions based on text terminals.
5. Modify the machine code, in the Arch/arm/tools/mach-types, the s3c2440 corresponding machine code to uboot passed in the same.