RK3568学习笔记16:PINCTRL和GPIO子系统 1. PinCtrl 子系统 Linux内核针对 PIN推出了 pinctrl子系统,对于 GPIO的电气属性配置推出了 gpio子 系统。 PinCtrl子系统的工作内容如下: 获取设备树中 pin信息。 根据获取到的 pin信息来设置 p
RK3568学习笔记14:设备树下的LED驱动开发 1. 修改设备树 设备树目录 arch/arm64/boot/dts/rockchip下。 修改 rk3568-atk-evb1-ddr4-v10.dtsi文件,在根目录 /下建立一个节点: rk3568_led { compatible="
RK3568学习笔记13:设备树 1. 设备树 设备树 (Device Tree),将这个词分开就是“设备”和“树”,描述设备树的文件叫做DTS(Device Tree Source),这个 DTS文件采用树形结构描述板级设备,也就是开发板上的设备信息,比如CPU数量、 内存基地址、 IIC接口上接
RK3568学习笔记13:新字符设备驱动开发 1. 字符设备驱动原理 1.1 分配和释放设备号 使用 register_chrdev函数注册字符设备后只需要给定主设备号,但这样会带来两个问题: 需要我们事先确定哪些主设备号没有使用 会将这个主设备号下的所有次设备号都占用 解决这两个问题的最好方法就是
1. LED灯驱动原理 Linux 下的任何外设驱动,最终都是要配置相应的硬件寄存器。所以本章的LED 灯驱动最终也是对RK3568 的IO 口进行配置,与裸机实验不同的是,在Linux 下编写驱动要符合Linux的驱动框架。开发板上的LED 连接到RK3568 的GPIO0_C0 这个引脚上,因此
1. 字符设备驱动简介 字符设备是Linux驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节流进行读写操作的设备,读写数据是分先后顺序的。比如我们最常见的点灯、按键、 IIC、 SPI、LCD等等都是字符设备,这些设备的驱动就叫做字符设备驱动。 Linux应用程序对驱动程序的调用架构如
1. 编译Linux内核 在SDK文件夹下编译内核:./build.sh kernel 2. 准备工作 2.1 创建/lib/modules/4.19.232 需要在根文件系统中创建 /lib/modules/4.19.232目录,因为后面驱动开发都是将驱动编译成模块,然后放到 /lib/modul
1. SDK包介绍 RK3568 SDK包中各文件夹的作用: app:存放上层应用 app,包括 Qt应用程序,以及其它的 C/C++应用程序。 buildroot:基于 buildroot开发的根文件系统。 debian:基于 Debian开发的根文件系统。 device/rockchip: 存放