x4412开发板&ibox卡片电脑项目实战14-linux驱动的编写步骤

从零开始编写linux驱动时,无论采用linux的何种架构,基本上都可以归纳为以下驱动八要素。

1.1.1    建立Linux驱动框架

Linux内核在使用驱动时首先要装载驱动,在装载过程中进行一些初始化动作,如建立设备文件、分配内存等。在驱动程序中需提供相应函数来处理驱动初始化工作,该函数须使用module_init宏指定。Linux系统在退出时需卸载Linux驱动,在卸载过程中进行一些退出动作,如删除设备文件、释放内存等。在驱动程序中需提供相应函数来处理退出工作,该函数须使用module_exit宏指定。Linux驱动程序一般都要这两个宏指定这两个函数,所以包含这两个宏以及其所指定的两个函数的C程序可看作是Linux驱动的框架。

蜂鸣器驱动对应的框架程序如下:

static struct platform_driver x4412_beep_driver = {
         .probe                  = x4412_beep_probe,
         .remove               = x4412_beep_remove,
         .suspend     = x4412_beep_suspend,
         .resume                = x4412_beep_resume,
         .driver                  = {
                   .name         = "x4412-beep",
         },
};
 
static struct platform_device x4412_beep_device = {
         .name      = "x4412-beep",
         .id      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值