Lines Matching +full:string +full:- +full:array +full:- +full:property

7 #include <linux/string.h>
24 while (na--) in of_dump_addr()
73 return da - cp; in of_bus_default_map()
82 addr[na - 2] = cpu_to_be32(a >> 32); in of_bus_default_translate()
83 addr[na - 1] = cpu_to_be32(a & 0xffffffffu); in of_bus_default_translate()
100 /* "vci" is for the /chaos bridge on 1st-gen PCI powermacs */ in of_bus_pci_match()
101 return !strcmp(np->type, "pci") || !strcmp(np->type, "vci"); in of_bus_pci_match()
146 cp = of_read_number(range + 1, na - 1); in of_bus_pci_map()
148 da = of_read_number(addr + 1, na - 1); in of_bus_pci_map()
156 return da - cp; in of_bus_pci_map()
161 return of_bus_default_translate(addr + 1, offset, na - 1); in of_bus_pci_translate()
178 if (strcmp(bus->name, "pci")) { in of_get_pci_address()
182 bus->count_cells(dev, &na, &ns); in of_get_pci_address()
187 /* Get "reg" or "assigned-addresses" property */ in of_get_pci_address()
188 prop = of_get_property(dev, bus->addresses, &psize); in of_get_pci_address()
194 for (i = 0; psize >= onesize; psize -= onesize, prop += onesize, i++) { in of_get_pci_address()
200 *flags = bus->get_flags(prop); in of_get_pci_address()
217 return -EINVAL; in of_pci_address_to_resource()
229 return !strcmp(np->name, "isa"); in of_bus_isa_match()
251 cp = of_read_number(range + 1, na - 1); in of_bus_isa_map()
253 da = of_read_number(addr + 1, na - 1); in of_bus_isa_map()
261 return da - cp; in of_bus_isa_map()
266 return of_bus_default_translate(addr + 1, offset, na - 1); in of_bus_isa_translate()
282 * Array of bus specific translators
290 .addresses = "assigned-addresses",
340 /* Normally, an absence of a "ranges" property means we are in of_translate_one()
341 * crossing a non-translatable boundary, and thus the addresses in of_translate_one()
344 * what Apple understood, and they do have things like /uni-n or in of_translate_one()
345 * /ht nodes with no "ranges" property and a lot of perfectly in of_translate_one()
347 * "ranges" as equivalent to an empty "ranges" property which means in of_translate_one()
350 * the first place. --BenH. in of_translate_one()
353 * This code is only enabled on powerpc. --gcl in of_translate_one()
374 for (; rlen >= rone; rlen -= rone, ranges += rone) { in of_translate_one()
375 offset = bus->map(addr, ranges, na, ns, pna); in of_translate_one()
390 return pbus->translate(addr, offset, pna); in of_translate_one()
394 * Translate an address from the device-tree into a CPU physical address,
398 * Note: We consider that crossing any level with #size-cells == 0 to mean
412 pr_debug("OF: ** translation for device %s **\n", dev->full_name); in __of_translate_address()
424 bus->count_cells(dev, &na, &ns); in __of_translate_address()
427 dev->full_name); in __of_translate_address()
433 bus->name, na, ns, parent->full_name); in __of_translate_address()
452 pbus->count_cells(dev, &pna, &pns); in __of_translate_address()
455 dev->full_name); in __of_translate_address()
460 pbus->name, pna, pns, parent->full_name); in __of_translate_address()
488 return __of_translate_address(dev, in_addr, "dma-ranges"); in of_translate_dma_address()
506 bus->count_cells(dev, &na, &ns); in of_get_address()
511 /* Get "reg" or "assigned-addresses" property */ in of_get_address()
512 prop = of_get_property(dev, bus->addresses, &psize); in of_get_address()
518 for (i = 0; psize >= onesize; psize -= onesize, prop += onesize, i++) in of_get_address()
523 *flags = bus->get_flags(prop); in of_get_address()
537 return -EINVAL; in __of_address_to_resource()
540 return -EINVAL; in __of_address_to_resource()
545 if (port == (unsigned long)-1) in __of_address_to_resource()
546 return -EINVAL; in __of_address_to_resource()
547 r->start = port; in __of_address_to_resource()
548 r->end = port + size - 1; in __of_address_to_resource()
550 r->start = taddr; in __of_address_to_resource()
551 r->end = taddr + size - 1; in __of_address_to_resource()
553 r->flags = flags; in __of_address_to_resource()
554 r->name = name ? name : dev->full_name; in __of_address_to_resource()
560 * of_address_to_resource - Translate device tree address and return as resource
577 return -EINVAL; in of_address_to_resource()
579 /* Get optional "reg-names" property to add a name to a resource */ in of_address_to_resource()
580 of_property_read_string_index(dev, "reg-names", index, &name); in of_address_to_resource()
606 * of_iomap - Maps the memory mapped IO for a given device_node