腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
1
回答
标识创建sysfs条目的内核模块
、
在运行的Linux系统上,我想知道哪个设备驱动模块创建了特定的sysfs条目。有可能知道吗?我知道我可以在内核源代码中获得相关字符串的grep,并尝试识别。但是,有没有办法不这样做呢?
浏览 3
提问于2012-10-25
得票数 11
1
回答
Linux设备驱动程序功能测试
、
、
对于linux内核中的设备驱动程序的开发,是否有通用的自动化测试套件来覆盖特定类型的设备驱动程序的基本/最小功能?例如,如果我们测试网卡驱动程序,我们可以确保发送/接收数据包和网络配置等基本功能能够以正确的方式处理。对于特定设备驱动程序的一些独特功能,我们不需要过多地关注它,只需要保证它的最小功能是正确的。我假设这种测试套件应该利用高级应用程序来验证设备驱动程序的功能正确性,而不是低级单元测试。谢谢
浏览 1
提问于2012-07-05
得票数 2
回答已采纳
3
回答
制作usb视频采集卡驱动程序
、
、
、
我在ebay上买了一个usb视频采集卡,但是我还没有收到正式的设备,它是一个假货,而且这个是唯一一个不被Linux支持的假货。我想写linux驱动程序,但我对驱动程序开发一无所知。我在哪里可以找到在linux上学习驱动程序开发的教程? 这款设备是一款名为fushicai usbtv007的易拉盖dc60++。更多详细信息请访问: 它可以在win7上工作,所以我可以很容易地嗅探到usb协议。 提前谢谢你
浏览 1
提问于2013-04-21
得票数 0
1
回答
如何获取有关c++中可执行文件所在驱动器的信息
、
、
我的应用程序将从USB闪存盘运行,它有特定的信息,如供应商id,设备id,...这是我需要的。 我试过使用libusb,但是尽管我仍然不能正常工作,我怎么才能找到正确的usb驱动器来获取信息呢? 请注意,我希望代码是跨平台的,这就是我首先选择libusb的原因。 编辑: 我发现了一个程序(usbviewer),它可以枚举所有的usb端口和硬盘连接时的特定信息。 我读过linux的源代码,infos是直接从/proc/bus/usb/device中提取出来的,非常简单。 但在windows上,要获取usb节点连接信息,需要大约1000行代码才能获得数据结构中的实际信息(枚举集线器控制器、根集线器
浏览 10
提问于2012-05-10
得票数 0
回答已采纳
2
回答
是否有可能将SUSE Linux设备驱动程序转换为Ubuntu?
、
、
我有一本"HP ProBook 450 G1“上网本,支持页面的Linux部分中有一些驱动程序。那里的所有下载都被标记为"SUSE“。所以,我的问题很简单: 是否有可能将那些用于Ubuntu14.04的SUSE Linux设备驱动程序进行转换,如果是的话,如何转换?
浏览 0
提问于2014-06-14
得票数 0
3
回答
设置带有虚拟串口的串行到以太网转换器
、
、
、
我有一个“31数据”品牌的串行到以太网转换器,它可以插入一端的串行设备,并允许通过以太网连接与设备进行双向通信,如下所示: 📷 据说有一种在Ubuntu中设置虚拟串口的方法,它映射到该设备的IP和端口,并允许与另一端真正的串行设备透明通信。不幸的是,这个设备没有linux文档,尽管linux支持在广告中非常突出。 我很难在Ubuntu中设置这个虚拟串口,我认为应该通过ttyd命令来实现。但是,在设备连接(我可以直接进入它),如果我运行: sudo ttyd -d /dev/ttyp1 192.168.1.25 50000 -b 115200 -p 8NC0 我的理解是,应该创建一个新的虚拟串行
浏览 0
提问于2011-05-12
得票数 7
回答已采纳
2
回答
设备驱动程序栈
、
、
我是一个初学者,我正在尝试理解设备驱动程序栈背后的概念?我知道设备驱动程序栈有三层,分别是低级驱动程序、总线管理器和高级驱动程序。我的问题是,是否存在针对低级驱动程序和总线管理器的单独代码?如果它们存在,我可以在哪里找到Linux文件系统中硬件控制器的低级驱动程序?谢谢。
浏览 0
提问于2012-06-24
得票数 2
1
回答
将PCIe驱动程序从Linux移植到FreeBSD
、
、
、
、
我在Linux上编写了一个相当大的PCIe驱动程序,现在我需要将它移植到FreeBSD上。我还不知道BSD版本,但我认为在这一点上,它是无关的,因为我想了解一般情况下,在移植过程中需要修改哪些主要项目。 好处是驱动程序被划分为操作系统独立的“库”层( OSI )和操作系统依赖层,因此它已经有了允许将其移植到其他OS-es上的“框架”,我希望大部分工作将集中在OSI方面。到目前为止,我看到了以下大量的工作: init代码,即将驱动程序“插入”到系统中的操作系统专用代码(类似于Linux中的init_module、cleanup_module )。 内核的PCI核心子系统中的代码注册驱动程
浏览 6
提问于2015-08-22
得票数 3
1
回答
Linux一对多多路复用器
、
、
我正在Linux中创建一个简单的设备驱动程序,它应该通过串行方式读取一些数据,对其进行解析、结构化,然后将其流式传输到任何需要这些数据的进程。 我认为实现这一点的最好方法是使用管道广播数据。 在Linux中,通过管道将进程A的输出输入到其他N个进程的输入的最佳方式是什么? 谢谢!
浏览 1
提问于2012-10-09
得票数 0
2
回答
编译到内核中的驱动程序的初始化函数调用
、
、
、
在Linux中,如果设备驱动程序被构建为可加载的内核模块,那么在插入设备驱动程序内核模块时,内核将调用module_init()宏所指出的设备驱动程序的初始化函数。 它们的init函数是如何调用的?
浏览 4
提问于2012-10-13
得票数 5
回答已采纳
2
回答
Ubuntu16.04没有检测到我的第二个监视器
、
、
我有Ubuntu16.04(带有Windows 10的双引导)和HP谱x360笔记本电脑。 我最近买了一个戴尔超声波U2515H显示器,我通过一个戴尔对接站连接。 当我在Windows上将对接站插入我的笔记本电脑时,会检测到两个监视器,并且一切正常。 当我尝试使用Ubuntu时,即使我单击“”(我只看到内置在监视器中的监视器),也似乎没有检测到第二个监视器。我认为我正确地下载了戴尔对接站的驱动程序,因为外部鼠标、键盘和以太网连接似乎都正常工作。 任何帮助,以使Ubuntu,以发现我的第二个显示器,将非常感谢。 谢谢。 监视器使用DP电缆连接到对接站,然后SuperSpeed USB3.0A到B
浏览 0
提问于2016-09-27
得票数 0
2
回答
Linux:以独立方式编译内核设备驱动程序
、
、
我正在为ARM板编译linux。我需要对内核存储库中存在的现有驱动程序代码进行一些自定义更改,并重新加载驱动程序。 我本来希望在执行make之后,在驱动程序目录中找到一个".ko“文件,但是不存在这样的文件。很明显,uImage/设备树映像编译并不是这样的。 我是否需要为独立的设备驱动程序编译编写自己的Makefile? 这可能是个愚蠢的问题,但很抱歉,我对内核/设备驱动程序非常陌生。 编辑:我遵循这里概述的过程:在git签出并安装交叉编译器后的 (arm-linux-gnueabihf-gcc 4.9.2),我发布基本的make。 $ make odroidc_defconfig $
浏览 4
提问于2015-03-28
得票数 0
回答已采纳
3
回答
如何在Windows中创建“块设备”
、
、
对于那些熟悉Linux的人来说,可以创建一个模块并将其注册为块设备。这允许用户将其作为常规磁盘挂载(而所有块I/O都由模块处理,例如USB海量存储)。 有没有办法在Windows中做到这一点?(需要创建可由Windows挂载的卷。原始数据将来自适当的接口)。
浏览 7
提问于2009-10-18
得票数 2
2
回答
当驱动程序有一个内核模块时,为什么我的相机不能工作?
、
、
、
我有一台联想Miix 510。那台机器是用来拍摄相机的有一个感2680 CMOS传感器。这里有一段时间的是Linux内核中的ov2680.c,它肯定被翻译成了一个驱动程序,我可以找到: djrscally@valhalla:/lib/modules/5.4.0-37-generic$ find . -name *2680* ./kernel/drivers/media/i2c/ov2680.ko 甚至成功地调制了探测器和集成电路: djrscally@valhalla:/lib/modules/5.4.0-37-generic$ sudo modprobe ov2680 djrscally@v
浏览 0
提问于2020-06-15
得票数 2
回答已采纳
2
回答
使用C/C++访问原始磁盘
、
、
、
、
我有一个大的存储设备(闪存)通过PCIe总线插入到我的计算机上,我想直接访问这样的设备,即没有任何文件系统(例如NTFS或ext4)在它上。 我如何使用C/C++来完成这个任务?(在Windows 7和Linux上)我想知道是否可以像打开文件一样打开设备,然后将二进制数据读写到设备上;或者2)使用像malloc这样的函数分配整个设备,然后设备上的每个字节都有一个地址,这样我就可以根据地址访问它们。 如果可能的话,我更喜欢第二种方式,但我不知道操作系统是否支持这一点,因为似乎需要与主内存共享地址空间。
浏览 5
提问于2014-11-21
得票数 5
回答已采纳
1
回答
内核空间中的RS232串口通信
、
、
我正在为LinuxV3.2编写一个内核模块来控制外部激光,但我在通过机器上的RS232串口通信信号时遇到了困难。 似乎在我的内核中已经编译了一个串行驱动程序,它拥有我想要访问的ioport地址的所有权: # cat /proc/ioports | grep serial 02e8-02ef : serial 02f8-02ff : serial 03f8-03ff : serial 这是有意义的,因为Linux允许用户空间程序使用/dev/ttyS*设备节点通过串口进行通信。例如,下面是我如何设置LCD面板的设备: #include <fcntl.h> #include
浏览 5
提问于2013-09-30
得票数 4
回答已采纳
1
回答
将Linux /dev/USB作为标准文件访问,以便与USB设备进行通信
、
、
、
、
我正在研究在Linux中与USB设备通信的方法,我不希望编写Linux内核驱动程序。我知道libusb是存在的,并且是一个可以工作的用户库,但是我们的嵌入式设备不支持usbfs (而且改变内核来增加支持真的很痛苦)。 因此,我的问题基本上是这样的:是否可以/建议通过直接读写/dev/USB或与USB设备对应的udev文件来与USB设备通信,从而绕过对自定义Linux驱动程序和usbfs的需要? 我希望一旦打开/dev/USB或udev设备文件,只需通过文件类型的读/写命令直接读/写协议包,就可以使用USB设备协议进行通信。 请给我一些想法和建议。 跟进: 因为我需要与之通信的USB设备是USB
浏览 67
提问于2012-03-03
得票数 8
回答已采纳
1
回答
block_device映射是物理磁盘还是磁盘分区?
、
、
在ULK(理解Linux内核)一书中,作者说每个块设备都有自己的驱动程序。问题是,这里的块设备是表示物理磁盘还是仅代表磁盘的分区? 书中写道,struct block_device可以是分区或磁盘(由"bd_contains“属性表示)。但是,struct也可以表示磁盘。我很困惑,那就是“磁盘”--这两个结构指的是同一个东西吗?
浏览 0
提问于2019-01-22
得票数 1
2
回答
什么是linux内核上下文中的DMA映射和DMA引擎?
、
、
、
、
什么是linux内核上下文中的DMA映射和DMA引擎?什么时候DMA映射API和DMA引擎API可以在Linux设备驱动程序中使用?任何真正的Linux设备驱动程序示例作为参考都是很好的。
浏览 10
提问于2015-12-25
得票数 10
3
回答
设备驱动程序开发和linux内核编程有什么联系/区别?
、
、
这可能是一个愚蠢的问题,但我很困惑,谷歌也帮不上忙。 我知道Linux是内核,它是许多发行版( Ubuntu,Mint)的核心。但是,当我们说"Linux内核编程“时,我们到底是什么意思呢?是Bash脚本吗? 它与设备驱动程序的开发有什么关系?(我们是否意味着硬件正在运行linux内核,并且我们进行内核编程来支持外围设备,这通常是与linux相关的设备驱动程序开发?)
浏览 3
提问于2014-08-05
得票数 1
3
回答
在哪里可以找到linux支持的设备驱动程序列表?
、
、
我读过这里,linux支持大量的设备驱动程序,而且它还支持大量通过USB端口连接的设备。摘录自该网站: 今天,Linux支持的硬件设备比世界上任何其他操作系统都多。它使用的开发模型与熟悉的Windows设备驱动程序模型有很大不同。 是否有linux支持的所有不同设备的列表?和/或通过USB连接并由linux`支持的设备列表? 这与通过使用命令lsmod、lspci和dmesg | grep <string>作为分发提供程序只支持linux所支持的所有驱动程序中的几个通用驱动程序来找出当前在给定发行版中支持的设备驱动程序是不同的。
浏览 0
提问于2014-07-16
得票数 1
回答已采纳
2
回答
未读取uart缓冲区
、
、
、
、
我正在尝试从linux上的c中的串行设备读取二进制数据。问题是,有时驱动程序的内部缓冲区中有字符,但轮询(使用select(2))返回表明设备尚未准备好被读取。 我已经一遍又一遍地阅读了泰米奥斯的人和所有相关的人,并在互联网上进行了搜索。我相信我正确地设置了所有的标志(即VTIME、VMIN)并取消了ICANON的设置。我也试过使用函数"tcmakeraw",但没有解决问题。 你们对我该怎么做有什么想法吗? 提前向您致以亲切的问候和感谢
浏览 1
提问于2011-01-07
得票数 0
1
回答
configfs不挂载设备树/覆盖
、
、
我的工作是一个旋风V SOC FPGA从Altera与双Cortex-A9处理器。嵌入式系统(Linux4.15.7)是用Buildroot-2018.02创建的。used用于加载系统的i-e FPGA.rbf文件、设备树blob和zImage,一切正常。 现在我要将RBF文件集成到我的Linux中,并从linux中编程FPGA。我发现了几种方法,而我理解的最常见的方法是将CONFIGFS与设备树覆盖一起使用。 因此,我更改了设备树以集成覆盖、禁用FPGA加载的u引导脚本以及linux ".config“文件中的以下选项和make linux-xconfig: +CONFIG_OF_O
浏览 3
提问于2018-06-15
得票数 5
1
回答
所有的设备驱动软件都能与Linux一起工作吗?
例如,我为特定的设备编写了自己的设备驱动程序,任何类型的设备,比如无线USB鼠标之类的.如何将它添加到Linux内核中? 内核支持驱动程序吗?这一过程将如何进行? 不太熟悉Linux的内核系统..。
浏览 0
提问于2012-12-15
得票数 0
2
回答
为串口控制LED设备制作Linux LED类驱动程序
、
、
我有一个硬件设备,可以控制面板上的LED,它还有一个用于PC控制LED的串口。 我希望能够使用Linux类API从用户空间应用程序中控制LED,即通过/sys/class/leds/whatever/brightness。所以我想为这个设备做一个Linux内核驱动程序。 然而,根据我所读到的,Linux内核驱动程序打开串行设备似乎是不寻常的。例如StackOverflow问题。我读过关于filp_open()的文章,它可以被内核驱动程序用来打开设备文件,但是它的使用似乎是不受欢迎的。 另一方面,在用户空间中实现这一点似乎是不可能的,因为我不知道如何从用户空间创建Linux类设备。 向串口控制的
浏览 24
提问于2016-04-20
得票数 2
3
回答
Linux内核是如何挂载文件系统的?这到底是怎么回事?
我的问题涉及Linux源代码,如果它实际上包含安装、解析和使用文件系统所必需的代码,或者是否添加到源代码中。 如果Linux源代码包含通过文件系统解析和访问/组织文件的代码,那么可以肯定地说,文件系统是由一个在Linux中编码的设备驱动程序控制的,还是这个过程是基于发行版、发行版等而不同的。 Linux如何在其他存储设备上使用文件系统访问文件,即用户空间程序如何访问proc、ext3、ext4等,以及ext3、ext4是否被认为是“设备驱动程序”,因为它们直接使用硬件操作,还是我错了?
浏览 0
提问于2013-08-14
得票数 7
2
回答
ftdi_usb_open()在Linux上返回-8,但同样的代码在Mac上也可以运行。
、
我在同步先进先出FT245模式下使用FT2232H,我不能让它在FT245上工作,我的代码在Mac上工作得很好,但在Linux上不行。 我已经安装了libftdi1和libftdi-dev包。 代码的相关部分: #define PID 0x6010 . . . if(vftdic == NULL) { this->ftdic = static_cast<struct ftdi_context*>(malloc(sizeof(struct ftdi_context))); } else
浏览 1
提问于2013-05-08
得票数 1
回答已采纳
1
回答
为什么可以使用第三方(开放源码)工具(如SP闪存工具)从mediatek设备备份rom映像,而不是Google?
、
在运行Linux时,我可以使用SP闪存工具对mediatek设备进行读取,并在设备处于预加载器模式时对rom映像进行完全备份,而无需使用任何额外的USB驱动程序。 然而,这是不可能的谷歌像素。 这可能是因为Mediatek在主流linux内核和Google的开发过程中为他们的设备添加了支持吗?
浏览 0
提问于2020-08-21
得票数 0
1
回答
Linux内核register_chdev返回值
、
、
、
、
这段视频展示了一个示例Raspberry内核模块,它创建了一个新的字符设备。它使用内核API register_chdev。在对视频的评论(我无法生成到它的直接链接)中,关于register_chdev的返回值,作者说: 如果返回值不等于0,则设备编号已经在使用中。返回值的上12位是您的主要设备编号,下20位是次要设备号。 我猜“设备号已经在使用”,他的意思是“内核模块中任意选择的非零主设备号已经在使用”。 尽管有几个网页处理这个问题(官方的,然后是这一个和这一个),但是我没有找到任何关于返回值的内部细分的信息。 如果我选择(用我的内核模块)创建一个已经使用的主要数字的设备,内核就不会接受它,
浏览 0
提问于2021-10-29
得票数 0
回答已采纳
2
回答
关于Linux中的设备文件
、
、
、
据我所知,Linux中的设备文件只不过是用户与实际设备通信的用户界面。设备文件还有其他用途吗? 这是否意味着如果用户不需要与实际设备通信,那么我们就不需要设备文件了吗? 而且,他们倾向于将每一个真正的设备建模为字符、块或网络设备。这是真的吗?
浏览 3
提问于2015-11-08
得票数 2
回答已采纳
2
回答
Linux没有检测到microSD卡
、
我有一个microSD卡在我的安卓设备,我想把它插入我的电脑,以改变音乐和收集的照片。 但是,我不能这么做。操作系统似乎甚至没有注意到我插上了一张microSD卡(甚至当我插入我的华为安卓系统时也是如此)。 我有Windows和Linux的双重引导,有2个自动挂载分区,但我不认为这是问题所在。 会不会是司机的问题? 我还尝试了命令lspci -vnn | grep -A 12 SDXC,但是它在控制台中根本没有输出。但是,我使用了kdep种姓,并发布了lspci -vnn 这里的结果。 其他信息: 这是什么类型的设备? 这个问题发生在笔记本电脑上: CLEVO W150ER。 是microS
浏览 0
提问于2013-10-30
得票数 2
回答已采纳
1
回答
LInux设备驱动程序分层混乱
、
、
我最近一直在阅读关于Linux驱动程序和设备模型的文章。我想了解下面的驱动程序子系统在linux中是如何工作的。假设我的设备树如下所示 ? 具体地说,假设Bus1是PCI总线,Bus2是ISA,Bus3是USB.总线使用网桥相互连接。 Linux将通过枚举过程识别这棵设备树,并通过枚举和探测机制识别出适合终端设备的usb驱动程序。 现在,让我们假设对该终端设备执行一次Tx操作。终端设备usb驱动程序最终将执行urb_submit(dev,write_buffer)。 我的问题是,为了让市建局到达终端设备,理论上它必须用Bus2和Bus1信封封住。因此,从理论上讲,传出的数据包必须如下
浏览 19
提问于2020-04-15
得票数 0
1
回答
linux环境下设备驱动程序检测过程
、
、
、
想知道如何在Linux中检测到设备?设备驱动程序在设备检测中的工作流程到底是什么?
浏览 6
提问于2016-01-24
得票数 1
回答已采纳
1
回答
在购买Linux之前,我如何确定特定设备是否与Linux一起工作?
、
假设我想买一个便宜的USB设备。我也希望这个设备能与Linux兼容。 问题是,在许多情况下,这类设备可能是通用的或没有品牌的,而且在网络上可能没有太多关于它们的信息来帮助我了解其他人是否在Linux中成功地使用了特定的设备。 下面是一些例子: USB视频采集设备或电视棒, 声卡 WiFi器件 成千上万的其他令人敬畏的东西 在购买该设备之前,是否有任何方法(尝试)来确定该设备是否与Linux兼容? 我隐约记得曾读过这样的一篇文章:人们可以从Windows驱动程序中寻找所使用芯片的线索,然后找出它们是否与Linux兼容,这可能吗?
浏览 0
提问于2015-09-10
得票数 7
回答已采纳
2
回答
使用modprobe时,设备无法在/dev下显示
、
我使用的是PEAK系统为Linux v8开发的PCAN驱动。 在成功编译之后,当尝试加载名为pcan的Linux内核模块(LKM)时 sudo modprobe pcan lspcan -T -t -a 设备未显示在/dev下 注:我的电脑中没有连接实际的设备或硬件。 这是预期的行为吗?或者不管实际的设备连接如何,这些都应该显示出来?哪种行为是预期行为? 我问的原因是,当我用自己的LKM做insmod时,我得到了/dev下的设备。
浏览 8
提问于2020-09-11
得票数 0
2
回答
Linux上/dev目录上的USB设备检测
、
、
、
使用Linux中的USB命令,我已经了解了总线和设备号,以及新连接的lsusb设备的名称。 但是,我如何知道在Linux中,仅使用命令行就可以连接到哪个设备目录(/dev/*) USB设备呢?
浏览 9
提问于2014-07-04
得票数 3
2
回答
安装Linux PCI驱动程序而不连接设备
、
、
有没有办法在不连接设备的情况下安装Linux设备驱动程序? 我有完全访问驱动程序代码的权限。我使用的是Linux内核2.6.35。 我已经尝试了insmod和modprobe,但都没有用。我正在开发一个自定义驱动程序(不是我写的),但是没有任何文档。
浏览 2
提问于2012-10-04
得票数 0
回答已采纳
2
回答
向linux内核添加驱动程序的可行性
、
、
、
我对Linux内核有疑问,据我所知,为了使Linux与不同的机器和硬件兼容,Linux中添加了不同的设备驱动程序。我想问一下,在Linux内核中增加大量的设备驱动程序有多大的可行性,假设30-40年后Linux内核的大小将在1GB左右。我无法接受和理解Linux的这种哲学。如果您说我可以从Linux内核中编辑/删除不需要的模块,那么我的回答将是,并不是每个人都能做到这一点。
浏览 0
提问于2021-03-08
得票数 -5
回答已采纳
1
回答
Linux中双触摸屏的双头配置
、
、
、
作为我当前项目的一部分,我需要建立一个基于Linux的工作站,其中包含两个监视器,这两个监视器都支持多点触摸(ViewSonic VX2258wm,Quanta面板)。所以,自然的,我建立了一个双头配置,我连接触摸屏使用USB电缆。虽然双头输出工作得很好,但操作系统并不区分第一和第二触摸面板(因此,如果第一个监视器是活动的,而我触摸第二个,鼠标指针移动到第一个监视器的相应坐标)。我了解到,X服务器不知道哪个触摸屏对应于哪个监视器(因为这些是逻辑上的,实际上是物理上不同的设备)。 有没有人知道是否有可能使这种配置正常工作?如有任何建议、提示和建议,将不胜感激。
浏览 0
提问于2011-08-23
得票数 6
1
回答
除了“xinput”之外,linux如何知道如何在启动时使用触摸屏?
、
、
我试图为Linux找到一种通用的方法来识别我的自定义触摸屏驱动程序,而无需使用xinput / xorg配置。我不确定客户将使用什么Linux系统,但我可以确定一个固定的com端口,如ttyS0。 如果不使用Xorg / xinput,Linux如何识别触摸屏设备并将其附加到设备ttyS0?还是所有带有UI的Linux操作系统都使用Xorg?
浏览 0
提问于2018-02-01
得票数 1
回答已采纳
2
回答
Linux用户空间PCI驱动程序
、
、
我正在尝试编写一个在用户空间中运行的PCI设备驱动程序。不是我的主意,是客户想要的。Target是一个嵌入式Linux板,不会有超过一个用户。我是一个经验丰富的C程序员,了解Linux,只是不熟悉Linux驱动程序的开发。 这真的是一个设备驱动程序还是一个库?我是否需要使用典型的调用pci_register_driver等,或者我可以使用fopen访问设备,并使用mmap和ioperm来访问它? 中断将使用MSI模型完成。还需要处理DMA传输。该设备将向用户传输大量数据。 在这个问题上没有太多的信息,LDD3只花了几页篇幅,我在这里找不到任何其他的东西。 提前感谢!
浏览 4
提问于2013-09-26
得票数 0
回答已采纳
1
回答
Linux:强制从命令行触发PCIe MSI中断
、
、
、
背景 我遇到了一个问题,在32位的Linux内核上,我的PCIe驱动程序与多微处理器和自定义硬件设备可以完美地工作,现在我已经转移到64位的iMX8MM中央处理器,微星中断不再触发。驱动程序正确地寄存器中断,没有任何错误,我可以查看cat /proc/interrupts的输出,并看到为我的驱动程序列出的所有微星矢量及其中断计数,即0。存在网桥,但/sys/bus/pci/devices/<address>/msi_bus具有1,因此已启用它。从lspci -vv开始,一切看起来都井然有序,CONFIG_PCI_MSI被应用到了内核中。我能够读取和写入PCIe设备上的内存缓冲区,
浏览 109
提问于2020-09-05
得票数 0
回答已采纳
1
回答
linux内核如何处理驱动程序?
、
、
、
我刚刚读到了Linux处理硬件驱动程序的方式。显然,大多数硬件驱动程序都是预编译到Linux内核中的。我对此有一些疑问。 如果Linux内核包含几乎所有硬件设备的硬件驱动程序,而运行在Linux上的膝上型计算机只有一定数量的硬件设备,那么Linux内核拥有的所有冗余硬件驱动程序呢?将所有这些驱动程序保存在内核中,并在不使用它们的情况下继续在系统中运行,难道不是浪费资源吗?
浏览 0
提问于2016-12-22
得票数 11
回答已采纳
2
回答
嵌入式板卡写入设备驱动程序
、
、
、
、
我是嵌入式世界的新手。我试图在使用Yocto项目构建的嵌入式Linux系统上编写设备驱动程序。我不知道linux驱动程序是如何工作的,也不知道如何编写新的驱动程序来测试外围设备。 在我的产品中,在第569-1199页中有一个叫做"Linux内核驱动程序“的部分。它描述感兴趣的硬件(PCIE,SPI.)驱动程序的设备树源和变量。我现在所理解的是,产品负责人已经编写了一些函数来访问外围硬件,我所要做的就是通过使用它的.c文件调用一些特殊的函数来达到它们。 我在这里是问堆叠溢出的专业人士,我的想法是正确的还是我在正确的道路上?还有关于为特殊产品编写设备驱动程序的建议吗?
浏览 5
提问于2019-11-08
得票数 0
回答已采纳
1
回答
Open Firmware设备树概述/参考手册
、
、
、
我正在尝试为嵌入式PowerPC板安装一个驱动程序,现在正确的方法是使用OpenFirmware设备树数据结构( .dtb文件,从.dts文件编译而来)。创建一个树非常简单,但是如何让我的设备驱动程序找到它的节点和其中的数据呢?我还没有找到关于这方面的任何好的参考资料,像"Linux设备驱动程序“这样的书对x86领域也没有太多的帮助,对于主要与基于Power Architecture的机器有关的设备树(在Linux内核术语中是arch powerpc )。
浏览 4
提问于2009-08-24
得票数 6
1
回答
如何将PCIe端点设备内存映射到系统内存映射(MMIO)?
、
、
、
、
Linux内核或BIOS如何将PCIe 端点设备内存映射到systems 空间?有什么API可以实现吗?假设在为PCIe端点设备编写Linux设备驱动程序时,如何将PCIe设备内存映射到MMIO空间?还是在枚举期间,设备已经被BIOS映射到MMIO,而我需要做的就是使用ioremap()将设备MMIO重新映射到内核虚拟地址的空间? 平台: Linux on x86
浏览 15
提问于2019-11-13
得票数 1
1
回答
如何禁用Linux驱动程序
使用ARM Trustzone技术,我们将运行一个与Linux“并排”的安全操作系统,在当前的设置中,以太网控制器被锁定在安全端,Linux无法访问它(它将触发异步外部中止)。为了阻止Linux的访问,我想禁用负责以太网的驱动程序(FEC,Freescale以太网控制器)。我知道我可以使用“menuconfig”禁用驱动程序,但这似乎有点过于激进了,因为我们现在Linux ARM内核中有设备树。 如果我删除设备树的fec节点怎么办?这会阻止Linux访问设备吗? 如果我使用DT的status = "disabled";选项,这会阻止Linux访问设备吗? 最好,V。
浏览 0
提问于2016-11-19
得票数 3
回答已采纳
1
回答
为什么LinuxMint19.1引导菜单显示在Windows启动菜单之前?
、
我有SSD和HDD。我已经为HDD上的Linux创建了单独的分区(交换、引导和存储),但是我在SSD上安装了它--用于引导加载程序安装的设备。我想知道发生了什么,如果不是强制性的,跳过Linux启动菜单。我在安装过程中做错什么了吗? 📷
浏览 0
提问于2019-01-30
得票数 1
1
回答
TensorFlow实际使用的库达库
、
、
我已经安装(我认为) TF与CUDA支持使用命令pip3.6 install tensorflow-gpu,每TF安装页面。 我的本地数据自动化系统安装是CUDA9.0和CUDN7.3.1在/usr/local/cuda-9.0。 根据提示,我正在检查TF使用的库(在virtualenv中): % python -c 'import tensorflow as tf; print(tf.sysconfig.get_lib() + "/python/_pywrap_tensorflow_internal.so")' | xargs ldd linux-vdso.s
浏览 1
提问于2018-10-12
得票数 4
回答已采纳
1
回答
Linux如何确定设备类?
、
、
、
Linux新手问题。 只是想知道Linux是如何确定设备是哪个设备类的?具体来说,当我插入条形码扫描器时,它怎么知道它是ttyACM设备?我有一个与我的Linux一起工作的扫描仪,但是新的模式没有被识别出来,所以我想知道我是否可以在系统的某个地方修改一个文件,告诉它识别扫描仪为ttyACM0,并使用现有的驱动程序。
浏览 8
提问于2017-05-30
得票数 2
回答已采纳
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux设备驱动开发
linux-端口与对应的服务名称
65 产品对应设备的产能表
Linux的字符设备和块设备
76 根据不同订单数量返回对应不同的设备
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券