Lines Matching refs:rp

52 	struct regspec tmp_reg, *rp;  in i_ddi_bus_map()  local
70 rp = i_ddi_rnumber_to_regspec(rdip, rnumber); in i_ddi_bus_map()
71 if (rp == (struct regspec *)0) { in i_ddi_bus_map()
84 mp->map_obj.rp = rp; in i_ddi_bus_map()
93 tmp_reg = *(mp->map_obj.rp); /* Preserve underlying data */ in i_ddi_bus_map()
94 rp = mp->map_obj.rp = &tmp_reg; /* Use tmp_reg in request */ in i_ddi_bus_map()
101 rp->regspec_bustype, rp->regspec_addr, rp->regspec_size, in i_ddi_bus_map()
113 if (rp->regspec_bustype > 1 && rp->regspec_addr != 0) { in i_ddi_bus_map()
116 ddi_get_name(rdip), rp->regspec_bustype, in i_ddi_bus_map()
117 rp->regspec_addr, rp->regspec_size); in i_ddi_bus_map()
121 if (rp->regspec_bustype > 1 && rp->regspec_addr == 0) { in i_ddi_bus_map()
125 rp->regspec_bustype += (uint_t)offset; in i_ddi_bus_map()
130 rp->regspec_addr += (uint_t)offset; in i_ddi_bus_map()
134 rp->regspec_size = (uint_t)len; in i_ddi_bus_map()
141 rp->regspec_bustype, rp->regspec_addr, rp->regspec_size, in i_ddi_bus_map()
164 if ((error = i_ddi_apply_range(dip, rdip, mp->map_obj.rp)) != 0) in i_ddi_bus_map()
192 reg_is_enclosed_in_range(struct regspec *rp, struct rangespec *rangep) in reg_is_enclosed_in_range() argument
194 if (rp->regspec_bustype != rangep->rng_cbustype) in reg_is_enclosed_in_range()
197 if (rp->regspec_addr < rangep->rng_coffset) in reg_is_enclosed_in_range()
203 if ((rp->regspec_addr + rp->regspec_size - 1) <= in reg_is_enclosed_in_range()
217 i_ddi_apply_range(dev_info_t *dp, dev_info_t *rdip, struct regspec *rp) in i_ddi_apply_range() argument
239 if (reg_is_enclosed_in_range(rp, rangep)) in i_ddi_apply_range()
248 ddi_map_debug(" Input: %x.%x.%x\n", rp->regspec_bustype, in i_ddi_apply_range()
249 rp->regspec_addr, rp->regspec_size); in i_ddi_apply_range()
255 rp->regspec_bustype = rangep->rng_bustype; in i_ddi_apply_range()
256 rp->regspec_addr += rangep->rng_offset - rangep->rng_coffset; in i_ddi_apply_range()
259 ddi_map_debug(" Return: %x.%x.%x\n", rp->regspec_bustype, in i_ddi_apply_range()
260 rp->regspec_addr, rp->regspec_size); in i_ddi_apply_range()