diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/fdt_support.h | 26 | ||||
-rw-r--r-- | include/libfdt.h | 2 |
2 files changed, 27 insertions, 1 deletions
diff --git a/include/fdt_support.h b/include/fdt_support.h index 0edc4fa5b1..296add01f3 100644 --- a/include/fdt_support.h +++ b/include/fdt_support.h @@ -67,8 +67,34 @@ void do_fixup_by_compat(void *fdt, const char *compat, const char *prop, const void *val, int len, int create); void do_fixup_by_compat_u32(void *fdt, const char *compat, const char *prop, u32 val, int create); +/** + * Setup the memory node in the DT. Creates one if none was existing before. + * Calls fdt_fixup_memory_banks() to populate a single reg pair covering the + * whole memory. + * + * @param blob FDT blob to update + * @param start Begin of DRAM mapping in physical memory + * @param size Size of the single memory bank + * @return 0 if ok, or -1 or -FDT_ERR_... on error + */ int fdt_fixup_memory(void *blob, u64 start, u64 size); + +/** + * Fill the DT memory node with multiple memory banks. + * Creates the node if none was existing before. + * If banks is 0, it will not touch the existing reg property. This allows + * boards to not mess with the existing DT setup, which may have been + * filled in properly before. + * + * @param blob FDT blob to update + * @param start Array of size <banks> to hold the start addresses. + * @param size Array of size <banks> to hold the size of each region. + * @param banks Number of memory banks to create. If 0, the reg + * property will be left untouched. + * @return 0 if ok, or -1 or -FDT_ERR_... on error + */ int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks); + void fdt_fixup_ethernet(void *fdt); int fdt_find_and_setprop(void *fdt, const char *node, const char *prop, const void *val, int len, int create); diff --git a/include/libfdt.h b/include/libfdt.h index f3cbb637be..421d64fd8b 100644 --- a/include/libfdt.h +++ b/include/libfdt.h @@ -915,7 +915,7 @@ int fdt_get_string_index(const void *fdt, int node, const char *property, int index, const char **output); /** - * fdt_get_string() - obtain the string at a given index in a string list + * fdt_get_string() - obtain the first string in a string list * @fdt: pointer to the device tree blob * @node: offset of the node * @property: name of the property containing the string list |