内核编译的基本方法
驱动程序和支持的文件系统也是内核的一部分,在这里我们要确定你所要支持的文件系统及所要涉及的外部设备
我自己使用的是yaffs文件系统:
1. 下载和解压
下载补丁文件:yaffs.tgz
解压:
cd /friendly-arm/kernel
tar xvzf yaffs.tgz
在make menuconfig 的file System 中选中:
===èFriendlyARM YAFFS file system support
编译后,重新启动是会打印出yaffs的相关信息
常见驱动程序存放位置如下:
网卡驱动 ---- cs 8900A
Kernel/deivers/net/cs 8900a .c
串口 1/2/3 驱动
Kernel/drivers/char/n_tty.c
Usb host 驱动:
Kernel/drivers/usb/usb-ohci-s 3c 2410.c
Kernel/drivers/usb/usb-ohci.o
Kernel/drivers/usb/usbcore.c
Usb摄像头驱动(ov511芯片)
Kernel/driver/usb/ov511.c
声卡驱动:
Kernel/drivers/sound/s 3c 2410-uda1341.c
按键驱动:
Kernel/drivers/char/matrix5-buttons.c
Led驱动:
Kernel/drivers/char/matrix5-leds.c
液晶屏驱动:
Kernel/drivers/video/s 3c 2410fb_ 3.5.c 5:6:5方式320 * 240的真彩驱动
Kernel/drivers/video/s 3c 2410_6448.c 5:6:5 方式640 * 480的真彩驱动
也可以手工增加自己的驱动进入内核中:
请看另外的文章—手动编写驱动程序
当文件系统和驱动程序都配置好后,就可以编译内核了,以下是编译内核的步骤
1.make menuconfig ,选择Load an Alternate Configuration File “arch/arm/sbc2410x”保存
Make menuconfig内部的具体菜单选择参看另外的文档说明—菜单说明
2. make clean
3. make dep
4. make zImage