
驱动
文章平均质量分 78
zfenggo
这个作者很懒,什么都没留下…
展开
-
t113i不查网线启动,内核[ cut here ]崩溃问题解决
phy_stop在/home/zfeng/T113-i_v1.0/kernel/linux-5.4/drivers/net/ethernet/allwinner/sunxi-gmac.c geth_phy_release引用。原创 2023-07-08 16:09:03 · 1135 阅读 · 0 评论 -
加载.ko的时候报Unknown symbol v4l2_i2c_subdev_init (err -2)
驱动加载modprobe原创 2023-03-13 15:11:50 · 1145 阅读 · 0 评论 -
内核启动卡在Waiting for root device /dev/mmcblk0p2...
Waiting for root device /dev/mmcblk0p2...原创 2023-03-13 11:08:07 · 3256 阅读 · 0 评论 -
海思HiPQTools链接单板出图
海思HiPQTools链接单板出图原创 2022-10-07 18:52:25 · 1748 阅读 · 0 评论 -
Hi3519AV100 适配IMX347
Hi3519a适配IMX347原创 2022-10-07 17:54:02 · 2588 阅读 · 0 评论 -
Hi3519AV100 MPP部署
hi3519a mpp部署原创 2022-10-06 19:18:09 · 2199 阅读 · 1 评论 -
海思I2C工具读取外设寄存器
海思sdk自带i2c工具原创 2022-09-03 16:35:17 · 1666 阅读 · 0 评论 -
打印到proc虚拟文件
1、系统默认的打印缓冲区/proc/kmsg通过dmsge或cat/proc/kmsg可查看打印信息cat proc/kmsg<6>Booting Linux on physical CPU 0x0<6>Initializing cgroup subsys cpu<5>Linux version 3.18.20 (osrc@osrc) (gcc ver...原创 2020-02-26 10:23:42 · 344 阅读 · 0 评论 -
驱动调试之printk原理
1、内核对uboot传进来的console=ttyAMA0处理内核文件搜索"console="在kernel/printk/printk.c找到__setup(“console=”, console_setup);__setup 为宏,将字符串console=,用console_setup函数处理注意:此处记录了设备想用哪个控制台作为打印输出2、硬件注册控制台对于hi3519v101...原创 2020-02-25 14:02:40 · 532 阅读 · 0 评论 -
块设备驱动实验
一、理论知识这里直接引用大佬的文章,讲解蛮清楚的。块设备驱动程序设计(1)—块设备系统架构二、程序编写#include <linux/major.h>#include <linux/vmalloc.h>#include <linux/init.h>#include <linux/module.h>#include <linux/...原创 2020-02-24 12:12:49 · 791 阅读 · 0 评论 -
hotplug_uevent机制_修改mdev配置
1、mdev.conf格式说明mdev.conf的格式: : [<@|$|*> ]device regex:正则表达式,表示哪一个设备uid: ownergid: 组IDoctal permissions:以八进制表示的属性@:创建设备节点之后执行命令$:删除设备节点之前执行命令*:创建设备节点之后 和 删除设备节点之前 执行命令command:要执行的命令2、...原创 2020-02-24 09:53:18 · 930 阅读 · 0 评论 -
USB鼠标驱动
#include <linux/kernel.h>#include <linux/slab.h>#include <linux/module.h>#include <linux/init.h>#include <linux/usb/input.h>#include <linux/hid.h>static int ...原创 2020-01-15 15:23:59 · 894 阅读 · 0 评论 -
Linux内核网卡驱动之(一)——虚拟网卡实现
说明:网卡驱动为网络硬件相关的驱动程序:一、驱动框架以drivers/net/ethernet/cirrus/cs89x0.c为例1、分配一个结构体(内核驱动更多的是类似面向对象):net_device2、设置(网卡驱动与上层通信):发包函数:ndo_start_xmit收包函数:在中断函数里,用netif_rx数据包格式:struct sk_buff3、注册:reg...原创 2020-01-04 10:53:41 · 3201 阅读 · 0 评论 -
Hi3519v101 uart驱动
一、说明1、Hi3519v101 SDK已经将uart驱动写好了,可以直接使用。但内核默认只添加了uart0驱动,其他端口需要手动添加。uart驱动路径为:drivers/tty/serial/amba-pl011.c2、采用SDK的根文件系统启动后,可以在dev文件夹下面看到ttyAMA0、ttyAMA1。这是根文件系统添加的两个设备,但ttyAMA1并没有驱动,运用程序通过ope...原创 2019-12-26 13:43:05 · 767 阅读 · 2 评论 -
Hi3519v101 i2c r8010 rtc驱动
一、相关文件Hi3519v101 i2c 总线驱动文件路径:drivers/i2c/busses/i2c-hisi-v110.c二、调试测试1、在调试过程中遇到一个小问题,详见链接2、驱动只实现了读秒寄存器3、i2c/i2c_rtc_dev.c#include <linux/types.h>#include <linux/kernel.h&g...原创 2019-12-13 16:13:26 · 573 阅读 · 0 评论 -
Hi3519v101 i2c 报错打印hisi-i2c-v110 12112000.i2c: wait rx no empty abort, RI: 0x750问题排查
1、先说结论,是从设备无应答导致!无应答的情况就很多了,我的情况是从地址设置错了,分析如下~2、错误打印信息如下:/ # insmod i2c_rtc_drv.koret = 0/ # insmod i2c_rtc_dev.ko/ # ls dev/r8010_rtcdev/r8010_rtc/ # ls /sys/bus/i2c/devices/2-0064 i2c-...原创 2019-12-12 20:12:00 · 2482 阅读 · 0 评论 -
Hi3519v101gpio字符驱动-led设备树驱动dts
一、dts文件路径1、arch/arm/boot/dts/hisi-hi3519v101.dtsi2、arch/arm/boot/dts/hisi-hi3519v101-hmp-demb.dts二、准备文件1、led_dts_drv.c#include <linux/types.h>#include <linux/kernel.h>#include...原创 2019-12-06 10:50:05 · 679 阅读 · 0 评论 -
Ubuntu下串口与minicom的安装和使用
安装:在终端中输入即可完成安装sudo apt-get install minicom安装好以后需要配置。配置:1、类似与在windows下查看自己的串口号是COM几一样,首先需要查看自己的串口号。ls -l /dev/ttyUSB*:~$ ls -l /dev/ttyUSB*crw-rw---- 1 root dialout 188, 0 11月 30 16:17...原创 2019-11-30 16:24:49 · 241 阅读 · 0 评论 -
Hi3519v101输入输出子系统-key_input
一、步骤1、分配input_dev2、设置3、注册4、硬件相关操作二、说明struct input_dev { const char *name; const char *phys; const char *uniq; struct input_id id; unsigned long propbit[BITS_TO_LONGS(INPUT_PROP_CNT)...原创 2019-11-29 16:50:05 · 279 阅读 · 0 评论 -
输入输出子系统
输入子系统概述 Linux内核为了能够处理各种不同类型的输入设备,比如 触摸屏 ,鼠标 , 键盘 , 操纵杆 ,设计并实现了为驱动层程序的实现提供统一接口函数;为上层应用提供试图统一的抽象层 , 即是Linux 输入子系统 。输入子系统框架 从上图输入子系统的框架图,可以看出,输入子系统由Input driver(驱动层)、Input core(...转载 2019-11-28 10:19:35 · 1046 阅读 · 0 评论 -
Hi3519v101gpio字符驱动-按键中断poll机制
1、key_irq_poll_drv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <linux/poll....原创 2019-11-16 14:46:49 · 375 阅读 · 0 评论 -
Hi3519v101gpio字符驱动-按键中断
之前测试按键中断存在触发中断之后,读取中断寄存器为0的情况,后来测试发现是挂载海思文件系统之后,有些文件由于权限问题不能初始化,更改为自己配置的文件系统测试就不会出现此类情况。1、key_irq_drv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>...原创 2019-11-15 16:22:53 · 645 阅读 · 2 评论 -
Linux 字符设备驱动概念
运用程序、内核、硬件关系图字符驱动编写步骤:1、写出框架;①参考现有的驱动,拷贝头文件;②构建file_operations结构体;将open,write,reade等函数准备好,具体功能可以后面慢慢完善,内部加上return 0;③编写入口函数,init、exitregister_chrdev(major, "led_drv", &led_drv_fops...原创 2019-11-12 16:11:57 · 155 阅读 · 0 评论 -
Hi3519v101gpio字符驱动-点亮第一个LED灯
1、ed_drv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/device.h>#include <asm/io.h>#include <linux/init.h>#includ...原创 2019-11-08 16:32:45 · 482 阅读 · 0 评论 -
Hi3519v101gpio寄存器操作
1、海思gpio寄存器操作说明①管脚复用配置;②方向配置;③设置管脚输出值;2、工具说明海思文件系统内置寄存器查看修改工具常用如下表,参数address既可以是寄存器地址,也可以是内存地址,工具可以用于内存查看、修改。 工具 参数 功能 备注 himd 参数1:...原创 2019-11-08 15:29:19 · 1132 阅读 · 0 评论