RK3568平台(UART篇)uart_driver 注册流程

devtools/2024/10/22 6:29:40/

一.串口子系统框架

串口子系统框架是 Linux 内核中专门用于处理串口设备的模块化框架:

在上图中,包含了多个层级,每个层级负责处理不同的功能和任务,从而实现串口设备的 完整驱动和管理。接下来依次介绍每个层级的作用。

应用层:位于最顶层,是串口子系统中用户空间应用程序与内核空间之间的接口,应用层 包括了用户空间的串口应用程序,如串口通信工具 minicom 等。

字符设备层:位于应用层的下方,负责将用户空间的串口读写请求传递给内核空间的 tty_core 层。字符设备层将串口设备看作一个特殊的字符设备,通过字符设备接口来进行 操作。

tty_core 层:位于字符设备层的下方,是 Linux 内核中用于管理串口设备的核心模块,它处 理串口设备的基本功能,如数据传输,控制,缓冲管理等。tty_core 层与具体的串口硬件 无关,是串口设备的通用处理层。

uart_core 层:位于 tty_core 层的下方,提供了串口设备的底层驱动接口,负责与具体的 串口硬件进行通信。uart_core 层负责控制串口数据的发送和接收、中断处理、时钟管理 等底层操


http://www.ppmy.cn/devtools/104641.html

相关文章

SQL 注入之 Oracle 注入

在 SQL 注入攻击的领域中,Oracle 数据库的注入攻击具有一定的特殊性和复杂性。Oracle 作为一种广泛使用的关系型数据库管理系统,其安全性一直备受关注。然而,由于应用程序开发中的漏洞或者不当配置,Oracle 数据库仍然可能成为 SQL…

Leetcode3244. 新增道路查询后的最短距离 II

Every day a Leetcode 题目来源:3244. 新增道路查询后的最短距离 II 解法1:贪心 由于题目保证添加的边(捷径)不会交叉,从贪心的角度看,遇到捷径就走捷径是最优的。所有被跳过的城市都不可能再出现在最短…

css中的伪类

什么是伪类 伪类(Pseudo-classes)是 CSS 中的一个重要概念,它们用于定义元素的特定状态。伪类可以基于元素的特定属性或状态来选择和样式化文档树中的元素,而不需要使用类或 ID。伪类通常以冒号 : 开头。 用法 :link - 选择未被…

【大模型LLM第十一篇】微调自动化数据选择方式之MoDS

前言 来自中科院自动化所的paper MoDS: Model-oriented Data Selection for Instruction Tuning link:https://arxiv.org/pdf/2311.15653 github:https://github.com/CASIA-LM/MoDS 一、摘要 sft已经成为让LLM遵循用户指令的一种方式。通常&#xf…

前端缓存机制及其特点

1、localStorage localStorage 是一种 Web 存储(Web Storage)技术,它属于浏览器提供的客户端存储机制。localStorage 的特点使它被广泛用于持久性的数据存储,即使在浏览器关闭并重新打开之后,数据仍然保留。 localSt…

白盒测试及其测试方法

什么是白盒测试 是针对程序的逻辑结构进行测试,主要适用于单元测试阶段 与黑盒测试不同的是,黑盒测试是根据业务需求设计用例的输入输出,白盒测试是对程序系统的内部逻辑实现设计输入输出。 通常的流程是先静态测试,后动态测试…

ES配合高德地图JS-API实现地理位置查询

目录 实现功能点 技术选型 具体实现 Vue3整合高德地图JS API-2.0 添加商户:前端 添加商户:后端/ES 查询用户当前地理坐标 获取附近(指定距离)的商户 总结/测试Demo代码地址 测试概述:用户使用高德地图组件获取商户…

Docker学习之路【八】安装主从复制MYSQL8

拉取MySQL镜像 #拉取MySQL镜像 docker pull mysql:8.0.37创建存储目录 #创建数据存储目录 mkdir -p /docker/mysql/master/data #创建日志目录 mkdir -p /docker/mysql/master/logs #创建配置文件目录 mkdir -p /docker/mysql/master/conf运行容器 docker run -p 3340:3306 …