fdt_addr_t fdtdec_get_addr_size_auto_parent(const void *blob, int parent, int node, const char *prop_name, int index, fdt_size_t *sizep, bool translate) { int na, ns; debug("%s: ", __func__); na = fdt_address_cells(blob, parent); if (na < 1) { debug("(bad #address-cells)\n"); return FDT_ADDR_T_NONE; } ns = fdt_size_cells(blob, parent); if (ns < 0) { debug("(bad #size-cells)\n"); return FDT_ADDR_T_NONE; } debug("na=%d, ns=%d, ", na, ns); return fdtdec_get_addr_size_fixed(blob, node, prop_name, index, na, ns, sizep, translate); }
fdt_addr_t fdtdec_get_addr_size(const void *blob, int node, const char *prop_name, fdt_size_t *sizep) { int ns = sizep ? (sizeof(fdt_size_t) / sizeof(fdt32_t)) : 0; return fdtdec_get_addr_size_fixed(blob, node, prop_name, 0, sizeof(fdt_addr_t) / sizeof(fdt32_t), ns, sizep); }