Linux根据系统GPIO系统架构简介

关于这个GPIO我一直认为非常非常长的时间easy。但。当你需要给一个特定的系统,参与这些GPIO什么时候。你会找到。不对,实例,mt7620n。

GPIO#72控制WLED -> WLAN LED.

GPIO#40~44是控制WAN, LANLED.

GPIO#1是控制Reset

这些东西以为自己写一个GPIO driver就完毕了,事实上没有那么简单,光是这个小驱动你怎么编译都比較麻烦,所以还是乖乖的学习OpenWRT的系统架构吧。

这里要说道重点dts.这个东西我ChinaUnix论坛里请教了,大神绝对是多啊。一个晚上就两个完整的文档。 device tree source.

http://bbs.chinaunix.net/thread-4139331-1-1.html

主要是把之前arch/文件夹下一些特定板级代码直接移除,用device tree source 来表示,一些板子的共性则用 *.dtsi 这个文件来存储。

关于dts的我就不介绍了,上面的文档里面有具体的说明。

再来说说这个dts, 没有的接口千万不要乱用,不然会出大麻烦的。

须要好好熟悉下,内核中关于这个dts的实现,如今了解的是 dts在编译过程中会编译为dtb文件,bootloader传递这个dtb的地址给kernel,kernel自己去依据device tree 初始化设备,所以这个才是设备的核心,内核的模块话。

pinctrl 子系统, pinmux子系统。。。

http://lwn.net/Articles/465077/

版权声明:本文博主原创文章,博客,未经同意不得转载。

OpenWRT GPIO人口控制 WLED的更多相关文章

  1. android gpio口控制

    android gpio口控制  GPIO口控制方式是在jni层控制的方式实现高低电平输出,类似linux的控制句柄方式,在linux系统下将每个设备看作一个文件,android系统是基于linux内 ...

  2. 全志R58平台的GPIO引脚控制

    全志R58平台的GPIO引脚控制 2017/8/18 15:50 版本:V1.0 开发板:SC5806(全志R58平台) SDK:android4.4.4 本文以GPIO引脚PD24为例,在开发板的背 ...

  3. HPS端的GPIO如何控制

    该笔记主要记录HPS端的GPIO如何控制,包括控制LED和Key 1.GPIO地址映射 Peripheral Base Address 0xf000_0000 64M 2.HPS外设 (1)GPIO ...

  4. Win10 IoT C#开发 3 - GPIO Pin 控制发光二极管

    Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. 上一篇文 ...

  5. CC2530学习路线-基础实验-GPIO 按键控制LED灯亮灭(2)

    目录 1.前期预备知识 1.1 新大陆Zigbee模块按键电路图 1.2 CC2530相关寄存器 1.3 CC2530中断走向图 1.4 使用C语言为51单片机编写中断程序 1.5 *函数指针 2. ...

  6. linux下对/sys/class/gpio中的gpio的控制 (转)

        在嵌入式设备中对GPIO的操作是最基本的操作.一般的做法是写一个单独驱动程序,网上大多数的例子都是这样的.其实linux下面有一个通用的GPIO操作接口,那就是我要介绍的 “/sys/clas ...

  7. [RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】

    本文转载自:http://m.blog.csdn.net/kris_fei/article/details/69553422 Platform: ROCKCHIPOS: Android 6.0Kern ...

  8. 【ARM】2440裸机系列-gpio按键控制

    功能 通过GPIO,实现按键1点亮LED1,按键2点亮LED2…… 说明 1)因为2440的按键只涉及行,所以在扫描按键时比2410简单了很多 2)在进行移位操作之前,必须进行数据寄存器的初始化,否则 ...

  9. [转]树莓派gpio口控制

    0.前言     树莓派现在越来越火,网上树莓派的资料也越来越多.树莓派源自英国,国外嵌入式开源领域具有良好的分享精神,树莓派各种集成库也层出不穷,下面推荐几个. [[开发语言]——python [[ ...

随机推荐

  1. DRY

    DRY(Don't Repeat Yourself )原则   凡是写过一些代码的程序猿都能够意识到应该避免重复的代码和逻辑.我们通过提取方法,提取抽象类等等措施来达到这一目的.我们总能时不时的听到类 ...

  2. C++-传值与传引用的差别

    //值传递与引用传递的差别 #include <iostream> #include <iomanip> using namespace std; void fiddle(in ...

  3. Just like normal variables,

    Just like normal variables, pointers can be declared constant. There are two different ways that poi ...

  4. mongodb实现简单的增删改查

    package mongoDB; import java.net.UnknownHostException; import java.util.ArrayList; import java.util. ...

  5. ASP.NET之Cookie(坑爹的Response.Cookies.Remove)

    原文:ASP.NET之Cookie(坑爹的Response.Cookies.Remove) 在web开发中Cookie是必不可少的 .NET自然也有一个强大的Cookie操作类,我们用起来也非常方便, ...

  6. Unity UGUI——开源

    开源许可证:MIT/X11 来源托管网站:BitBucket

  7. 获取listboxitem在ListBox中的index并转换成abcd

    原文 获取listboxitem在ListBox中的index并转换成abcd 截图如下: 1.实现Converter  获取到listbox,并得到listitem在listbox中的index p ...

  8. android 网络运营商的名字显示规则(锁定屏幕,下拉列表)

    一:Background & 有关flow MTK Operator name display分为两种类型的手机: 1. Sim卡名称: 从基于引导SIM卡读取IMSI到Spn-conf.xm ...

  9. Threejs 它可以在建立其内部房间效果可见

    Threejs 中建立可看到其内部的房间效果 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协 ...

  10. android下调试声卡驱动之概述

    在Android中音频系统使用的是ALSA系统架构.ASoC--ALSA System on Chip .是建立在标准ALSA驱动层上,为了更好地支持 嵌入式处理器和移动设备中的音频Codec的一套软 ...