diff options
| author | Simon Glass <[email protected]> | 2023-09-26 08:14:45 -0600 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2023-10-06 14:38:13 -0400 |
| commit | 7071c82bdc55ed5d7955d8e1682b7c80af5659b5 (patch) | |
| tree | 24e8c3bd7ca4fe80759f30dd3ea37b8af512bee4 /drivers/core/ofnode.c | |
| parent | d9216c8683fced4cbf6d437b4357c9368bf1bf86 (diff) | |
dm: core: Support writing a 64-bit value
Add support for writing a single 64-bit value into a property.
Repurpose the existing tests to handle this case too.
Signed-off-by: Simon Glass <[email protected]>
Diffstat (limited to 'drivers/core/ofnode.c')
| -rw-r--r-- | drivers/core/ofnode.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c index 4dcb3dd1c03..18d2eb0f118 100644 --- a/drivers/core/ofnode.c +++ b/drivers/core/ofnode.c @@ -1621,7 +1621,22 @@ int ofnode_write_u32(ofnode node, const char *propname, u32 value) return -ENOMEM; *val = cpu_to_fdt32(value); - return ofnode_write_prop(node, propname, val, sizeof(value), false); + return ofnode_write_prop(node, propname, val, sizeof(value), true); +} + +int ofnode_write_u64(ofnode node, const char *propname, u64 value) +{ + fdt64_t *val; + + assert(ofnode_valid(node)); + + log_debug("%s = %llx", propname, (unsigned long long)value); + val = malloc(sizeof(*val)); + if (!val) + return -ENOMEM; + *val = cpu_to_fdt64(value); + + return ofnode_write_prop(node, propname, val, sizeof(value), true); } int ofnode_write_bool(ofnode node, const char *propname, bool value) |
