问题标签 [device-tree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
441 浏览

linux - 解密设备树

这是我从嵌入式 Linux 内核上的设备树中提取的摘录。我现在是这样理解的:

1)aemif接口位于物理地址0x30000000

2)aemif驱动程序位于名为 davinci_aemif.c 的文件中,它使用名为aemif

3)aemif上面有2个设备,一个是cs2另一个是nand(我认为这个假设不正确)

现在的问题:

1)线路reg = <0x21000a00 0x100>;在做什么?aemif位于 which 的0x30000000地址空间如何0x21000a00

2)为什么cs2定义cs2@30000000而不是cs2@1,0

3)线路reg = <0x2 0x0 0x8000000 0x6 0x0 0x100>;在做什么?

4) 任何关于如何设置信号线(ta、rhold、rstrobe 等)的解释都会有所帮助。

0 投票
1 回答
367 浏览

linux - 3.10 kernel crash BUG() in mark_bootmem()

I get a kernel crash at BUG() here - http://lxr.free-electrons.com/source/mm/bootmem.c?v=3.10#L385 with the following message

What could be a possible reason for this?

Following is the function call trace

Thanks

0 投票
1 回答
1459 浏览

linux-device-driver - 如何将平台数据从 OF 设备树传递到我的 i2c 驱动程序?

我正在为主要通过 i2c 通信但也使用 GPIO 引脚发送信号的芯片编写驱动程序。相关的设备树节点如下所示:

我希望能够从我的驱动程序中读取 irq_gpio 值,因此我可以请求一个 irq(通过 gpio_to(irq()) 并进行设置。我发现我需要访问 struct i2c_board_info 的 of_node 成员。但是,驱动的probe函数只获取i2c_client和i2c_device_id structs.如何从i2c_client或设备id开始到达期望的of_node?

0 投票
1 回答
1352 浏览

linux-device-driver - am335x GPIO 在设备树中是如何编号的?

我正在尝试在 BeagleboneBlack 上使用带有 gpio 中断的驱动程序。我的设备树有以下用于我的自定义设备的条目:

它的驱动程序对应物有:

驱动程序加载并正常工作,除了 gpio 编号完全错误。属性读取函数返回成功,并读取 8 作为 gpio 编号,即使我将不同的编号放入设备树。

我应该如何将 gpio 编号作为通用数据传递?如果我手动覆盖驱动程序中的 gpio 编号,则中断有效。

0 投票
2 回答
16806 浏览

linux - Linux 设备树帮助(GPIO 控制器/中断)

我一直在学习 linux 设备树,我们一直在尝试开始移植一些旧代码以使用它们。我在使用 gpio 控制器节点时遇到了一点问题:

};

我正在尝试将某些 IRQ 映射到 GPIO 引脚,但是,它似乎只将第一个 <0 24> IRQ 24 映射到 gpio 引脚 0。我查看了源代码,它似乎永远不会交互'中断',尽管设备树绑定文本文件似乎暗示它会(devicetree/bindings/gpio/cavium-octeon-gpio.txt)。有谁知道我如何将一些中断映射到不同的 gpio 引脚?

0 投票
1 回答
1933 浏览

beagleboard - BeagleBone Black 设备树覆盖不会更改 pinmux

我最近开始在 BeagleBone Black 上工作,并且在应用设备树覆盖来修改 pinmux 以使用一些 gpios 时遇到了一些问题。我发现了很多关于设备树覆盖的教程,但我很难应用配置。我需要一些帮助。

这是我正在使用的 dts 文件:(BBB-CAM-00A0.dts)

我正在使用的所有引脚都没有从另一个覆盖中使用,所有引脚都是:

我使用以下方法编译 dts:

然后 :

然后:

此时覆盖似乎被接受:

但是pinmux似乎没有改变:

dmesg不返回相关信息。

有关信息,这是我未更改的内核:

我真的不知道如何处理这个问题,有什么建议吗?

非常感谢

0 投票
0 回答
351 浏览

beagleboard - Stuck with applying the device tree overlay file (dtbo) On BeagleBoard-XM, any suggestions how?

I have recently took my Beagleboard-xM (Rev B) and put on it the Ubuntu 14.04 LTS (3.14.2-armv7-x5), then I tried to mux Pin3 (GPIO_139), after reading thoroughly the pages from both the "System Reference Manual"(Page 110) and the "Technical Reference Manual" of the processor (Pages 2444-2453). So I wrote the dts file and compiled it via dtc.

but now I got stuck . how do I apply the changes on runtime?

I saw on the beaglebone there is a slots file (/sys/devices/.../slots) which was triggering the change, after we echoed to it the dtbo file. but in my case we are talking about beagleboard-xM which there is no such kind of file. can someone elaborate what should I do?

Any suggestion would be great! thank you all.

Gil

0 投票
0 回答
636 浏览

linux-kernel - 设备树如何在同一个二进制文件中支持两个不同的 LCD 面板?

我对设备树概念感到困惑。由于使用了设备树,因此可以在不同的设备(兼容)上刷新相同的内核。

现在假设我想为同一个项目使用两个不同的 LCD 面板,那么我是否需要分别为不同的面板构建二进制文件,或者我可以为此创建一个二进制文件?如果是单个二进制文件,我该怎么做?

0 投票
1 回答
107 浏览

device-tree - 没有实际设备的设备节点和驱动程序

我对设备树中的以下场景有疑问,请您帮忙。

我们在设备树中有一个设备节点条目,并且相应的驱动程序存在于内核源中,但实际设备不存在于板上,那会发生什么?驱动程序是否会使用内核源代码构建,如果驱动程序构建然后驱动程序绑定发生?

提前致谢。

0 投票
0 回答
132 浏览

tree - 平面设备树 - 管理程序

平面设备树 FDT 用于将有关平台硬件的信息传递给内核。是否可以设置一个管理程序来完全控制 FDT,然后让管理程序将虚拟 FDT 传递给内核(虚拟化 FDT)?例如,我只希望内核可以看到一定范围的物理内存。

事实上,访客可以看到 FDT 是否安全,尤其是当我们针对的是完全裸机的虚拟机管理程序时?