| NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | VERSIONS | CONFORMING TO | NOTES | SEE ALSO | COLOPHON |  | 
S390_PCI_MMIO_WRITE(2)       System Calls Manual      S390_PCI_MMIO_WRITE(2)
       s390_pci_mmio_write,  s390_pci_mmio_read  - transfer data to/from PCI
       MMIO memory page
       #include <asm/unistd.h>
       int s390_pci_mmio_write(unsigned long mmio_addr,
                               void *user_buffer, size_t length);
       int s390_pci_mmio_read(unsigned long mmio_addr,
                               void *user_buffer, size_t length);
       The s390_pci_mmio_write() system call writes length bytes of data
       from the user-space buffer user_buffer to the PCI MMIO memory
       location specified by mmio_addr.  The s390_pci_mmio_read() system
       call reads length bytes of data from the PCI MMIO memory location
       specified by mmio_addr to the user-space buffer user_buffer.
       These system calls must be used instead of the simple assignment or
       data-transfer operations that are used to access the PCI MMIO memory
       areas mapped to user space on the Linux System z platform.  The
       address specified by mmio_addr must belong to a PCI MMIO memory page
       mapping in the caller's address space, and the data being written or
       read must not cross a page boundary.  The length value cannot be
       greater than the system page size.
       On success, s390_pci_mmio_write() and s390_pci_mmio_read() return 0.
       On error, -1 is returned and errno is set to one of the error codes
       listed below.
       EFAULT The address in mmio_addr is invalid.
       EFAULT user_buffer does not point to a valid location in the caller's
              address space.
       EINVAL Invalid length argument.
       ENODEV PCI support is not enabled.
       ENOMEM Insufficient memory.
       These system calls are available since Linux 3.19.
       This Linux-specific system call is available only on the s390
       architecture.  The required PCI support is available beginning with
       System z EC12.
       Glibc does not provide a wrapper for this system call, use syscall(2)
       to call it.
       syscall(2)
       This page is part of release 4.15 of the Linux man-pages project.  A
       description of the project, information about reporting bugs, and the
       latest version of this page, can be found at
       https://www.kernel.org/doc/man-pages/.
Linux Programmer's Manual        2017-09-15           S390_PCI_MMIO_WRITE(2)
Pages that refer to this page: syscalls(2)
Copyright and license for this manual page