70 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
| .. SPDX-License-Identifier: GPL-2.0+
 | |
| 
 | |
| fdt command
 | |
| ===========
 | |
| 
 | |
| Synopis
 | |
| -------
 | |
| 
 | |
| ::
 | |
| 
 | |
|     fdt addr [-cq] [addr [len]]
 | |
| 
 | |
| Description
 | |
| -----------
 | |
| 
 | |
| The fdt command provides access to flat device tree blobs in memory. It has
 | |
| many subcommands, some of which are not documented here.
 | |
| 
 | |
| Flags:
 | |
| 
 | |
| -c
 | |
|     Select the control FDT (otherwise the working FDT is used).
 | |
| -q
 | |
|     Don't display errors
 | |
| 
 | |
| The control FDT is the one used by U-Boot itself to control various features,
 | |
| including driver model. This should only be changed if you really know what you
 | |
| are doing, since once U-Boot starts it maintains pointers into the FDT from the
 | |
| various driver model data structures.
 | |
| 
 | |
| The working FDT is the one passed to the Operating System when booting. This
 | |
| can be freely modified, so far as U-Boot is concerned, since it does not affect
 | |
| U-Boot's operation.
 | |
| 
 | |
| fdt addr
 | |
| ~~~~~~~~
 | |
| 
 | |
| With no arguments, this shows the address of the current working or control
 | |
| FDT.
 | |
| 
 | |
| If the `addr` argument is provided, then this sets the address of the working or
 | |
| control FDT to the provided address.
 | |
| 
 | |
| If the `len` argument is provided, then the device tree is expanded to that
 | |
| size. This can be used to make space for more nodes and properties. It is
 | |
| assumed that there is enough space in memory for this expansion.
 | |
| 
 | |
| Example
 | |
| -------
 | |
| 
 | |
| Get the control address and copy that FDT to free memory::
 | |
| 
 | |
|     => fdt addr -c
 | |
|     Control fdt: 0aff9fd0
 | |
|     => cp.b 0aff9fd0 10000 10000
 | |
|     => md 10000 4
 | |
|     00010000: edfe0dd0 5b3d0000 78000000 7c270000  ......=[...x..'|
 | |
| 
 | |
| The second word shows the size of the FDT. Now set the working FDT to that
 | |
| address and expand it to 0xf000 in size::
 | |
| 
 | |
|     => fdt addr 10000 f000
 | |
|     => md 10000 4
 | |
|     00010000: edfe0dd0 00f00000 78000000 7c270000  ...........x..'|
 | |
| 
 | |
| Return value
 | |
| ------------
 | |
| 
 | |
| The return value $? indicates whether the command succeeded.
 |