
kernel-driver-pinctrl
文章平均质量分 77
kernel-driver-pinctrl
kunkliu
good good study
展开
-
linux下操作gpio寄存器的方法
转载地址:https://www.cnblogs.com/mylinux/p/5639264.html一、 在驱动中: 1. 用的时候映射端口:ioremap; #define GPIO_OFT(x) ((x) - 0x56000000) #define GPFCON (*(volatile unsigned long *)(gpio_va + GPIO_OFT(0x560...转载 2019-06-20 18:47:41 · 1481 阅读 · 0 评论 -
Linux GPIO 的注册与申请
转载地址:http://blog.youkuaiyun.com/njuitjf/article/details/40622845Linux GPIO 的注册与申请Linux Kernel, GPIO, ARM在Linux kernel代码中,经常会使用 GPIO 来作为一个特殊的信号,如作为芯片的片选信号等。GPIO 申请的函数,我们经常用到,如 gpio_request ,那么 GPIO转载 2017-09-20 18:53:30 · 1460 阅读 · 0 评论 -
Linux内核驱动之GPIO子系统(一)GPIO的使用
转载地址:http://blog.youkuaiyun.com/mirkerson/article/details/8464290一 概述 Linux内核中gpio是最简单,最常用的资源(和 interrupt ,dma,timer一样)驱动程序,应用程序都能够通过相应的接口使用gpio,gpio使用0~MAX_INT之间的整数标识,不能使用负数,gpio与硬件体系密切相关的,不过l转载 2017-09-20 11:33:12 · 397 阅读 · 0 评论 -
linux 标准GPIO 驱动模型—version1
转载地址:http://blog.youkuaiyun.com/xuefeng_apple/article/details/48230885前言:本文主要介绍gpio driver实现基本方法,具体实例在后续的文章中继续介绍Index:1、bus 概念介绍2、Device 与driver匹配过3、GPIO driver 实现标准框架图4、GPIO driver 细化实现5、GP转载 2017-09-20 18:31:29 · 1012 阅读 · 0 评论 -
Kernel 中的 GPIO 定义和控制
转载地址:http://blog.youkuaiyun.com/jscese/article/details/16823519 最近要深一步用到GPIO口控制,写个博客记录下Kernel层的GPIO学习过程!一、概念 General Purpose Input Output (通用输入/输出)简称为GPIO,或 总线扩展器。也就是芯片的引脚,当微控制器或芯片组没有足够的I/O端口,或当系统需要转载 2017-09-20 13:07:39 · 2149 阅读 · 0 评论 -
Linux下GPIO驱动(四) ----gpio_request();gpio_free();
转载地址:http://www.cnblogs.com/hello2mhb/p/3279322.htmlint gpio_request(unsigned gpio, const char *label){ struct gpio_desc *desc; struct gpio_chip *chip; int status = -EI转载 2017-09-20 11:15:48 · 3084 阅读 · 0 评论 -
linux驱动(七)gpiolib库详解
转载地址:https://www.cnblogs.com/biaohc/p/6652322.html---恢复内容开始---1:什么是gpiolib,为什么要有gpiolib?linux中从2.6.35以后就开始有gpiolib库了,gpiolib的作用是对所有的gpio实行统一管理,因为驱动在工作的时候,会出现好几个驱动共同使用同一个gpio的情况;这会造成混乱。所以内核提供转载 2017-11-17 18:35:19 · 918 阅读 · 0 评论 -
知识整理–linux内核的gpiolib学习
转载地址:http://blog.youkuaiyun.com/tongxinv/article/details/54790792 gpiolib引入:(1)一个事实:很多硬件都要用到GPIO,GPIO会复用;(2)如果同一个GPIO被2个驱动同时控制了,就会出现bug;(3)内核提供gpiolib来统一管理系统中所有GPIO;(4)gpiolib本身属于驱动框架的一部分 和动态映射静态映射读写转载 2017-09-20 18:56:15 · 735 阅读 · 0 评论 -
linux gpio接口
转载地址:http://www.cfanz.cn/index.php?c=article&a=read&id=60729一.相关结构体1.gpio_chip代表一个芯片的一个gpio bankstruct gpio_chip { //gpio bank const char *label; //bank名 struct device *dev; //设备文件 str转载 2017-09-20 12:57:41 · 537 阅读 · 0 评论 -
一篇带给你Pinctrl子系统的深入分析
博主假设大家已经看过下面这篇文章:GPIO 软件框架本文就直接深入分析 pinctrl 子系统。使用 pinctrl 和 gpio 子系统进行 GPIO 驱动开发,是嵌入式驱动工程师的基本操作,但大部分驱动工程师只会用子系统提供的 API 接口,不会对其底层实现进行分析,本文对其底层实现进行分析,文末有参考文章链接。在此框架中,(1)、(2)、(3)由半导体厂商搞定,半导体厂商会利用 Linux 提供的框架,根据自己的芯片,客制化代码。普通的驱动工程师就是调用 API 即可,就算是写驱动了。.转载 2022-04-22 20:16:03 · 380 阅读 · 0 评论 -
GPIO介绍
转载地址:http://www.it610.com/article/4112877.htm 什么是GPIO? ” 通用输入/输出口”(GPIO)是一个灵活的由软件控制的数字信号。他们可由多种芯片提供,且对于从事嵌入式和定制硬件的Linux开发者来说是比较熟 悉。每个GPIO都代表一个连接到特定引脚或球栅阵列(BGA)封装中“球珠”的一个位。电路板原理图显示了GPIO与转载 2017-09-20 13:20:41 · 19291 阅读 · 0 评论 -
最近要深一步用到GPIO口控制,写个博客记录下Kernel层的GPIO学习过程
最近要深一步用到GPIO口控制,写个博客记录下Kernel层的GPIO学习过程!一、概念 General Purpose Input Output (通用输入/输出)简称为GPIO,或 总线扩展器。也就是芯片的引脚,当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。通常在ARM里,所有I/O都是通用的转载 2017-09-20 13:05:54 · 1134 阅读 · 0 评论 -
linux pinctrl驱动
转载地址:https://blog.youkuaiyun.com/chenliang0224/article/details/78777995linux系统下采用pinctrl子系统管理所有的IO管脚,并对设备外围管脚(如串口、I2C、spi、LCD)都有相应的配置模式,本博客以pinctrl子系统细说该驱动架构。1. pinctrl设备注册、退出[cpp] view plain copystatic int...转载 2018-03-29 11:17:31 · 904 阅读 · 0 评论 -
全志H3平台pinctrl模块分析
转载地址:https://blog.youkuaiyun.com/dlijun/article/details/515478971 概要Linux内核中提供了pinctrl子系统,目的是为了统一各SoC厂商的pin脚管理,避免各SoC厂商各自实现相同的pin脚管理子系统,减少SoC厂商系统移植工作量。1.1 主要功能1. 管理系统中所有可以控制的pin。在系统初始化的时候,枚举所有可以控制的pin,并标识这些...转载 2018-03-29 08:39:39 · 1817 阅读 · 0 评论 -
linux PINCTRL
转载地址:http://blog.youkuaiyun.com/lbaihao/article/details/52348821Pinctrl框架是linux系统为统一各SOC厂商pin管理,避免各SOC厂商各自实现相同pin管理子系统而提出的。目的是为了减少SOC厂商系统移植工作量。许多SoC 内部都包含pin 控制器,通过pin 控制器,我们可以配置一个或一组引脚的功能和特性。在软件上,Lin转载 2018-01-17 13:51:56 · 307 阅读 · 0 评论 -
原理:pinctrl基础
转载地址:http://blog.sina.com.cn/s/blog_c0de2be70102wc1k.html原有GPIO配置框架:之前所有的gpio操作都是通过gpiolib来实现,常用的api包括:staticinline int gpio_request(unsigned gpio, const char*label);staticinline int gpio_direction_in...转载 2018-01-17 14:00:38 · 2959 阅读 · 0 评论 -
linux内核中的GPIO系统之(1):软件框架
转载地址:http://www.wowotech.net/gpio_subsystem/io-port-control.html一、前言作为一个工作多年的系统工程师,免不了做两件事情:培训新员工和给新员工分配任务。对于那些刚刚从学校出来的学生,一般在开始的时候总是分配一些非常简单的任务,例如GPIO driver、LED driver。往往CPU datasheet的关于GPIO或者I转载 2018-01-17 14:03:54 · 260 阅读 · 0 评论 -
linux内核中的GPIO系统之(2):pin control subsystem
转载地址:http://www.wowotech.net/gpio_subsystem/pin-control-subsystem.html一、前言在linux2.6内核上工作的嵌入式软件工程师在pin control上都会遇到这样的状况:(1)启动一个新的项目后,需要根据硬件平台的设定进行pin control相关的编码。例如:在bootloader中建立一个大的table,描述各个引脚的配置和...转载 2018-01-17 14:05:37 · 266 阅读 · 0 评论 -
Linux内核中的GPIO系统之(3):pin controller driver代码分析
转载地址:http://www.wowotech.net/gpio_subsystem/pin-controller-driver.html一、前言对于一个嵌入式软件工程师,我们的软件模块经常和硬件打交道,pin control subsystem也不例外,被它驱动的硬件叫做pin controller(一般ARM soc的datasheet会把pin controller的内容放入G转载 2018-01-17 14:07:17 · 291 阅读 · 0 评论 -
linux内核中的GPIO系统之(4):pinctrl驱动的理解和总结
转载地址:http://www.wowotech.net/gpio_subsystem/pinctrl-driver-summary.html1. 前言本站之前的三篇文章[1][2][3]介绍了pin controller(对应的pin controller subsystem)、gpio controller(对应的GPIO subsystem)有关的基本概念,包括pin multi转载 2018-01-17 14:08:54 · 624 阅读 · 0 评论 -
linux内核中的GPIO系统之(5):gpio subsysem和pinctrl subsystem之间的耦合
转载地址:http://www.wowotech.net/gpio_subsystem/pinctrl-and-gpio.html1. 前言按理说,kernel中gpio subsystem和pinctrl subsystem的关系应该非常清楚:pinctrl subsystem管理系统的所有管脚,GPIO是这些管脚的用途之一,因此gpio subsystem应该是pinctr转载 2018-01-18 17:50:17 · 297 阅读 · 0 评论 -
gpio子系统和pinctrl子系统(上)
转载地址:http://blog.rongpmcu.com/gpiozi-xi-tong-he-pinctrlzi-xi-tong/前言 随着内核的发展,linux驱动框架在不断的变化。很早很早以前,出现了gpio子系统,后来又出现了pinctrl子系统。在网上很难看到一篇讲解这类子系统的文章。就拿gpio操作来说吧,很多时候都是简单的调用gpio子系统提供的api,然后根据sdk说明文档写明的...转载 2017-09-20 12:38:29 · 704 阅读 · 0 评论 -
gpio子系统和pinctrl子系统(中)
转载地址:http://www.cnblogs.com/rongpmcu/p/7662755.htmlpinctrl子系统核心实现分析pinctrl子系统的内容在drivers/pinctrl文件夹下,主要文件有(建议先看看pinctrl内核文档Documentation/pinctrl.txt):core.cdevicetree.cpinconf.cpinmux.cpinctrl-xxx.cco...转载 2018-03-28 16:14:21 · 853 阅读 · 0 评论 -
gpio子系统和pinctrl子系统(下)
转载地址:http://www.cnblogs.com/rongpmcu/p/7662756.html情景分析打算从两个角度来情景分析,先从bsp驱动工程师的角度,然后是驱动工程师的角度,下面以三星s3c6410 Pinctrl-samsung.c为例看看pinctrl输入参数的初始化过程(最开始的zynq平台的pin配置貌似是通过bitstreams来的,内核层没看到有关配置pin的代码,不过最...转载 2018-03-28 16:16:19 · 1108 阅读 · 0 评论 -
基于Linux 3.10.49内核的pinctrl流程分析
转载地址:https://www.linuxidc.com/Linux/2017-10/147521.htmLinux kernel 3.10.49+ pinctrl驱动的platform注册就不说了,无非就是platform_driver_register这个入口,最后匹配到合适的设备后调用struct platform_driver 的probe函数.这里说说, pinctl io复用关系(p...转载 2018-03-28 19:58:53 · 669 阅读 · 0 评论 -
PINCTRL子系统
转载地址:http://www.360doc.com/content/14/0914/22/426085_409500256.shtmlPINCTRL子系统用于处理:- 枚举和命名控制引脚- 复用管脚,pad,金手指。- 配置管脚、pad、金手指,如软件控制的偏置和驱动模式指定的管脚,如上拉/下拉,开漏极、负载电流等顶层接口===================管脚控制器定义-管脚控制器用于控制芯转载 2018-01-18 17:45:59 · 324 阅读 · 0 评论