(mini2440) Build a cross-compilation environment + Configure the Linux kernel

Source: Internet
Author: User

(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--&GT;WIRELESS--&GT;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--&GT;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--&GT;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--&GT;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

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.