Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
device_tree_standard_properties [2018/11/18 12:32] – [model] rpjdaydevice_tree_standard_properties [2018/11/18 13:54] (current) – [ranges] rpjday
Line 4: Line 4:
  
 ===== Properties ===== ===== Properties =====
 +
 ==== compatible ==== ==== compatible ====
 +
 ==== model ==== ==== model ====
  
 ==== phandle ==== ==== phandle ====
 +
 +==== status ====
 +
 +==== #address-cells, #size-calls ====
 +
 +The #address-cells and #size-cells properties are not inherited from ancestors in the devicetree. They shall be explicitly defined.
 +
 +A DTSpec-compliant boot program shall supply #address-cells and #size-cells on all nodes that have children.
 +
 +If missing, a client program should assume a default value of 2 for #address-cells, and a value of 1 for #size-cells.
 +
 +==== reg ====
 +
 +The reg property describes the address of the device’s resources within the address space defined by its parent bus. Most commonly this means the offsets and lengths of memory-mapped IO register blocks, but may have a different meaning on some bus types. Addresses in the address space defined by the root node are CPU real addresses.
 +
 +The value is a <prop-encoded-array>, composed of an arbitrary number of pairs of address and length, <address length>. The number of <u32> cells required to specify the address and length are bus-specific and are specified by the #address-cells and #size-cells properties in the parent of the device node. If the parent node specifies a value of 0 for #size-cells, the length field in the value of reg shall be omitted.
 +
 +==== virtual-reg ====
 +
 +Seems to be PowerPC only.
 +
 +==== ranges ====
 +
 +The format of the value of the ranges property is an arbitrary number of triplets of (child-bus-address, parent-bus-address, length)
 +
 +  * The child-bus-address is a physical address within the child bus’ address space. The number of cells to represent the address is bus dependent and can be determined from the #address-cells of this node (the node in which the ranges property appears).
 +  * The parent-bus-address is a physical address within the parent bus’ address space. The number of cells to represent the parent address is bus dependent and can be determined from the #address-cells property of the node that defines the parent’s address space.
 +  * The length specifies the size of the range in the child’s address space. The number of cells to represent the size can be determined from the #size-cells of this node (the node in which the ranges property appears).
 +
 +If the property is defined with an <empty> value, it specifies that the parent and child address space is identical, and no address translation is required.
 +
 +If the property is not present in a bus node, it is assumed that no mapping exists between children of the node and the parent address space.
 +==== dma-ranges ====
  • device_tree_standard_properties.1542544330.txt.gz
  • Last modified: 2018/11/18 12:32
  • by rpjday