S390_PCI_MMIO_WRITE - Linux手册页
时间:2019-08-20 17:59:17 来源:igfitidea点击:
Section: System Calls (2)
更新日期: 2017-09-15
名称
s390_pci_mmio_write,s390_pci_mmio_read-与PCI MMIO内存页面之间的数据传输
语法
#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);
说明
s390_pci_mmio_write()系统调用将长度字节的数据从用户空间缓冲区user_buffer写入mmio_addr指定的PCI MMIO内存位置。 s390_pci_mmio_read()系统调用将mmio_addr指定的PCI MMIO内存位置的数据长度字节读取到用户空间缓冲区user_buffer。
必须使用这些系统调用来代替用于访问映射到Linux System z平台上用户空间的PCI MMIO内存区域的简单分配或数据传输操作。 mmio_addr指定的地址必须属于调用者的地址空间中的PCI MMIO内存页面映射,并且正在写入或读取的数据不得跨越页面边界。长度值不能大于系统页面大小。
返回值
成功时,s390_pci_mmio_write()和s390_pci_mmio_read()返回0。错误时,返回-1并将errno设置为下面列出的错误代码之一。
错误说明
- EFAULT
- mmio_addr中的地址无效。
- EFAULT
- user_buffer没有指向调用者的地址空间中的有效位置。
- EINVAL
- 长度参数无效。
- ENODEV
- 未启用PCI支持。
- ENOMEM
- 内存不足。
版本
这些系统调用自Linux 3.19起可用。
遵循规范
此特定于Linux的系统调用仅在s390体系结构上可用。从System z EC12开始可提供所需的PCI支持。
备注
Glibc不为此系统调用提供包装,请使用syscall(2)对其进行调用。
另外参见
系统调用(2)
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。