pinctrl_51CTO博客
pinctrl子系统         借助pinctrl来设置一个PIN的复用和电气属性。基本概念传统的配置 pin 的方式就是直接操作相应的寄存器,但是这种配置方式比较繁琐、而且容易出问题(比如 pin 功能冲突)。pinctrl 子系统就是为了解决这个问题而引入的,pinctrl 子系统主要工作内容如下:①、获取设
原创 4月前
11阅读
Linux中的GPIO(General-purpose input/output)是指通用输入输出端口,可以通过控制电平高低来实现不同功能的输入输出操作。而在Linux内核中,pinctrl(Pin Control)子系统负责管理GPIO的注册、配置和使用。 在Linux中,pinctrl和GPIO主要用于对外设或其他硬件设备进行控制和通信。使用pinctrl可以将GPIO端口与特定的功能或设备
原创 7月前
59阅读
Linux内核是一个开源的操作系统内核,广泛应用于各种设备和系统中。在Linux内核中,pinctrl是一个非常重要的子系统,用于管理和控制设备的引脚(pin)。在Linux内核中,红帽是一个流行的发行版,也在其内核中使用pinctrl来管理设备的引脚。 pinctrl是一个为设备引脚提供基本操作和控制的子系统。在Linux内核中,pinctrl框架为硬件提供了一种通用的引脚控制机制,并且为不同
Linux中的pinctrl系统是一个非常重要的子系统,它负责处理处理器引脚(pin)的配置和管理。在嵌入式系统开发中,pinctrl系统扮演着至关重要的角色,它能够使开发人员轻松地控制引脚的功能和状态,从而实现设备之间的通信和数据交换。在这篇文章中,我们将重点介绍pinctrl系统在Linux中的应用,以及其在红帽操作系统中的具体实现。 在Linux内核中,pinctrl系统由一组框架和驱动程
原gpio配置框架之前,所有的gpio操作都是通过gpiolib来实现,常用的api包括:staticinline int gpio_request(unsigned gpio, const char *label);staticinline intgpio_direction_input(unsigned gpio);staticinline intgpi
api
原创 2021-07-11 13:47:52
2157阅读
ping 解析        Linux系统的ping命令是常用的网络命令,它通常用来检测与目标主机的连通性,经常说"ping以下机器,看是否开着,不能打开网页时候,可以ping 一下网关,它是通过发送ICMP ECHO__REQUEST数据包到网络主机。(send ICMP ECHO_REQUEST to netwo
首先看一下pinctrl driver的描述符struct pinctrl_desc结构体的定义:struct pinctrl_desc { const char *name;---本控制器名称 struct pinctrl_pin_desc const *pins;---本控制器所控制的所有pins的数组 unsigned int npins;---
原创 2021-06-17 15:52:59
713阅读
设备树pinctrl个人总结
原创 2021-11-16 11:10:54
480阅读
Linux 3.10版本中引入了pinctrl(Pin Control)子系统,这是一个用于对片上引脚进行管理和控制的框架。pinctrl子系统的引入使得Linux内核可以更好地管理硬件资源,实现对片上引脚的高效配置和控制。 在Linux系统中,许多外设设备需要与处理器进行连接,而这些设备都需要使用引脚来进行通信。为了准确地配置和管理这些引脚,Linux引入了pinctrl子系统。通过pinct
原创 7月前
13阅读
前言:linux系统下采用pinctrl子系统管理所有的IO管脚,并对设备外围管脚(如串口、I2C、spi、LCD)都有相应的配
原创 2022-09-19 13:47:39
170阅读
简介 Linux Pinctrl(Pin control) 是一个子系统,控制芯片的引脚复用、电气属性和其他和硬件相关的设置。本文将介绍 Linux Pinctrl 子系统的基本概念,架构和使用方法。 基本概念 学习内容【Linux】Pinctrl子系统简介 作者希希雾里 引脚(Pins) 引脚是芯片上的物理接触点,可以连接到其他芯片或外部设备。在单个芯片上,每个引脚可能具有不同的电气属性,例
原创 2023-05-30 20:05:16
442阅读
Linux内核是一种开源的操作系统内核,广泛用于各种嵌入式系统和服务器环境中。在Linux内核中,config_pinctrl是一个重要的功能,用于配置和管理硬件引脚控制器(pinctrl)。本文将重点介绍config_pinctrl的作用和使用方法。 首先,让我们了解一下硬件引脚控制器(pinctrl)。在嵌入式系统中,硬件设备需要与处理器进行通信,其中的一个重要途径就是使用引脚。硬件引脚控制
原创 8月前
49阅读
# 实现 "pinctrl 子系统架构" 的步骤和代码 ## 1. 简介 在开始之前,我们先来了解一下 "pinctrl 子系统架构" 是什么。"pinctrl 子系统架构" 是 Linux 内核的一个组件,用于管理和配置芯片引脚的功能和属性。通过使用 pinctrl 子系统,我们可以在驱动程序中对芯片的引脚进行配置和控制。 ## 2. 步骤 下面是实现 "pinctrl 子系统架构" 的步骤
原创 2023-10-24 19:26:26
44阅读
1.介绍 为了满足框架开发,linux系统中使用pinctrl和GPIO子系统来简化开发。 2.pinctrl子系统 pinctrl 子系统主要工作内容如下: 获取设备树中 pin 信息。 根据获取到的 pin 信息来设置 pin 的复用功能 根据获取到的 pin 信息来设置 pin 的电气特性,比
原创 2022-07-02 00:25:24
102阅读
前一篇文章介绍了如果创建consumer driver到pinctrl driver的mapping table,这个mapping table就是系统的配置表,在系统启动之初注册到pinctrl sub system中去,貌似是在pinctrl driver注册之前就注册了mapping table了。既然已经有了mapping table,那我们假设pinctrl driver也已经“编写完成”
原创 2021-06-17 15:53:04
443阅读
编程_GPIO使用Pinctrl参考资料:Linux 5.x内核文档Linux-5.4\Documentation\driver-apiLinux-5.4\Documentation\devicetree\bindings\gpio\
原创 2023-07-03 10:38:22
158阅读
芯片厂家做吧
原创 2023-07-03 10:56:47
209阅读
 ​本文就直接深入分析 pinctrl 子系统。使用 pinctrl 和 gpio 子系统进行 GPIO 驱动开发,是嵌入式驱动工程师的基本操作,但大部分驱动工程师只会用子系统提供的 API 接口,不会对其底层实现进行分析,本文对其底层实现进行分析,文末有参考文章链接。在此框架中,(1)、(2)、(3)由半导体厂商搞定,半导体厂商会利用 Linux 提供的框架,根据自己的芯片,客制化代码。普通的驱
原创 2021-12-16 09:35:36
530阅读
编程_GPIO使用Pinctrl参考资料:Linux5.x内核文档Linux5.4\Documentation\driverapiLinux5.4\Documentation\devicetree\bindings\gpio\gpio.txtLinux5.4\drivers\gpio\gpio74x164.cLinux4.x内核文档Linux4.9.88\Documentation\gpioLin
原创 2021-08-26 13:29:52
1136阅读
一、pinctrl子系统简介1. pin control subsystem驱动的硬件叫做pin controller,主要功能包括:(1) pin multiplexing,pin引脚复用。(2) pin configuration,这些配置参数包括 pull-up/down电阻的设定, tri-state设定,drive-strength的设定。2. pin controller这个HW bl
转载 7月前
38阅读
  • 1
  • 2
  • 3
  • 4
  • 5