zoukankan      html  css  js  c++  java
  • Linux驱动学习之驱动开发准备工作

    一、开启驱动开发之路

    1、驱动开发的准备工作

    (1)正常运行linux系统的开发板。要求开发板中的linux的zImage必须是自己编译的,不能是别人编译的。原因在于在安装模块的时候会进行安全性校验

    (2)内核源码树,其实就是一个经过了配置编译之后的内核源码。我们需要内核源码编译自己的模块

    (3)nfs挂载的rootfs,主机ubuntu中必须搭建一个nfs服务器。这对于驱动开发前期是不可或缺的,能够提高我们的开发效率。

    2、驱动开发的步骤

    (1)驱动源码编写、Makefile编写、编译

    (2)insmod装载模块、测试、rmmod卸载模块

    3、实践

    (1)copy原来提供的x210kernel.tar.bz2,找一个干净的目录(/root/driver),解压之,并且配置编译。编译完成后得到了:1、内核源码树。2、编译ok的zImage

    (2)fastboot将第1步中得到的zImage烧录到开发板中去启动(或者将zImage丢到tftp的共享目录,uboot启动时tftp下载启动),将来驱动编译好后,就可以在这个内核中去测

    试。因为这个zImage和内核源码树是一伙的,所以驱动安装时版本校验不会出错。

    我一般都会选择通过uboot启动之后使用tftp去下载主机服务器端共享目录中的zImage镜像文件,而不直接将zImage镜像文件烧入到Flash中,因为可能我们在开发驱动的过程

    中会重新对内核进行配置编译,然后让开发板去启动这个新编译好的内核镜像文件,如果这样重复烧flash就比较麻烦了,效率也不高。

    参考: 《朱友鹏嵌入式Linux开发5.Linux驱动开发5.2.字符设备驱动基础》

  • 相关阅读:
    动画效果
    iOS蓝牙4.0
    讯飞语音接口使用
    Xcode添加注释
    CocoaPods安装
    mac os 下打开FTP服务器
    画面渲染:实时渲染(Real-time Rendering)、离线渲染(Offline Rendering)[转]
    Unity3D笔记 英保通九 创建数
    Unity3D笔记 英保通八 关节、 布料、粒子系统
    Unity3D 记第二次面试
  • 原文地址:https://www.cnblogs.com/deng-tao/p/6165345.html
Copyright © 2011-2022 走看看