linux-device-driver 相关问题

设备驱动程序在Linux内核中扮演着特殊的角色。它们是以编程方式抽象的“黑盒子”,使特定的硬件响应明确定义的内部编程接口;他们完全隐藏了设备如何工作的细节。

通过使用 Linux GPIO 子系统操作 8 位移位寄存器来控制 SPI 输入

我正在研究 74hc595 设备,它是我基于 iMX8MP 的定制板上的一个 8 位移位寄存器。实际上有 16 个移位寄存器是菊花链式的。在输入中,我有我的 spi 的 MOSI。那里...

回答 0 投票 0

Debain i2c 驱动内置 no /dev/i2c-*

我有一个问题,不能自己解决,所以... 我有一个 OrangePi 零,我在上面使用 Debian。 i2C 模块是内置驱动程序,但我不知道如何使用它。 $ uname -a Linux d621 5.3.5...

回答 2 投票 0

Linux 内核 5.19 的简单块设备不起作用

我正在尝试为 Linux 内核 5.19 编写一个简单的块设备您的文本。 init 方法在 add_disk 上失败。我试图从 loop.h 获得帮助,但我的驱动程序要简单得多 这是我的代码:...

回答 0 投票 0

`__meminit` 在 Linux 内核中是什么意思?

问题: 我经常在 Linux 源代码中看到 __meminit 装饰器放在函数前面。我想知道 __meminit 装饰器是什么意思。 例如。在 arch/x86/mm/init_64.c 中: 静态无效 __meminit

回答 1 投票 0

Linux 中的 SPI Bitbang 驱动程序

我正在寻找如何使用Linux内核中提供的SPI bitbang驱动程序,通常称为spi-gpio.c。 我已经将它编译成一个有效的 *.ko 文件,首先插入 spi-bitbang 驱动程序,现在我...

回答 0 投票 0

如何解决Linux mint 蓝牙瞬间连接和断开? [关闭]

过去 3 个月我一直在 linux mint 21.1 中使用蓝牙,但没有遇到任何问题。 最近蓝牙不好用。 它会立即连接和断开连接。 有时,它显示

回答 0 投票 0

net_device_stats 结构的所有字段返回零

我用 C 写了一个简单的 Linux 内核模块来返回 rx_bytes 和 tx_bytes 但所有值都返回零 #包括 #包括 #包括 我用 C 写了一个简单的 Linux 内核模块来返回 rx_bytes 和 tx_bytes 但所有值都返回零 #include <linux/kernel.h> #include <linux/module.h> #include <linux/init.h> #include <linux/netdevice.h> #include <linux/delay.h> static int mymodule_init(void) { struct net_device *dev = first_net_device(&init_net); // struct net_device *my_net_device; // struct net *my_net; // struct dev_net *my_dev_net; struct net_device_stats *stats; while (dev) { printk("Dev: name: %s - ifindex: %d\n", dev->name, dev->ifindex); if (netif_running(dev)) { printk(KERN_INFO "Device is up\n"); printk(KERN_INFO " Device name %s\n", dev->name); printk(KERN_INFO " MTU %d\n", dev->mtu); printk(KERN_INFO " Dev Address %pM\n", dev->dev_addr); printk(KERN_INFO "Permanent Address %pM\n", dev->perm_addr); msleep(1000); stats = &dev->stats; printk(KERN_INFO " rx_bytes %llu\n", (unsigned long long) stats->tx_heartbeat_errors); } else { printk("Device is down\n"); } if (test_bit(__LINK_STATE_NOCARRIER, &dev->state)) printk("NOCARRIER set\n"); else printk("NOCARRIER NOT-set\n"); /* Access the rx_bytes field of the network statistics */ dev = next_net_device(dev); } return 0; } static void mymodule_exit(void) { } module_init(mymodule_init); module_exit(mymodule_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Kiavash Rocky"); MODULE_DESCRIPTION("Read device structure of a given device file"); 操作系统:Ubuntu 22.1 64 位内核 5.15.0-69-generic 虚拟机上安装的操作系统。 输出: Apr 16 20:35:50 kernel: Dev: name: lo - ifindex: 1 Apr 16 20:35:50 kernel: Device is up Apr 16 20:35:50 kernel: Device name lo Apr 16 20:35:50 kernel: MTU 65536 Apr 16 20:35:50 kernel: Dev Address 00:00:00:00:00:00 Apr 16 20:35:50 kernel: Permanent Address 00:00:00:00:00:00 Apr 16 20:35:51 kernel: rx_bytes 0 Apr 16 20:35:51 kernel: NOCARRIER NOT-set Apr 16 20:35:51 kernel: Dev: name: ens3 - ifindex: 2 Apr 16 20:35:51 kernel: Device is up Apr 16 20:35:51 kernel: Device name ens3 Apr 16 20:35:51 kernel: MTU 1500 Apr 16 20:35:51 kernel: Dev Address fa:16:3e:76:37:3d Apr 16 20:35:51 kernel: Permanent Address fa:16:3e:76:37:3d Apr 16 20:35:52 kernel: **rx_bytes 0** Apr 16 20:35:52 kernel: NOCARRIER NOT-set 流量不为零,但所有值都返回零。

回答 0 投票 0

设备树覆盖:片段编号

考虑以下设备树覆盖示例。 这些片段编号为 0、1、2。 数字重要吗? 他们必须按升序排列吗? 或者 0、2、1 也可以吗? 具体在哪里...

回答 1 投票 0

这个命令是做什么的?? “radmmamddd 数据”

#!/bin/bash 因为我在 {1..500} 做 echo "radmmamddd 数据" >> ~/testfile 同步 完毕 命令的用途是什么 “radmmamddd 数据” 请在

回答 1 投票 0

释放系统调用什么时候调用?

我正在编写一个设备驱动程序,其中我有 mmap 系统调用引用我的驱动程序的一个函数,它被注册为一个文件操作。然后我有发布系统调用参考另一个有趣的...

回答 2 投票 0

RTL8188 FTV wifi usb适配器驱动程序的Backporting

全部 我想知道,我有适用于 Linux 的 rtl8188FTV 驱动程序。在为 Ubuntu 15 上的内核版本 4.2 编译它的工作正常之后。 它的驱动程序说,它将成功编译 4.15 到 6 Li...

回答 0 投票 0

你可以使用 /dev/kvm 而不将其添加为设备吗?

如果我在docker run命令中加上--device=/dev/kvm,我就可以访问KVM了。但是没有那个参数也可以做到吗? 我问的原因是因为我最近发现我可以访问 /dev/n...

回答 0 投票 0

FDT 和 ATAGS 支持在 Qemu 机器上的 ARM Vexpress-A9 板上重置时未编译...

我正在使用带有 vexpress-a9 板的 Qemu 上的 TFTP 服务器运行 U-boot。 主要目标是在 Qemu 上运行故障转储。 使用参考页: https://learningfromyoublog.wordpress.com/2016/...

回答 2 投票 0

vm_insert_page()和remap_pfn_range()有什么区别?

我想使用ioremap_wc()将设备内存(NIC)映射到内核空间内存区域。然后我想将内存区域从内核空间重新映射到用户空间,为此我可以使用 2 个函数:

回答 3 投票 0

多个 USB-TTL 适配器仅在与集线器一起使用时在 678uS 后切断,仅在自定义 Linux 映像上

这个问题很难完全解释清楚,我提前道歉,但请阅读整个描述?谢谢。 注意:我发布这个主要是为了记录它,只要求建议......

回答 0 投票 0

Windows ETW 的 Linux 等价物是什么?

Linux 有类似Windows ETW 的事件跟踪框架吗?我尝试搜索但找不到任何内容。也许 LTTng 是唯一的?

回答 1 投票 0

内核直接访问用户应用内存

如果内核无法访问用户空间内存,那么当内存分配函数(malloc..etc)用于分配内存时,内核如何从进程的堆段分配内存。 请不要

回答 1 投票 0

如何从 /dev/input/mice 读取鼠标按钮状态?

如何从 /dev/input/mice 读取鼠标按钮状态?我想检测按钮是否被按下。

回答 2 投票 0

未检测到 Thinkpad 声音设备

我用 Mint 19.1 和 Win 7 双启动 Thinkpad T420。 启动后声音从未正确设置,所以我禁用了它。并且没有写下我做了什么。 [是的,笨蛋,我知道] 现在声音设备是...

回答 0 投票 0

如何使用 gparted 增加 ubuntu 分区的大小[关闭]

(https://i.stack.imgur.com/2l7nR.png)](https://i.stack.imgur.com/Y5GXW.png) 我刚刚删除了我的 Windows 并在我的系统上安装了 Ubuntu。我是新的。我不知道该怎么做。请帮忙。我试过

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.