Lines Matching full:pio
9 #define pr_fmt(fmt) "LOGIC PIO: " fmt
27 * logic_pio_register_range - register logical PIO range for a host
104 * logic_pio_unregister_range - unregister a logical PIO range for a host
118 * find_io_range_by_fwnode - find logical PIO range for given FW node
119 * @fwnode: FW node handle associated with logical PIO range
141 /* Return a registered range given an input PIO token */
142 static struct logic_pio_hwaddr *find_io_range(unsigned long pio) in find_io_range() argument
148 if (in_range(pio, range->io_start, range->size)) { in find_io_range()
156 pr_err("PIO entry token 0x%lx invalid\n", pio); in find_io_range()
162 * logic_pio_to_hwaddr - translate logical PIO to HW address
163 * @pio: logical PIO value
167 * Translate the input logical PIO to the corresponding hardware address.
168 * The input PIO should be unique in the whole logical PIO space.
170 resource_size_t logic_pio_to_hwaddr(unsigned long pio) in logic_pio_to_hwaddr() argument
174 range = find_io_range(pio); in logic_pio_to_hwaddr()
176 return range->hw_start + pio - range->io_start; in logic_pio_to_hwaddr()
182 * logic_pio_trans_hwaddr - translate HW address to logical PIO
187 * Returns Logical PIO value if successful, ~0UL otherwise