Questions tagged [device-tree]

The Device Tree is a data structure for describing hardware. Rather than hard coding every detail of a device into an operating system, many aspects of the hardware can be described in a data structure that is passed to the operating system at boot time. The device tree is used both by Open Firmware, and in the standalone Flattened Device Tree (FDT) form.

Device Trees are related to open firmware. It is often abbreviated as DT. They are a mechanism to pass hardware parameters to an OS from a boot loader. Device Trees are common on embedded PowerPC CPUs and more recently ARM CPUs. There is a lot of effort in the Linux kernel to support and use Device trees.

The main benefit is that one kernel binary may support many systems, even ones not conceived when the binary was built.

The device tree supports variable length data with keys, much like XML. Also, by itself, it does not define what the keys mean beyond a few standard details like an address, etc. For instance, it doesn't describe how a video controller entry should look. It is fairly detailed on CPU, memory and bus topologies.

References

Related Tags

  • - older PC BIOS standard, competing with DT/Open Firmware
  • -new PC BIOS standard, competing with DT/Open Firmware
  • - an embedded boot loader which functions as a BIOS on many embedded systems. u-boot supports passing devices trees to an OS.
630 questions
0
votes
1 answer

Deciphering Device Tree

Here is an excerpt I pulled from a device tree on my embedded Linux Kernel. This is how I understand it now: 1) The aemif interface is located at physical address 0x30000000 2) The aemif driver is located in a file called davinci_aemif.c and it uses…
whh4000
  • 905
  • 1
  • 12
  • 30
0
votes
1 answer

BeagleBone Black Device Tree Overlays Not Applying

I am trying to create a device tree overlay for a BeagleBone Black per these instructions: http://derekmolloy.ie/gpios-on-the-beaglebone-black-using-device-tree-overlays/. I followed the directions exactly as shown and was not told of any errors,…
0
votes
2 answers

Why and when will a embedded device have both NAND and NOR?

I found this snippet in the dts file of a embedded product. Why do we have a NOR flash when we have a NAND flash? And what is the meaning of LCS0,LCS1 which is mentioned in the localbus node below? localbus@a8405000 { …
0
votes
2 answers

Does a memory address point to a byte of information?

The following is an excerpt from DTS file. linux/arch/powerpc/boot/dts/[board_name].dts memory { device_type = "memory"; reg = <0x00000000 0x40000000>; // 1GB at 0 }; The embedded device has 1 GB of memory. 0x40000000=1073741824 in…
-1
votes
0 answers

Installing i2c touchpanel driver on android 13 linux using a qualcomm based (Quectel SMART-EVB-G2_V1.3 (with SC668S-EM) SOM

I'm hoping some of you guys can help me with the project I'm working on. I have an ilitek 2130 i2c based touchpanel that I'm trying to use with my Android dev kit. This is what I've done so far: i've found the official android driver from the link…
anigma
  • 1
-1
votes
0 answers

how to make universal u-boot image for two boards

I have two boards with ARM processors. Boards are slightly different, on one of the boards there is an i2c power IC (PMIC), and on the other there is not, and also the ethernet chips on this boards has physically different addresses. Now on the…
-1
votes
1 answer

jedec,spi-nor not executing in linux kernel

I am trying to use a MTD device for storage on a Licheepi Zero. I have been able to add and use i2c and spidev succesfully, however I cannot make jedec,spi-nor execute during kernel bootup. My dts is (I have tried many variations of this): &spi0 { …
-1
votes
1 answer

How to check if adapter device is present in device tree? In /proc/device-tree

How to check if the device is present in device tree using /proc/device-tree?
qwerty
  • 85
  • 2
  • 6
-1
votes
1 answer

In device tree, a node's interrupts output cell size is 1 but its interrupt-parent seems to have #interrupt-cells = 3. Why?

I'm making a dts file by modifying an existing one and it's still hard to understand device tree syntax and meaning with digging the bindings documents. Here is another one I can't understand. Please help me.. In linux-5.15 source, I see in…
Chan Kim
  • 5,177
  • 12
  • 57
  • 112
-1
votes
1 answer

Spansion S25HS512T NOR Flash not working on linux or u-boot

I have a custom board (NXP iMX6UL) with Spansion Flash 25HS512TFANHI010 which I cant seem to get working. My dtsi has the following ... pinctrl_qspi: qspigrp { fsl,pins = < MX6UL_PAD_NAND_WP_B__QSPI_A_SCLK …
Harkirat
  • 72
  • 8
-1
votes
1 answer

devicetree and libgpiod with gpio-line-names - Issue

I stay trying put name LED in my GPIO6_IO14 of the imx7d-pico (technexion) device/DEVICETREE (DTS/DTSi-files): https://github.com/neuberfran/StackOverflow I stay using Yocto/Zeus, kernel 5.6, libgpiod v1.4. I can blink LED using GPIO6_IO14. But,…
neuberfran
  • 359
  • 3
  • 18
-1
votes
1 answer

Problems regarding device tree overlay

I have enabled the device tree overlay features in the kernel. Now I don't where i write the overlay device tree content. Can someone let me know regarding this?
malik
  • 1
  • 2
-1
votes
1 answer

Emulate Raspberry Pi zero W with Qemu failed due to missing dtb

I am trying to emulate a Raspberry Pi zero W with Qemu based on an image I used on a real Raspberry Pi zero W. The command I am using is: sudo qemu-system-arm \ …
GuillaumeB
  • 99
  • 9
-2
votes
1 answer

Why Device Tree Changes With Newer Android Version?

I Have Oreo Based Stock Rom And Its Relevant Device Tree. I Want To Build Latest Version Of Aosp Or LineageOs Then Why Do I Need To Port My Current Device Tree To Newer Android Version. As Far As I Knows Device Tree Is A Hardware Description And…
1 2 3
41
42