在Linux 驱动程序中,可以使用等待队列来实现阻塞进程的唤醒。等待队列的头部定义如下,是一个双向列表。 struct list_head { struct list_head *next, *prev; }; struct __wait_queue_head { spinlock_t lock; ...
分类:
系统相关 时间:
2019-11-18 20:34:56
阅读次数:
111
linux驱动程序开发1、linux驱动工程师需要具备的知识 1)硬件的知识 看懂电路原理图 (二极管 三极管 电阻...) 底板和核心板中名称相同的导线是同一条导线 目的:找到要驱动的硬件和CPU的连接方式 熟悉常见的接口:gpio uart i2c 1-wire spi 485 can usb ...
分类:
其他好文 时间:
2019-11-12 20:30:14
阅读次数:
111
linux驱动 面试题 1.解释命令ls -amore具体含义.2.LINUX中的管道指什么重定向又指什么3.GCC -g -o test.elf test.c的具体含义.4.浅述GCC编译器在编译时都有哪几个过程5,在题3的基础上编写一MAKEFILE文件,要求能自动完成编译和清除功能6.说明uc ...
分类:
系统相关 时间:
2019-11-07 19:03:17
阅读次数:
128
1、前言在嵌入式系统中,许多SoC的内部都包含了pin控制器,通过芯片内部的pin控制器,我们可以配置一个或者一组引脚的状态和功能特性,Linux内核为了统一各SoC厂商的引脚管理,提供了pinctrl子系统。 2、引脚功能分类嵌入式芯片手册往往有一个GPIO控制的章节来描述SoC的引脚如何进行配置 ...
分类:
系统相关 时间:
2019-11-04 21:36:37
阅读次数:
216
一、驱动更新 本示例为更新网卡驱动,把新的驱动文件放到/root/目录下,然后执行下面的命令 1. 备份已有的文件,将新的文件复制的相应位置 mv /lib/modules/ /kernel/drivers/net/ethernet/intel/i40e/i40e.ko /tmp cp /root/ ...
分类:
系统相关 时间:
2019-08-21 11:15:45
阅读次数:
111
P. S. 其实在 Win 10 上也可以装老版本的 VirtualBox 然后再安装 Fedora,是我傻逼了。 现在我对装系统编译内核已经轻车熟路了,这里还是记录一下大概的步骤吧。 ...
分类:
系统相关 时间:
2019-08-03 12:49:06
阅读次数:
107
今天记录一下简单的Linux驱动程序怎么写以及如何加载/卸载驱动 以hello.c为例: hello.c #ifndef __KERNEL__ # define __KERNEL__ #endif #ifndef MODULE # define MODULE #endif #include <lin ...
分类:
系统相关 时间:
2019-06-21 22:17:38
阅读次数:
214
Kobjects Sysfs Operations Buses, Devices, and Drivers Classes Firmware ...
分类:
系统相关 时间:
2019-05-27 11:48:01
阅读次数:
167
These symbols related to interrupt management were introduced in this chapter: Calls that register and unregister an interrupt handler. dev_name为显示在/p ...
分类:
系统相关 时间:
2019-05-23 16:36:46
阅读次数:
119
1.主设备号和次设备号 下图中,“”5月”的前两列分别是主设备号和次设备号,主设备号用来标识设备对应的驱动程序,次设备号用来确定设备文件所指的设备。 在内核,dev_t类型用来保存设备编号,位于文件<linux/types.h>。目前版本(3.1),dev_t 是一个unsigned int 类型, ...
分类:
系统相关 时间:
2019-05-18 09:59:26
阅读次数:
181