GPIO, 全称 General-Purpose Input/Output(通用输入输出),是一种软件运行期间能够动态配置和控制的通用引脚。 所有的 GPIO 在上电后的初始状态都是输入模式,可以通过软件设为上拉或下拉,也可以设置为中断脚,驱动强度都是可编程的,其核心是填充 GPIO bank 的方法和参数,并调用 gpiochip_add 注册到内核中。
本文以 GPIO0_B4 和 GPIO4_D5 这两个 GPIO 口为例写了一份简单操作 GPIO 口的驱动,在 SDK 的路径为:kernel/drivers/gpio/gpio-firefly.c,以下就以该驱动为例介绍 GPIO 的操作。
首先在 DTS 文件中增加驱动的资源描述:
kernel/arch/arm64/boot/dts/rockchip/rk356x-firefly-demo.dtsigpio_demo: gpio_demo { status = "okay"; compatible = "firefly,rk356x-gpio"; firefly-gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; /* GPIO0_B4 */ firefly-irq-gpio = <&gpio4 29 IRQ_TYPE_EDGE_RISING>; /* GPIO4_D5 */ };*******************************
以上是咱们简介说的,但是我搜不到gpio-firefly.c这个文件,进而我通篇搜索firefly,rk356x-gpio这个通配关键字,仍旧一无所获,这是怎么回事?
389 Bytes, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1
欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) | Powered by Discuz! X3.1 |