Lines Matching defs:xio
87 #include <dev/vme/xio.h>
943 struct xd_iocmd *xio;
1034 xio = (struct xd_iocmd *) addr;
1035 req = xy_getkauthreq(xio->cmd);
1037 dev, req, xio)) != 0)
1039 return (xyc_ioctlcmd(xy, dev, xio));
2132 xyc_ioctlcmd(struct xy_softc *xy, dev_t dev, struct xd_iocmd *xio)
2142 switch (xio->cmd) {
2145 if (xio->subfn || xio->dptr || xio->dlen ||
2146 xio->block || xio->sectcnt)
2152 if (xio->subfn || xio->sectcnt > XD_IOCMD_MAXS ||
2153 xio->sectcnt * XYFM_BPS != xio->dlen || xio->dptr == NULL)
2169 if (xio->dlen) {
2174 xio->dlen, (void **)&buf,
2180 if (xio->cmd == XYCMD_WR) {
2181 if ((error = copyin(xio->dptr, buf, xio->dlen)) != 0) {
2182 bus_dmamem_unmap(xycsc->dmatag, buf, xio->dlen);
2192 rqno = xyc_cmd(xycsc, xio->cmd, xio->subfn, xy->xy_drive, xio->block,
2193 xio->sectcnt, dvmabuf, XY_SUB_WAIT);
2198 xio->errnum = xycsc->ciorq->errnum;
2199 xio->tries = xycsc->ciorq->tries;
2202 if (xio->cmd == XYCMD_RD)
2203 error = copyout(buf, xio->dptr, xio->dlen);
2209 xio->dlen, buf);