Lines Matching refs:that
66 clarifies the fact that a lot of things are
71 May 24, 2005: Rev 0.3 - Precise that DT block has to be in RAM
80 that are referenced by other nodes need it.
88 already aligned, that means no specific
98 the tree that can be "compiled" by dtc.
112 names for cells that are not already defined by the existing
117 that currently have no standard, like the FSL CPM.
127 order to avoid the degeneration that had become the ppc32 kernel entry
130 but no new board support will be accepted in the main tree that
136 The main requirement that will be defined in more detail below is
146 recommended to define nodes for on chip devices and other buses that
219 exceptions during that time.
223 called directly by a bootloader that does not support the Open
246 with all CPUs. The way to do that with method b) will be
264 containing the various callbacks that the generic code will
325 are described later. You can find example of code manipulating that
330 expected that a bootloader like uboot provides a bit more support,
331 that will be discussed later as well.
343 that is roughly described in include/linux/of_fdt.h by the structure
380 "offset" values are in bytes from the start of the header; that is
385 This is a magic value that "marks" the beginning of the
412 kernel with a list of physical memory areas that are "reserved"
432 "compact" format for the tree itself that is however not backward
438 at the time of your implementation. Currently that is version 17,
445 is backward compatible with version 1 (that is, a kernel build
474 need to be in that order) looks like this (addresses go from top to
532 There is also a "unit name" that is used to differentiate nodes with
558 Every node which actually represents an actual device (that is, a node
564 Finally, every node that can be referenced from a property in another
567 "phandle" value for every node that the "prom_init()" trampoline code
574 The "phandle" property is a 32-bit value that uniquely
577 requirement is that every node for which you provide that property has
627 that is, some basic model information at the root, the CPUs, and the
643 ends that node definition. Child nodes are simply defined before
644 "OF_DT_END_NODE" (that is nodes within the node). A 'token' is a 32
649 * token OF_DT_BEGIN_NODE (that is 0x00000001)
656 * token OF_DT_PROP (that is 0x00000003)
663 * token OF_DT_END_NODE (that is 0x00000002)
669 NOTE: The above definition requires that all property definitions for
670 a particular node MUST precede any subnode definitions for that node.
672 subnodes were intermingled, the kernel parser requires that the
695 that's where you'll have to add code to detect your board model and
712 properties. Note that the parent's parent definitions of #address-cells
738 For buses that support dynamic allocation, it's the accepted practice
741 then, to provide a separate "assigned-addresses" property that
754 (that is into parent bus addresses, and possibly into CPU physical
756 "ranges" property is missing at a given level, it's assumed that
764 that is, for a PCI bridge, it would be a PCI address. Thus, (bus
767 example, for a PCI host controller, that would be a CPU address. For a
768 PCI<->ISA bridge, that would be a PCI address. It defines the base
769 address in the parent bus where the beginning of that range is mapped.
777 Alternatively, the "ranges" property may be empty, indicating that the
797 considered a good practice to use a name that is closer to the device
807 Note also that the new format version 16 makes the "name" property
821 lowercase. The fact that vendors like Apple don't respect this rule is
829 address which can extend beyond that limit.
834 These are all that are currently required. However, it is strongly
835 recommended that you expose PCI host bridges as documented in the
848 that typically get driven by the same platform code in the
850 compatible property followed by an entry that represents the SoC
854 specific to your board like the serial number if any, that sort of
855 thing. It is recommended that if you add any "custom" property whose
868 This defines that the "address" for a CPU is a single cell, and has
870 that format when reading the "reg" properties of a CPU node, see
879 However, the Generic Names convention suggests that it would be
915 for the above, the common code doesn't use that property, but
949 have a "reg" property here that looks like:
956 that there is no memory covering the IO hole between 2Gb and
962 This node is a bit "special". Normally, that's where Open Firmware
967 some linux-specific properties that would be normally constructed by
969 but that you have to provide yourself when using the flattened format.
981 Note that u-boot creates and fills in the chosen node for platforms
982 that use it.
984 (Note: a practice that is now obsolete was to include a property
986 that pointed to the main interrupt controller)
992 information that is global to all devices on the SoC. The node name
1012 memory-mapped registers that are used for the SOC node itself.
1020 represent the address of the registers. For SOCs that do not
1021 use MMIO, a special address format should be defined that
1027 32-bit number that represents the interrupt number, and a
1028 32-bit number that represents the interrupt sense and level.
1032 The SOC node may contain child nodes for each SOC device that the
1035 for more information on how to specify devices that are part of a SOC.
1071 - "dtb": "blob" format, that is a flattened device-tree block
1078 output of /proc/device-tree, that is nodes are directories and
1086 - "asm": assembly language file. This is a file that can be
1089 assembly file exports some symbols that can be used.
1100 currently version 3 but that may change in the future to version 16.
1150 It is also suggested that you pipe your source file through cpp (gcc
1161 We may provide a .h include file with common definitions of that
1171 Here are some various ideas/recommendations that have been proposed
1182 more code to handle the tree structure. Note that the structure
1193 GPL bootloader, and as the author of that code, I would be happy
1206 should be used that defines child nodes for the devices that make
1208 order to boot the kernel, it is highly encouraged that all SOC
1217 Each device that is part of an SOC may have its own node entry inside
1218 the SOC node. For each device that is included in the SOC, the unit
1222 node. The "reg" property for each node that exists directly under the
1227 For many devices that may exist inside an SOC, there are predefined
1239 Currently, there are many devices on SoCs that do not have a standard
1241 mainly because the boards that contain these SoCs are not currently
1266 Devices that generate interrupts to a single interrupt controller
1338 states that are decoupled from the devices' own register blocks. Sometimes,
1349 that may be supported are:
1357 Some devices may share a clock domain with each other, such that they should
1360 property. If the clock domain is shared among devices that cannot be
1362 (similar to an interrupt nexus, except that defining a standardized
1396 - dma-ranges: <empty> value. if present - It means that DMA addresses