添加LCD背光驱动

一.材料

  • 老师给的模板kernel
  • 自己实现的2.0kernel.机器ID7777

二.常用概念

  • LCD驱动属于platform类型的设备。只要是platform类型的设备就需要注册device和注册移植driver.
  • 由于LCD硬件的特殊性,我们需要设置屏幕硬件相关的数据结构。

三.移植LCD驱动

a.首先lcd的device需要传参数给driver

  • 在arch/arm/mach-s5pv210/mach-mini210.c的初始化函数下有一个s3cfbsetplatdata(&mini210fbdata)。功能是将LCD屏参数设置给fb驱动。
  • mini210fbdata怎么初始化,需要看内核源码。这里需要初始化mini210fbdata这个结构体。

b.注册设备device

  • 在arch/arm/mach-s5pv210/mach-lz_quiet.c。
  • 注册设备第一步,我们需要实现platformdevice结构体。devive结构体里面有一个.name成员。我们需要和driver里面的platformdriver.name一致。不然device和driver就不能匹配。(具体的看platform里面的mach函数。)
  • 注册设备需要在platform_device *smdkc110_devices[]数组中注册;

c.注册移植驱动driver

  • 我们需要从源码内核中移植我们的背光驱动到自己的内核中。
  • 移植后我们需要在内核中编译这个背光.c的驱动到内核中。所以我们需要实现Kconfig和Makefile
  • 实现Makefile:看原来内核Makefile中怎么添加背光驱动到内核。
  • 实现Kconfig:看原来内核Kconfig中怎么添加背光驱动。
  • 执行make menuconfig添加背光到内核。
  • 执行make生成zImage,最终下入开发板。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值