/* @np: device node from which the property value is to be read. @propname: name of the property to be searched. @len: requested length of property value */
static void* dtb_node_find_property_value_of_size(const struct dtb_node *dn, const char *propname, uint32_t len)
/* @np: device node from which the property value is to be read. @propname: name of the property to be searched. @len: requested length of property value */
static void* dtb_node_find_property_value_of_size(const struct dtb_node *dn, const char *propname, uint32_t len)
{
    struct dtb_property *prop = dtb_node_get_dtb_node_property(dn, propname, NULL);
    if (!prop)
        return ERR_PTR(-EINVAL);
    if (!prop->value)
        return ERR_PTR(-ENODATA);
    if (len > prop->size)
        return ERR_PTR(-EOVERFLOW);
    return prop->value;
}