Lines Matching defs:uio
41 #include <sys/uio.h>
121 mm_logkmem(struct uio *uio)
133 ent->mle_vaddr = (uintptr_t)uio->uio_loffset;
134 ent->mle_len = uio->uio_resid;
281 mmio(struct uio *uio, enum uio_rw rw, pfn_t pfn, off_t pageoff, int allowio,
288 (size_t)uio->uio_iov->iov_len);
310 size_t c = uio->uio_iov->iov_len;
312 if (ddi_peekpokeio(NULL, uio, rw,
313 (caddr_t)(uintptr_t)uio->uio_loffset, c,
319 error = uiomove(va + pageoff, nbytes, rw, uio);
358 mmrw(dev_t dev, struct uio *uio, enum uio_rw rw, cred_t *cred)
364 ssize_t oresid = uio->uio_resid;
367 while (uio->uio_resid > 0 && error == 0) {
368 iov = uio->uio_iov;
370 uio->uio_iov++;
371 uio->uio_iovcnt--;
372 if (uio->uio_iovcnt < 0)
381 (uint64_t)uio->uio_loffset, 1)) {
388 v = BTOP((u_offset_t)uio->uio_loffset);
389 error = mmio(uio, rw, v,
390 uio->uio_loffset & PAGEOFFSET, 0, NULL);
397 caddr_t vaddr = (caddr_t)uio->uio_offset;
401 if ((error = plat_mem_do_mmio(uio, rw)) != ENOTSUP)
405 mm_logkmem(uio);
422 (caddr_t)(uintptr_t)uio->uio_loffset);
431 error = mmio(uio, rw, v, uio->uio_loffset & PAGEOFFSET,
452 uio->uio_resid -= iov->iov_len;
453 uio->uio_loffset += iov->iov_len;
465 uio->uio_loffset += c;
466 uio->uio_resid -= c;
471 return (uio->uio_resid == oresid ? error : 0);
475 mmread(dev_t dev, struct uio *uio, cred_t *cred)
477 return (mmrw(dev, uio, UIO_READ, cred));
481 mmwrite(dev_t dev, struct uio *uio, cred_t *cred)
483 return (mmrw(dev, uio, UIO_WRITE, cred));