掌握Linux系统IDE驱动模块的编译与配置了.ppt
上传人:天马****23 上传时间:2024-09-11 格式:PPT 页数:16 大小:245KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

掌握Linux系统IDE驱动模块的编译与配置了.ppt

掌握Linux系统IDE驱动模块的编译与配置了.ppt

预览

免费试读已结束,剩余 6 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

硬件:PC机1台MagicARM2410教学实验开发平台1台IDE硬盘1块软件:RedHatLinux9.0操作系统嵌入式Linux开发环境(1)编写及编译PD6710芯片ATA模式下的驱动程序;(2)配置及编译ATA设备驱动模块;(3)加载ATA驱动模块和PD6710驱动,在IDE硬盘上创建文件夹,并验证。(1)了解PD6710芯片ATA模式的使用。(2)复习内核编译实验的相关内容。(3)复习PCMCIA接口CF卡实验中的ATA驱动模块的编译。IDE设备是Linux系统下常用的数据存储设备,其容量大而且价格便宜的特点是其它存储设备不可比拟的。所以在数据量特大的嵌入式系统应用中,IDE设备是不可以缺少的。PD6710是一个PCMCIA接口的桥接芯片,它可以完成实现PCMCIA接口的所有功能。它还有一种工作模式,那就ATA模式。Linxu系统中带有了完整的ATA设备驱动,并且提供了简易接口。只需要用户提供两个基地址及1个中断号,就可以接管ATA设备。注册及注销IDE设备的接口函数如程序清单1.1所示。程序清单1.1ATA设备驱动接口函数intide_register(intarg1,intarg2,intirq);voidide_unregister(unsignedintindex);ide_register()函数为注册ATA设备,其有三个输入参数:arg1、arg2和irq。arg1为一般寄存器的起始地址,其地址为:vCF_IO_BASE+0x1f0,vCF_IO_BASE为PD6710芯片所在系统中IO地址的虚拟地址;arg2为控制寄存器的起始地址,其地址为:vCF_IO_BASE+0x3f6;irq则为ATA设备分配的中断号,这与硬件系统分配的中断引脚相关。使用该函数注册ATA设备成功将返回一个设备索引号,该索引号在IDE设备注销时使用。ide_unregister()函数注销ATA设备,其只有1个参数index,该参数为注册ATA设备时返回的值。程序清单1.1ATA设备驱动接口函数intide_register(intarg1,intarg2,intirq);voidide_unregister(unsignedintindex);ide_register()函数为注册ATA设备,其有三个输入参数:arg1、arg2和irq。arg1为一般寄存器的起始地址,其地址为:vCF_IO_BASE+0x1f0,vCF_IO_BASE为PD6710芯片所在系统中IO地址的虚拟地址;arg2为控制寄存器的起始地址,其地址为:vCF_IO_BASE+0x3f6;irq则为ATA设备分配的中断号,这与硬件系统分配的中断引脚相关。使用该函数注册ATA设备成功将返回一个设备索引号,该索引号在IDE设备注销时使用。ide_unregister()函数注销ATA设备,其只有1个参数index,该参数为注册ATA设备时返回的值。配置PD6710为ATA模式MagicARM2410产品光盘中已提供了PD6710在ATA模式的驱动,将光盘本实验文件夹中复制pd6700_ide.c、pd6700.h和Makefile文件到Linux开发环境,并根据Linux开发环境修改Makefile文件。执行make命令编译连接,生成pd6700_ide.ko文件。关于PD6710的ATA模式设置请参阅Intel公司的PD67XX—ConfiguringPCMCIASocketsforATADriveInterface文档。配置ATA驱动模块在MainMenu下进入“ATA/IDE/MFM/RLLsupport--->”如图1.1所示。再选择“ATA/IDE/MFM/RLLsupport”如图1.2所示。进入到“IDE,ATAandATAPIBlockdevices--->”配置选项,设置“EnhancedIDE/MFM/RLLdisk/cdrom/tape/floppysupport”为模块,并设置“IncludeIDE/ATA-2DISKsupport”和“IncludeIDE/ATA-2DISKsupport”为模块,如图1.3所示。编译ATA模块以前配置完成后,退出并保存配置,然后执行以下命令:$makeclean$makedep$makemodules将在/zylinux/kernel/drivers/ide文件夹中生成ide-mod.o、ide-probe-mod.o和ide-disk.o文件。注意事项IDE硬盘不支持热插拔,所以在系统起动前应将IDE硬盘连接到系统并上电。在系统运行过程中不允许拔出硬盘。(1)配置并编译连接ATA设备模块,参考实验原理。