diff options
-rw-r--r-- | include/fdtdec.h | 11 | ||||
-rw-r--r-- | lib/fdtdec.c | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/include/fdtdec.h b/include/fdtdec.h index 11a7b86007..967fa88f9e 100644 --- a/include/fdtdec.h +++ b/include/fdtdec.h @@ -389,6 +389,17 @@ s32 fdtdec_get_int(const void *blob, int node, const char *prop_name, s32 default_val); /** + * Get a variable-sized number from a property + * + * This reads a number from one or more cells. + * + * @param ptr Pointer to property + * @param cells Number of cells containing the number + * @return the value in the cells + */ +u64 fdtdec_get_number(const fdt32_t *ptr, unsigned int cells); + +/** * Look up a 64-bit integer property in a node and return it. The property * must have at least 8 bytes of data (2 cells). The first two cells are * concatenated to form a 8 bytes value, where the first cell is top half and diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 1a0268a3f9..915fe2444a 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -918,7 +918,7 @@ int fdtdec_read_fmap_entry(const void *blob, int node, const char *name, return 0; } -static u64 fdtdec_get_number(const fdt32_t *ptr, unsigned int cells) +u64 fdtdec_get_number(const fdt32_t *ptr, unsigned int cells) { u64 number = 0; |