i386-io-sunos.h

来自「linux下的pci设备浏览工具」· C头文件 代码 · 共 67 行

H
67
字号
/* *	The PCI Library -- Access to i386 I/O ports on Solaris * *	Copyright (c) 2003 Bill Moore <billm@eng.sun.com> *	Copyright (c) 2003--2006 Martin Mares <mj@ucw.cz> * *	Can be freely distributed and used under the terms of the GNU GPL. */#include <sys/sysi86.h>#include <sys/psw.h>static intintel_setup_io(struct pci_access *a UNUSED){  return (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) < 0) ? 0 : 1;}static inline intintel_cleanup_io(struct pci_access *a UNUSED){  /* FIXME: How to switch off I/O port access? */  return 1;}static inline u8inb (u16 port){  u8 v;  __asm__ __volatile__ ("inb (%w1)":"=a" (v):"Nd" (port));  return v;}static inline u16inw (u16 port){  u16 v;  __asm__ __volatile__ ("inw (%w1)":"=a" (v):"Nd" (port));  return v;}static inline u32inl (u16 port){  u32 v;  __asm__ __volatile__ ("inl (%w1)":"=a" (v):"Nd" (port));  return v;}static inline voidoutb (u8 value, u16 port){  __asm__ __volatile__ ("outb (%w1)": :"a" (value), "Nd" (port));}static inline voidoutw (u16 value, u16 port){  __asm__ __volatile__ ("outw (%w1)": :"a" (value), "Nd" (port));}static inline voidoutl (u32 value, u16 port){  __asm__ __volatile__ ("outl (%w1)": :"a" (value), "Nd" (port));}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?