Lines Matching defs:ranges

445 	const __be32 *ranges;
451 * Normally, an absence of a "ranges" property means we are
456 * /ht nodes with no "ranges" property and a lot of perfectly
458 * "ranges" as equivalent to an empty "ranges" property which means
466 * This quirk also applies for 'dma-ranges' which frequently exist in
467 * child nodes without 'dma-ranges' in the parent nodes. --RobH
469 ranges = of_get_property(parent, rprop, &rlen);
470 if (ranges == NULL && !of_empty_ranges_quirk(parent) &&
471 strcmp(rprop, "dma-ranges")) {
472 pr_debug("no ranges; cannot translate\n");
475 if (ranges == NULL || rlen == 0) {
478 pr_debug("empty ranges; 1:1 translation\n");
482 pr_debug("walking ranges...\n");
484 /* Now walk through the ranges */
487 for (; rlen >= rone; rlen -= rone, ranges += rone) {
488 offset = bus->map(addr, ranges, na, ns, pna);
496 memcpy(addr, ranges + na, 4 * pna);
572 * For indirectIO device which has no ranges property, get
619 in_addr, "ranges", &host);
663 in_addr, "dma-ranges", &host);
721 parser->dma = !strcmp(name, "dma-ranges");
736 return parser_init(parser, node, "ranges");
743 return parser_init(parser, node, "dma-ranges");
817 in_addr, "ranges", &host);
947 * Look in bottom up direction for the first "dma-ranges" property
950 * dma-ranges format:
955 * It returns -ENODEV if "dma-ranges" property was not found for this
961 const __be32 *ranges = NULL;
970 ranges = of_get_property(node, "dma-ranges", &len);
972 /* Ignore empty ranges, they imply no translation required */
973 if (ranges && len > 0)
976 /* Once we find 'dma-ranges', then a missing one is an error */
977 if (found_dma_ranges && !ranges) {
986 if (!node || !ranges) {
987 pr_debug("no dma-ranges found for node(%pOF)\n", np);
1014 * Record all info in the generic DMA ranges array for struct device,
1015 * returning an error if we don't find any parsable ranges.
1051 const __be32 *ranges;
1058 ranges = of_get_property(np, "dma-ranges", &len);
1059 if (ranges && len) {