(mini2440) Build a cross-compilation environment + Configure the Linux kernel
System ubuntu12.04 (not under virtual machine)
mini2440
CPU Model: S3C2440AL-40
Nanflash Model: K9F1G08
Norflash Model: sst39vf1601
LCD: Po x 320
$: Normal Account
#:root Account
* You can use the TAB key to auto-complete when you enter a path under the shell
(i) Build a cross-compilation environment
1. Copy the Linux folder from the mini2440 CD to the/home/lianghuiyong and rename it to Linux_share
(Two of these documents are added after me)
2.ctrl+alt+t Open the shell
3.$ su-root (toggle root permission)
4.#Cd/home/lianghuiyong/linux_share
5. Unzip the installation ARM-LINUX-GCC editor
#tar xvzf arm-linux-gcc-4.4.3.tar.gz–c/Note: There is a space behind C
Executing this command will install the ARM-LINUX-GCC into the/usr/loca/arm/4.4.3 directory. From the mini2440 user manual, I found that it was actually installed into the/opt/friendlyarm/toolchain/4.4.3 directory
6.#VIM/ROOT/.BASHRC
7. On the last line add:export path= $PATH:/opt/friendlyarm/toolschain/4.4.3/binOpt/friendlyarm/toolschain/4.4.3/bin for ARM-LINUX-GCC environment variable
: Wq save exit.
#Source ~/.BASHRC
8.#sudo gedit/etc/environment
Add tag section after games
9.#arm-linux-gcc-vThere's a space behind GCC.
Test hello.c# Cd/opt/friendlyarm/mini2440/examples/hello
# Arm-linux-gcc-o Hello hello.c
#./hello
(ii) Installation of source code and other tools to create working directory (below is the root environment):
# mkdir-p/opt/friendlyarm/mini2440
1>> extracting and installing the Linux kernel source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/linux-2.6.32.2-mini2440-20100106.tar.gz
2>> decompression Installation Embedded graphics system Qtopia source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/x86-qtopia.tgz
# tar Xvzf/home/lianghuiyong/linux_share/arm-qtopia.tgz
3>> decompression Installation Embedded graphics system QtE-4.6.1 source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/arm-qte-4.6.3-20100802.tar.gz
4>> Decompression installation BusyBox source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/busybox-1.13.3-mini2440.tgz
5>> unpacking and installing the Linux sample program
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/examples-20100108.tgz
6>> Decompression installation Vboot source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/vboot-src-20100106.tar.gz
7>> Decompression installation bootloader source code
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/bootloader.tgz
8>> extract Create target file system
# cd/opt/friendlyarm/mini2440
#tar xvzf/home/lianghuiyong/linux_share/rootfs_qtopia_qt4-20100816.tar.gz
9>> Decompression Installation target file system image making tool Mkyaffs2image
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/mkyaffs2image.tgz–c/
10>> Decompression Installation Logomaker
# cd/opt/friendlyarm/mini2440
# tar Xvzf/home/lianghuiyong/linux_share/logomaker.tgz–c/
(iii) Customizing the Linux kernel and making file systems
config_mini2440_x35– Kernel profile for Sony 3.5 "LCD
config_mini2440_t35– for the 3.5 "LCD kernel configuration file
config_mini2440_l80– for Sharp 8 "LCD (or compatible) kernel configuration files
config_mini2440_n35– for NEC3.5 "LCD Kernel Profile
config_mini2440_h43– for 4.3 "LCD kernel profile
config_mini2440_a70– for group Gen 7 "LCD kernel configuration file
config_mini2440_vga1024x768– core for VGA display output (resolution 1024x768) module
Configuration file
1. Configure default file Config_t35 (240x320)
#cd/opt/friendlyarm/mini2440/linux-2.6.32.2
#cp config_mini2440_t35. config
#Make menuconfig
Interface appears
Exit without making changes. This is done in order to generate a header file for the corresponding configuration (240x320).
2. Compiling the kernel
Compiling the kernel in the/opt/friendlyarm/mini2440/linux-2.6.32.2 directory
#make zimage
After compilation, the Linux kernel image file is generated in the Arch/arm/boot directory: Zimage (Zimage can be downloaded to the Dev Board test)
3. Customize the Linux kernel (go through the user manual)
#cd/opt/friendlyarm/mini2440/linux-2.6.32.2
#Make menuconfig
Configuration options appear:
3.1 Configuring the CPU
Main Menu-->system---Type s3c2400 machines--friendlyarm Mini2440 Development Board
3.2 Configuring the LCD driver
Main Menu-->device drivers-->graphics support-->support for frame buffer Devices-->backlight-->lcd select-- >3.5 inch 240x320 Toppoly LCD
3.3 Configuring the touch screen
Main Menu-->device drivers-->input Device support-->touchscreens-->samsung s3c24410 touchscreen Input Driver
3.4 Configuring the USB mouse and keyboard
Main Menu-->device drivers-->hid devices-->usb Human interface Device
3.5 Configuring the USB flash Drive
Main Menu-->device DRIVERS-->SCSI Device support--> SCSI Disk
3.6 Configuring Universal Drive USB Camera
Main Menu-->device Drivers-->multimedia devices-->video capture adapters-->v4l USB DEVICES-->GSPCA based Webcams-->ali USB m 5602 Camera Driver
3.7 Configuring the CMOS camera driver
Main Menu-->device Drivers-->multimedia devices-->video capture adapters-->ov9650 on the s3c2440 driver
3.8 Configuring the NIC driver
Main Menu-->netwoking support-->networking options--Select UNIX and TCP/IP
Main Menu-->device drivers-->network Device support-->ethernet (ten or 100Mbit)-
Select <*> Generic Media independent Interface device Support
<*> DM9000 Support
3.9 Configuring the USB Wireless Card driver
Main Menu-->netwoking SUPPORT-->WIRELESS-->IEEE 802.11
Main Menu-->device drivers-->netwoking Device support-->wireless lan-->wireless LAN (IEEE 802.11)-->ralink Driver support-->
3.10 Configuring Audio Drivers
Main Menu-->device drivers-->sound card supprt-->oss Mixer API-->alsa for SOC audio SUPPORT-->SOC audio for the Samsung S3cxxxx Chips
3.11 Configuring the SD/MMC card driver
Main Menu-->device drivers-->mmc/sd/sdio Card-->samsung s3c SD/MMC Card
3.12 Configuring watchdog Driver support
Main Menu-->device Drivers-->watchdog timer-->s3c2440 Watchdog
3.13 Configuring the LED Driver
Main Menu-->device drivers-->character devices-->led support for Mini2440
3.14 Configuring the key driver
Main Menu-->device Drivers-->character devices-->buttons Driver
3.15 Configuring the PWM control buzzer driver
Main Menu-->device drivers-->character devices-->buzzer driver for
3.16 Configuring AD conversion drivers
Main Menu-->device drivers-->character DEVICES-->ADC driver for
3.17 Configuring the serial port driver
Main Menu-->device drivers-->character devices-->serial Drivers-->samsung s3c2440/s3c2442
3.18 How to configure RTC real-time Clock driver
Main Menu-->device drivers-->real time Clock-->samsung s3c series SoC RTC
3.19 Configuring I2c-eeprom Driver Support
Main Menu-->device DRIVERS-->I2C support-->i2c Hardware Bus support-->s3c2410 i²c Driver
3.20 Configuring support for the Yaff2s file system
Main Menu-->device Drivers-->mtd-->nand Device support-->nand FLASH support
Main Menu-->file systems-->miscellaneous filesystems-->yaffs2 File System support
3.21 Configuring Ext2/vfat/nfs and other file systems
Main Menu-->file systems-->network file systems-->root file system on NFS
In order to support the FAT32 file system.
Main Menu-->file systems-->dos/fat/nt filesystems-->vfat (windows-95) FS Support
About mini2440 Linux kernel clipping to this end, after exiting there is a save prompt, choose Save!
3.22 Making a Linux logo
Originally wanted to use the logomaker, the resulting image is no data, which may be related to some parameters in the system
To create a logo using the command method:
Under the picture (open_show.png) directory
#pngtopnm open_show.png > temp.ppm
#ppmquant 224 temp.ppm >temp2.ppm
#Pnmnoraw temp2.ppm > logo.ppm
Change the logo.ppm generated in the directory to linux_logo_clut224.ppm, replacing the file with the same name in the Linux2.6.32.2/drivers/video/logo directory
(4) Making the target board (mini2440) system image root
#cd/opt/friendlyarm/mini2440
# mkyaffs2image-128m rootfs_qtopia_qt4 rootfs_qtopia_qt4.img
This will generate the rootfs_qtopia_qt4.img image file in the current directory, which you can burn to 128M Nand Flash via USB.
to this, the cropped Linux system image is complete!
(mini2440) Build a cross-compilation environment + Configure the Linux kernel