modify_file_list

  • 格式:doc
  • 大小:140.00 KB
  • 文档页数:3

Linux文件修改列表
文档作者: 侯辉华
部门:
时间: 2007/08/16
以下主要介绍在开发驱动过程中有个修改的之处的简单介绍,关于具体为何修改以及如何修改参见其它的驱动开发手册, 讲解时主要以开发的几个驱动为中心.
一. 首先在开发宝中加入的linux驱动无关部分有:
1.加入了1.62版的学习版minigui代码,并做了简单的修改,编译前请执行配置脚本:
./ buildlib-ep9302
./make
./make install
在minigui的示例文件夹当中,也有一个配置脚本:
./builddemo-ep93xx
./make
具体编译minigui时,会出现错误,目前都已经在配置脚本当中修正,具体的修改不在此详细列出,编译时直接按照上面的步骤即可生成最终的示例程序,至于是否要调试信息以及其它的,请配置buildlib-ep9302.
2.因为在板子上无法调试应用程序(详见“排除的几个BUG简要说明.doc”),因此加入了
gdb最新的版本6.5,用于替代gdb5.3以解决调试应用问题.
3.更新替换redboot的网络驱动部分的代码,解决不能下载的问题.
文件: ecos-2.0\packages\devs\eth\arm\ep93xx\v2_0\src\ ep93xx_eth.h
ecos-2.0\packages\devs\eth\arm\ep93xx\v2_0\src\ if_ep93xx.c
二. 其次linux驱动部分有:
这部分的主查增加相应的驱动代码文件以及头文件,主要指出其位置,其它详细的内容可以参考相应的驱动开发文档.
1.framebuffer显卡驱动.
文件: linux-2.4.21\drivers\video\Ep93xxfb_lanrry.c
linux-2.4.21\drivers\video\Ep93xxfb_lanrry.h
2.I2C的RTC实时时钟驱动.
文件: linux-2.4.21\drivers\char\pcf88563_rtc.c
linux-2.4.21\drivers\i2c\ i2c-ep93xx.c
3.w83697/w83977串口驱动.
文件: linux-2.4.21\drivers\serial\ Ep93xx_w83697.c
linux-2.4.21\include\arm-asm\hardware\serial_w83697.h
linux-2.4.21\drivers\i2c\winbond_config.h //w83697/w63977配置功能头文件.
4.w83977的ps2键盘鼠标驱动.
文件: linux-2.4.21\drivers\serial\ Ep93xx_w83977_keyb.c
linux-2.4.21\include\linux\pc_keyb.h
linux-2.4.21\drivers\i2c\winbond_config.h //w83697/w63977配置功能头文件.
三. 其次linux驱动配置文件部分有:
这部分指出往linux加入驱动模块后,要如何修改配置,可以让用户可以选择是否编译自己的驱动模块.
1.Linux的配置原理很简单,主要是由memuconfig生成一个autoconf.h的配置文件,这里面包含了所以系统中可以配置模块的宏定义, 所有的.c文件都会最终包含此头文件,因此这个文件有变动,则依赖关系改变,整个LINUX会重新进行编译.
2.要修改menuconfig菜单下的选项必须修改相应模块下面的两个文件: 一个是Config.in 文件,另外一个是Makefile文件. 在Config.in中加入了相应编译选项后,必须修改相应的Makefile文件,具体的修改示例如下:
比如说增加显卡驱动的配置模块, 在linux-2.4.21\drivers\video\Config.in文件中修改如下:
# houhh 20070608...
if [ "$CONFIG_ARCH_EP9302" = "y" ]; then
bool ' EP93xx Lanrry Frame Buffer support' CONFIG_FB_EP93XX_LANRRY
else
define_bool CONFIG_FB_EP93XX_LANRRY n
fi
if [ "$CONFIG_FB_EP93XX_LANRRY" = "y" ]; then
choice ' EP93xx Lattice Frame Buffer Display Resolution' \
"640x480 CONFIG_FB_EP93XX_LANRRY_640x480 \
800x600 CONFIG_FB_EP93XX_LANRRY_800x600 \
1024x768 CONFIG_FB_EP93XX_LANRRY_1024x768" 800x600
choice ' EP93xx Lattice Color Depth' \
"8bpp_default CONFIG_FB_EP93XX_LANRRY_8BPP \
8bpp_custom CONFIG_FB_EP93XX_LANRRY_8BPP_CUSTOM \
16bpp_565 CONFIG_FB_EP93XX_LANRRY_16BPP_565" 16bpp_565 bool ' Show Linux Start logo' CONFIG_FB_SHOW_LOGO
fi
配置示例截图如下:
在linux-2.4.21\drivers\video\Makefile中修改如下:
#houhh 20070608...
obj-$(CONFIG_FB_EP93XX_LANRRY) += ep93xxfb_lanrry.o
如此即完成加入一个模块到linux的过程.。