Linux驱动移植(四)——Linux内核移植

Linux设备驱动移植(四)——Linux内核移植

Linux内核的移植含义为将Linux内核运行一个新的SoC芯片或新的电路板之上,其实质含义为:建立Linux的板级支持包(BSP),BSP板级支持包的作用:1)为内核提供必要的硬件支撑;2)屏蔽与板相关的硬件细节。

        对于Arm,BSP的源码位置:/arch/arm下的相关plat和mach文件下,如下:

plat-xxx

linux-2.6/arch/arm/

plat-omap/

plat-pxa/

plat-s3c/

plat-s3c24xx/

plat-s3c64xx/

plat-stmp3xxx/

mach-xxx

linux-2.6/arch/arm/

mach-s3c2400/

mach-s3c2410/

mach-s3c2412/

mach-s3c2440/

mach-s3c2442/

mach-s3c2443/

mach-s3c24a0/

mach-s3c6400/

mach-s3c6410/

所有的板文件都位于相关芯片的目录下。

上述目录中的代码完成的主要工作如下:

1. 始终tick(Hz)的产生
2. 系统中断控制的方法
3. GPIO、DMA、时钟资源的统一管理
4. 静态映射的IO内存
5. 设备的IO、中断、DMA等资源封装平台数据

Linux驱动板级移植的原则:切忌直接修改现有电路板的代码作为自身电路板的代码,正确的方法是新建自己的板文件,将本身的设备和资源填写在新的板文件里面。
除了SoC芯片级和板级Linux移植外,移植工作量最大的是体系结构相关的Linux移植,例如将Linux移植到以个全新的CPU体系机构,如TI的DSP芯片。相关工作还会涉及到内存管理、进程调度、异常和陷阱等。

参考文献:
1. Linux设备驱动开发详解 宋宝华著


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值