

1:Zephyr 内核支持多种设备驱动程序。驱动程序是否可用取决于board 和驱动程序。
Zephyr 设备模型为配置作为系统一部分的驱动程序提供了一致的设备模型。设备型号负责初始化配置到系统中的所有驱动程序。
每种类型的驱动程序(例如 UART、SPI、I2C)都由通用类型 API 支持。
在此模型中,驱动程序在驱动程序初始化期间填充指向包含指向其 API 函数的函数指针的结构的指针。这些结构按初始化级别顺序放入 RAM 部分。
2:标准驱动程序
下面列出了所有受支持的板配置上存在的设备驱动程序。
中断控制器 :此设备驱动程序由内核的中断管理子系统使用。
定时器 :此设备驱动程序由内核的系统时钟和硬件时钟子系统使用。
串行通信 :此设备驱动程序由内核的系统控制台子系统使用。
Entropy: This device driver provides a source of entropy numbers for the random number generator subsystem.(此设备驱动程序为随机数生成器子系统提供熵数源,对随机值使用随机 API 函数 。 熵函数不应直接用作随机数生成器源,因为某些硬件实现被设计为随机数生成器的熵种子源,并且不会提供加密安全的随机数流)
3:同步调用
Zephyr 为多个板提供了一组设备驱动程序。每个驱动程序都应支持基于中断的实现,而不是轮询,除非特定硬件不提供任何中断。
通过特定于设备的 API 访问的高级调用,例如 i2c.h 或 spi.h,通常用作同步。因此,这些调用应该被阻止。
驱动API/device.h 为设备驱动程序提供了以下 API。这些 API 仅用于设备驱动程序,不应在应用程序中使用。
-
驱动程序
+关注
关注
19文章
863浏览量
49223 -
BLE技术
+关注
关注
0文章
34浏览量
6771 -
Zephyr
+关注
关注
0文章
39浏览量
6315
发布评论请先 登录
Linux环境再升级:PLIN驱动程序正式发布

评论