Lines Matching refs:hdlp

70 #define	HANDLE_ADDR(hdlp)	(hdlp->ah_addr)
71 #define HANDLE_FAULT(hdlp) (hdlp->ah_fault)
72 #define HANDLE_MAPLEN(hdlp) (hdlp->ah_len)
73 #define HANDLE_PRIVATE(hdlp) (hdlp->ah_bus_private)
81 #define HANDLE_ADDR(hdlp) (hdlp->ahi_common.ah_addr)
82 #define HANDLE_FAULT(hdlp) (hdlp->ahi_fault)
83 #define HANDLE_MAPLEN(hdlp) (hdlp->ahi_common.ah_len)
84 #define HANDLE_PRIVATE(hdlp) (hdlp->ahi_common.ah_bus_private)
104 #define ADDR_TO_OFFSET(a, hdlp) ((caddr_t)(a) - HANDLE_ADDR(hdlp))
926 bscbus_cmd(HANDLE_TYPE *hdlp, ptrdiff_t vreg, uint_t val, uint_t cmd)
938 csp = HANDLE_PRIVATE(hdlp);
1041 HANDLE_FAULT(hdlp) = LOMBUS_ERR_SIOHW;
1049 HANDLE_FAULT(hdlp) = csp->error;
1051 HANDLE_FAULT(hdlp) = LOMBUS_ERR_BADERRCODE;
1070 bscbus_vreg_get8(HANDLE_TYPE *hdlp, uint8_t *addr)
1078 offset = ADDR_TO_OFFSET(addr, hdlp);
1079 if (offset < 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1083 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1090 return (bscbus_cmd(hdlp, ADDR_TO_VREG(addr), 0, BSCBUS_CMD_READ));
1094 bscbus_vreg_put8(HANDLE_TYPE *hdlp, uint8_t *addr, uint8_t val)
1102 offset = ADDR_TO_OFFSET(addr, hdlp);
1103 if (offset < 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1107 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1114 (void) bscbus_cmd(hdlp, ADDR_TO_VREG(addr), val, BSCBUS_CMD_WRITE);
1118 bscbus_vreg_rep_get8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1125 *host_addr++ = bscbus_vreg_get8(hdlp, dev_addr);
1129 bscbus_vreg_rep_put8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1136 bscbus_vreg_put8(hdlp, dev_addr, *host_addr++);
1156 bscbus_pat_get8(HANDLE_TYPE *hdlp, uint8_t *addr)
1164 offset = ADDR_TO_OFFSET(addr, hdlp);
1165 if (offset < 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1169 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1177 bscbus_pat_put8(HANDLE_TYPE *hdlp, uint8_t *addr, uint8_t val)
1186 offset = ADDR_TO_OFFSET(addr, hdlp);
1187 if (offset < 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1191 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1195 csp = HANDLE_PRIVATE(hdlp);
1202 bscbus_pat_rep_get8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1209 *host_addr++ = bscbus_pat_get8(hdlp, dev_addr);
1213 bscbus_pat_rep_put8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1220 bscbus_pat_put8(hdlp, dev_addr, *host_addr++);
1229 bscbus_event_get16(HANDLE_TYPE *hdlp, uint16_t *addr)
1238 offset = ADDR_TO_OFFSET(addr, hdlp);
1239 if (offset < 0 || (offset%2) != 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1243 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1251 csp = HANDLE_PRIVATE(hdlp);
1256 bscbus_event_put16(HANDLE_TYPE *hdlp, uint16_t *addr, uint16_t val)
1266 offset = ADDR_TO_OFFSET(addr, hdlp);
1267 if (offset < 0 || (offset%2) != 0 || offset >= HANDLE_MAPLEN(hdlp)) {
1271 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_NUM;
1278 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_RO;
1282 bscbus_event_rep_get16(HANDLE_TYPE *hdlp, uint16_t *host_addr,
1289 *host_addr++ = bscbus_event_get16(hdlp, dev_addr);
1293 bscbus_event_rep_put16(HANDLE_TYPE *hdlp, uint16_t *host_addr,
1300 bscbus_event_put16(hdlp, dev_addr, *host_addr++);
1309 bscbus_meta_get32(HANDLE_TYPE *hdlp, uint32_t *addr)
1319 offset = ADDR_TO_OFFSET(addr, hdlp);
1326 return (HANDLE_FAULT(hdlp));
1334 HANDLE_FAULT(hdlp) = 0;
1335 (void) bscbus_cmd(hdlp, 0, 0, BSCBUS_CMD_NOP);
1336 return (HANDLE_FAULT(hdlp));
1349 csp = HANDLE_PRIVATE(hdlp);
1356 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1362 bscbus_meta_put32(HANDLE_TYPE *hdlp, uint32_t *addr, uint32_t val)
1371 offset = ADDR_TO_OFFSET(addr, hdlp);
1379 HANDLE_FAULT(hdlp) = val;
1389 HANDLE_FAULT(hdlp) = 0;
1390 (void) bscbus_cmd(hdlp, 0, 0, BSCBUS_CMD_NOP);
1397 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1403 bscbus_meta_rep_get32(HANDLE_TYPE *hdlp, uint32_t *host_addr,
1410 *host_addr++ = bscbus_meta_get32(hdlp, dev_addr);
1414 bscbus_meta_rep_put32(HANDLE_TYPE *hdlp, uint32_t *host_addr,
1421 bscbus_meta_put32(hdlp, dev_addr, *host_addr++);
1430 bscbus_no_get8(HANDLE_TYPE *hdlp, uint8_t *addr)
1437 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1442 bscbus_no_put8(HANDLE_TYPE *hdlp, uint8_t *addr, uint8_t val)
1449 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1453 bscbus_no_rep_get8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1461 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1465 bscbus_no_rep_put8(HANDLE_TYPE *hdlp, uint8_t *host_addr,
1473 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1477 bscbus_no_get16(HANDLE_TYPE *hdlp, uint16_t *addr)
1484 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1489 bscbus_no_put16(HANDLE_TYPE *hdlp, uint16_t *addr, uint16_t val)
1496 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1500 bscbus_no_rep_get16(HANDLE_TYPE *hdlp, uint16_t *host_addr,
1508 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1512 bscbus_no_rep_put16(HANDLE_TYPE *hdlp, uint16_t *host_addr,
1520 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1524 bscbus_no_get64(HANDLE_TYPE *hdlp, uint64_t *addr)
1531 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1536 bscbus_no_put64(HANDLE_TYPE *hdlp, uint64_t *addr, uint64_t val)
1543 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1547 bscbus_no_rep_get64(HANDLE_TYPE *hdlp, uint64_t *host_addr,
1555 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1559 bscbus_no_rep_put64(HANDLE_TYPE *hdlp, uint64_t *host_addr,
1567 HANDLE_FAULT(hdlp) = LOMBUS_ERR_REG_SIZE;
1571 bscbus_acc_fault_check(HANDLE_TYPE *hdlp)
1573 return (HANDLE_FAULT(hdlp) != 0);
1983 ndi_acc_handle_t *hdlp, caddr_t *addrp)
2000 ndi_set_acc_fns(hdlp, &bscbus_vreg_acc_fns);
2004 ndi_set_acc_fns(hdlp, &bscbus_pat_acc_fns);
2008 ndi_set_acc_fns(hdlp, &bscbus_event_acc_fns);
2011 hdlp->ah_addr = *addrp = vaddr;
2012 hdlp->ah_len = len;
2013 hdlp->ah_bus_private = csp;
2018 hdlp->ah_bus_private = NULL;
2029 ddi_acc_hdl_t *hdlp, caddr_t *addrp)
2031 ddi_acc_impl_t *aip = hdlp->ah_platform_private;
2119 hdlp->ah_addr = *addrp = vaddr;
2120 hdlp->ah_len = len;
2121 hdlp->ah_bus_private = csp;
2126 hdlp->ah_bus_private = NULL;
2322 ddi_intr_handle_impl_t *hdlp, void *result)
2325 return (i_ddi_intr_ops(dip, rdip, op, hdlp, result));
2327 _NOTE(ARGUNUSED(dip, rdip, op, hdlp, result))