Cómo configurar y compilar el kernel de Linux que se ejecuta en la placa de desarrollo mini2440
Referencia: /os/html/201409/9334.html
Sistema ubuntu12.04 (máquina no virtual)
mini2440
Modelo de CPU: S3C2440AL-40
Modelo Nanflash: K9F1G08
Modelo Norflash: SST39VF1601
LCD: Tongbao 240 x 320
$ : Cuenta ordinaria
#: cuenta raíz
*Al ingresar la ruta en el shell, puede usar la tecla tab para completarla automáticamente
(1) Establezca un entorno de compilación cruzada
1. Copie la carpeta Linux en el CD mini2440 a /home/lianghuiyong y cámbiele el nombre a Linux_share
(dos de los documentos los agregué más tarde). )
2.Ctrl+Alt+T para abrir el shell
3.$ su - root (cambiar permisos de root)
4.# cd /home /lianghuiyong/Linux_share
5. Descomprima e instale el editor arm-linux-gcc
# tar xvzf arm-linux-gcc-4.4.3.tar.gz –C / // Nota: Hay un espacio después de C.
La ejecución de este comando instalará arm-linux-gcc en el directorio /usr/loca/arm/4.4.3. Esta oración proviene del manual del usuario de mini2440. Descubrí que en realidad está instalado en el directorio /opt/FriendlyARM/toolchain/4.4.3
6.# vim /root/.bashrc
<. p>7 En Agregue la última línea: export PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin //opt/FriendlyARM/toolschain/4.4.3/bin es la variable de entorno arm-linux-gcc.:wq guardar y salir.
# source ~/.bashrc
8.# sudo gedit /etc/environment
Agrega la parte de la etiqueta después de los juegos
9 # arm-linux-gcc -v //Hay un espacio después de gcc
Pruebe hello.c (este es el directorio ejemplos/hello solo después de instalar la segunda parte del programa de muestra de Linux)<. /p>
# cd /opt/FriendlyARM/mini2440/examples/hola
# arm-linux-gcc -o hola hola.c
# ./hola p>
(2) Instalar el código fuente y otras herramientas
Crear un directorio de trabajo (los siguientes están todos en el entorno raíz):
# mkdir -p /opt/ FriendlyARM/mini2440
1>>Descomprime e instala el código fuente del kernel de Linux
# cd /opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong /Linux_share/linux-2.6.32.2- mini2440-20100106.tar.gz
2>>Descomprima e instale el código fuente qtopia del sistema de gráficos integrado
# cd /opt/FriendlyARM/ mini2440
# tar xvzf /home/lianghuiyong/Linux_share/x86-qtopia.tgz
# tar xvzf /home/lianghuiyong/Linux_share/arm-qtopia.tgz
3>>Descomprima e instale el código fuente del sistema de gráficos integrado QtE-4.6.1
# cd /opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong/Linux_share/ arm-qte-4.6.3-20100802. tar.gz
4>>Extraiga e instale el código fuente de Busybox
# cd /opt/FriendlyARM/mini2440
5>>Extraiga e instale el programa de muestra de Linux
# cd /opt/FriendlyARM /mini2440
# tar xvzf / home/lianghuiyong/Linux_share/examples-20100108.tgz
6>>Descomprime e instala el código fuente de vboot
# cd / opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong/Linux_share/vboot-src-20100106.tar.gz
7>>Descomprima e instale el código fuente del gestor de arranque p>
# cd /opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong/Linux_share/bootloader.tgz
8>>Descomprimir para crear el sistema de archivos de destino
# cd /opt/FriendlyARM/min
i2440
#tar xvzf /home/lianghuiyong/Linux_share/rootfs_qtopia_qt4-20100816.tar.gz
9>>Extraiga e instale la herramienta de creación de imágenes del sistema de archivos de destino mkyaffs2image
# cd /opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong/Linux_share/mkyaffs2image.tgz –C /
10>>Descomprimir e instalar LogoMaker p>
# cd /opt/FriendlyARM/mini2440
# tar xvzf /home/lianghuiyong/Linux_share/logomaker.tgz –C /
(3) Kernel de Linux personalizado y archivos de producción Sistema
config_mini2440_x35 – Archivo de configuración del kernel para LCD Sony de 3,5”
config_mini2440_t35 – Archivo de configuración del kernel para LCD Tongbao de 3,5”
config_mini2440_l80 – Archivo de configuración del kernel aplicable para LCD Sharp de 8” (o compatible)
config_mini2440_n35 – Archivo de configuración del kernel para LCD NEC3.5”
config_mini2440_h43 – Configuración del kernel para archivo LCD de 4.3”
config_mini2440_a70 – Archivo de configuración del kernel adecuado para LCD Innolux de 7”
config_mini2440_vga1024x768 – Kernel adecuado para el módulo de salida de pantalla VGA (resolución 1024x768)
Archivo de configuración
1. el archivo predeterminado config_t35 (Tongbao 240x320)
# cd /opt/FriendlyARM/mini2440/linux-2.6.32.2
# cp config_mini2440_t35 .config
# make menuconfig
Aparece la interfaz
Salir sin realizar cambios. Esto se hace para generar el archivo de encabezado para la configuración correspondiente (Tongbao 240x320).
2. Compile el kernel
Compile el kernel en el directorio /opt/FriendlyARM/mini2440/linux-2.6.32.2
#make zImage
Después de la compilación, el archivo de imagen del kernel de Linux se generará en el directorio arch/arm/boot: zImage (zImage se puede descargar a la placa de desarrollo para probarlo)
3. (según el manual de usuario) Una vez)
# cd /opt/FriendlyARM/mini2440/linux-2.6.32.2
# make menuconfig
Las opciones de configuración aparece:
3.1 Configurar cpu
Menú principal -->Sistema --> Máquinas tipo S3C2400 --> Placa de desarrollo FriendlyARM Mini2440
3.2 Configurar controlador lcd
Menú principal -->Controladores de dispositivo-->Soporte de gráficos-->Soporte para dispositivos frame buffer-->Retroiluminación-->Selección de LCD-->LCD Toppoly de 3,5 pulgadas 240x320
3.3 Configuración de pantalla táctil
Menú principal-->Controladores de dispositivos-->Soporte de dispositivos de entrada-->Pantallas táctiles-->Controlador de entrada de pantalla táctil Samsung s3c24410
3.4 Configurar mouse y teclado USB
Menú principal- ->Controladores de dispositivos-->dispositivos ocultos-->Dispositivo de interfaz humana USB
3.5 Configurar disco USB
Menú principal-->Controladores de dispositivos -->Soporte de dispositivo SCSI--> Disco SCSI
3.6 Configurar controlador universal de cámara USB
Menú principal-->Controladores de dispositivo-->Dispositivos multimedia-->Adaptadores de captura de vídeo - ->Dispositivos USB V4L-->Cámaras web basadas en GSPCA-->Controlador de cámara ALi USB m 5602
3.7 Configurar el controlador de cámara CMOS
Menú principal-->Controladores de dispositivos-->Multimedia dispositivos-->Adaptadores de captura de video--> OV9650 en el controlador s3c2440
3.8 configurar el controlador de la tarjeta de red
Menú principal -->Soporte de red-->Opciones de red -->Seleccionar Unix y TCP/IP
Menú principal-->Controladores de dispositivo-->Soporte de dispositivo de red-->Ethernet (10 o 100 Mbit)-->
Seleccione<*> Medios genéricos Compatibilidad con dispositivos de interfaz independiente
<*>Compatibilidad con DM9000
p>
3.9 Configurar el controlador de la tarjeta de red inalámbrica USB
Menú principal-->Soporte de redes-->inalámbrico-->IEEE 802.11
Menú principal-->Controladores de dispositivos- - >Soporte de dispositivo de red-->LAN inalámbrica-->LAN inalámbrica (IEEE 802.11)-->Soporte de controlador Ralink-->
3.10 Configurar controlador de audio
Menú principal-- > Controladores de dispositivo-->Soporte de tarjeta de sonido-->API de mezclador OSS -->ALSA para soporte de audio Soc-->Audio SoC para los chips Samsung S3Cxxxx
3.11 Configuración del controlador de tarjeta SD/MMC
Menú principal-->Controladores de dispositivo-->Tarjeta MMC/SD/SDIO-->tarjeta SD/MMC Samsung S3C
3.12 Configurar el soporte del controlador de vigilancia
Menú principal -->Controladores de dispositivos-->Temporizador de vigilancia-->Watchdog s3c2440
3.13 Configurar el controlador LED
Menú principal-->Controladores de dispositivos-->Dispositivos de caracteres-->Soporte de LED para Mini2440
3.14 Configurar el controlador de botones
Menú principal-->Controladores de dispositivos-->Dispositivos de caracteres-->Controlador de botones
3.15 Configurar el zumbador de abeja de control PWM controlador
Menú principal-->Controladores de dispositivos-->Dispositivos de caracteres-->controlador de timbre para
3.16 Configurar el controlador de conversión AD
Menú principal- -> Controladores de dispositivos-->Dispositivos de caracteres-->Controlador ADC para
3.17 Configurar el controlador serie
Menú principal-->Controladores de dispositivos-->Dispositivos de caracteres-->Controladores serie-- >samsung S3C2440/S3C2442
3.18 Cómo configurar el controlador de reloj en tiempo real RTC
Menú principal-->Controladores de dispositivo-->Reloj en tiempo real-->SoC RTC de la serie Samsung S3C
3.19 Configurar el soporte del controlador I2C-EEPROM
Menú principal-->Controladores de dispositivo-->Soporte I2C -->Soporte de bus de hardware I2C-->Controlador I2C S3C2410
3.20 Configurar el soporte del sistema de archivos yaff2s
Menú principal-->Controladores de dispositivo-->MTD-->Soporte de dispositivo NAND -->Soporte NAND FLASH
Menú principal-- >Sistemas de archivos-->Varios
sistemas de archivos -->Soporte del sistema de archivos YAFFS2
3.21 Configurar sistemas de archivos como EXT2/VFAT/NFS
Menú principal-->Sistemas de archivos-->Sistemas de archivos de red -->raíz sistema de archivos en NFS
Para soportar el sistema de archivos FAT32.
Menú principal -->Sistemas de archivos-->Sistemas de archivos DOS/FAT/NT -->VFAT (windows- 95) Soporte para fs
Eso es todo para recortar el kernel de Linux mini2440. Después de salir, se le preguntará si desea guardar, seleccione guardar.
3.22 Crear logotipo de Linux
Originalmente quería usar Logomaker, pero todas las imágenes generadas no tenían datos. Esto puede estar relacionado con algunos parámetros del sistema
En el directorio de la imagen (open_show.png)
# pngtopnm open_show.png > temp.ppm
# ppmquant 224 temp.ppm > temp2.ppm
# pnmnoraw temp2.ppm > logo.ppm
Cambie el logo.ppm generado en el directorio a linux_logo_clut224.ppm, reemplazando linux2.6.32. 2/drivers/video Un archivo con el mismo nombre en el directorio /logo