linux driver 很全的驱动建立流程


* PTP hardware clock infrastructure for LinuxThis patch set introduces support for IEEE 1588 PTP clocks inLinux. Together with the SO_TIMESTAMPING socket options, thispresents a standardized method for developing PTP user spaceprograms, synchronizing Linux with external clocks, and using theancillary features of PTP hardware clocks.A new class driver exports a kernel interface for specific clockdrivers and a user space interface. The infrastructure supports acomplete set of PTP hardware clock functionality.+ Basic clock operations- Set time- Get time- Shift the clock by a given offset atomically- Adjust clock frequency+ Ancillary clock features- Time stamp external events- Period output signals configurable from user space- Synchronization of the Linux system time via the PPS subsystem** PTP hardware clock kernel APIA PTP clock driver registers itself with the class driver. Theclass driver handles all of the dealings with user space. Theauthor of a clock driver need only implement the details ofprogramming the clock hardware. The clock driver notifies the classdriver of asynchronous events (alarms and external time stamps) viaa simple message passing interface.The class driver supports multiple PTP clock drivers. In normal usecases, only one PTP clock is needed. However, for testing anddevelopment, it can be useful to have more than one clock in asingle system, in order to allow performance comparisons.** PTP hardware clock user space APIThe class driver also creates a character device for eachregistered clock. User space can use an open file descriptor fromthe character device as a POSIX clock id and may callclock_gettime, clock_settime, and clock_adjtime.  These callsimplement the basic clock operations.User space programs may control the clock using standardizedioctls. A program may query, enable, configure, and disable theancillary clock features. User space can receive time stampedevents via blocking read() and poll().** Writing clock driversClock drivers include include/linux/ptp_clock_kernel.h and registerthemselves by presenting a 'struct ptp_clock_info' to theregistration method. Clock drivers must implement all of thefunctions in the interface. If a clock does not offer a particularancillary feature, then the driver should just return -EOPNOTSUPPfrom those functions.Drivers must ensure that all of the methods in interface arereentrant. Since most hardware implementations treat the time valueas a 64 bit integer accessed as two 32 bit registers, driversshould use spin_lock_irqsave/spin_unlock_irqrestore to protectagainst concurrent access. This locking cannot be accomplished inclass driver, since the lock may also be needed by the clockdriver's interrupt service routine.** Supported hardware+ Freescale eTSEC gianfar- 2 Time stamp external triggers, programmable polarity (opt. interrupt)- 2 Alarm registers (optional interrupt)- 3 Periodic signals (optional interrupt)+ National DP83640- 6 GPIOs programmable as inputs or outputs- 6 GPIOs with dedicated functions (LED/JTAG/clock) can also beused as general inputs or outputs- GPIO inputs can time stamp external triggers- GPIO outputs can produce periodic signals- 1 interrupt pin+ Intel IXP465- Auxiliary Slave/Master Mode Snapshot (optional interrupt)- Target Time (optional interrupt)

ptp driver Linux doc相关推荐

  1. linux安装ebs系统,深入浅出Oracle之EBS系统安装与维护(Linux).doc

    Doc Ref: REF DocRefNumber REF DocTitle Oracle ERP最佳技术实践 REF LastDate April 12, 2005 STYLEREF HD2 E-B ...

  2. linux doc文档下载,LINUX基本命令.doc-资源下载人人文库网

    LINUX 基本命令.doc Linux操作系统命令大全命令名称常用参数使用说明 使用形式备注cat文件阅读命令cat -参数 文件名文件名只能是文本文件-n由 1 开始对所有输出的行数编号Cat n ...

  3. ptp时钟linux,Linux标准PTP堆栈将时钟IC与网络处理器相连

    PTP(Precision Timing Protocol,精密时钟协议)Clock Manager软件.它为4G.5G和开放式无线接入网(O-RAN)等电信网络(包括前传与回传系统)提供易于使用和访 ...

  4. linux doc下生成学号,linux的.doc

    linux的 中国地质大学江城学院 LINUX操作系统实验报告 姓 名 班级学号 指导教师 冯春华 2013 年 11 月 15 日 目录 实验一 LINUX操作基础3 1.1实验目的:3 1.2实验 ...

  5. driver: Linux设备模型之input子系统详解

    本节从整体上讲解了输入子系统的框架结构.有助于读者从整体上认识linux的输入子系统.在陷入代码分析的过程中,通过本节的知识能够找准方向,明白原理. 本节重点: 输入子系统的框架结构 各层对应内核中的 ...

  6. [driver]linux内核动态加载模块

    问题: 1. 把编译好的模块放到板子/lib/modules对应文件夹下,并且执行了depmod -a, 比如pl2303.ko, 那么下一次插入pl2303的串口线,是否可以识别,也就是自动加载pl ...

  7. 512m硬盘装linux,硬盘装linux.doc

    硬盘装linux 第一步:用PQ Magic(也可用其它分区工具)为Linux的安装划分出一块未分配硬盘空间(我的是11G):第二步:下载镜像文件(我下到的是FC-6-i386-DVD.iso):第三 ...

  8. linux蜂鸣器驱动指令,linux蜂鸣器驱动 蜂鸣器--LINUX.doc

    linux蜂鸣器驱动 蜂鸣器--LINUX 导读:就爱阅读网友为您分享以下"蜂鸣器--LINUX"的资讯,希望对您有所帮助,感谢您对92的支持! //mux = 1/16 tcfg ...

  9. linux无显卡安装教程,无光驱无计算机显卡如何安装Linux.doc

    无光驱无显卡如何安装Linux ――汪翰林 02322 1 现象和问题描述 监控DM组件的服务器为我司的SC1240服务器,该服务器无光驱和显卡,虽然有USB口,但每次安装操作系统的时候在读取USB光 ...

最新文章

  1. SAP MM MIGO Cancellation可以用于冲销上次冲销而产生的物料凭证
  2. [转载]交换机背板带宽计算方法
  3. 电商必备:如何选择第三方快递?
  4. 最详细的Mask R-CNN论文笔记
  5. 虚拟机中利用qemu调试跟踪linux内核
  6. PHP泡泡龙源码,泡泡龙 游戏源码
  7. android 连接魅族调试,魅族Flyme手机无法连接电脑ADB调试
  8. linux su文件删除了,UBUNTU linux 批量删除文件
  9. java 编写hl7标准接口_java – 需要解析HL7消息
  10. 程序员写代码时你戴耳机是为了撩妹儿吗?感觉有点酷!
  11. .NET工具篇(二)—GACUtil
  12. STM32 DFU下载与 DFU生成工具
  13. 如何运营好微信公众号?如何利用微信公众号盈利?
  14. rⅰd的意思_自动挡车上的P、R、N、D、L代表什么意思?老司机也搞晕了!
  15. excel查重复_毕业季论文查重攻略,手把手教你降低重复率!
  16. 鹏业安装三维算量软件——批量修改工程量
  17. 等额本息贷款 ——已知贷款本金、月还款额、贷款月数,反推贷款月利率、年利率-java实现
  18. PS生成动态的二维码
  19. 桌面文档怎么保存到计算机,word怎么保存不到桌面 word文档怎么保存文件到桌面...
  20. M415步进电机驱动器的使用(C51)

热门文章

  1. [转载]在线文档预览方案-Office Web Apps
  2. php浮点数计算比较及取整不准确解决方法
  3. 以咨询顾问为我终生职业(转)
  4. [转]英语口语面试问答大全
  5. html表格鼠标高亮行列,JS实现的表格行鼠标点击高亮效果代码
  6. 三级网络技术_计算机三级网络技术(1):网络系统结构与设计的基本原则
  7. html h 不换行,css 强制不换行
  8. java 抽象工厂工厂_Java设计模式之简单工厂、工厂方法和抽象工厂
  9. javax.servlet.ServletException: Servlet[springmvc]的Servlet.init()引发异常
  10. 全模型组的测试初步结果