|
RTEMS
5.1
|
Go to the documentation of this file. 29 #define rtems_inb(port) \ 31 register int _inb_result; \ 33 __asm__ volatile ("xorl %%eax,%%eax; inb %%dx,%%al" : \ 34 "=a" (_inb_result) : "d" (port)); \ 38 #define rtems_inw(port) \ 40 register int _inbw_result; \ 42 __asm__ volatile ("xorl %%eax,%%eax; inw %%dx,%%ax" : \ 43 "=a" (_inbw_result) : "d" (port)); \ 47 #define rtems_outb(port, data) \ 48 __asm__ volatile ("outb %%al,%%dx" : : "a" (data), "d" (port)) 50 #define rtems_outw(port, data) \ 51 __asm__ volatile ("outw %%ax,%%dx" : : "a" (data), "d" (port)) 53 #define outp(port, val) rtems_outb(port,val) 54 #define inp(port) rtems_inb(port) 56 #define outb(val, port) rtems_outb(port,val) 57 #define inb(port) rtems_inb(port) 59 #define outb_p(val, port) rtems_outb(port,val) 60 #define inb_p(port) rtems_inb(port) 62 #define outportb(port,val) rtems_outb(port,val) 63 #define inportb(port) rtems_inb(port) 65 #define outw(val, port) rtems_outw(port,val) 66 #define inw(port) rtems_inw(port) 68 #define cli() __asm__ __volatile__("cli") 69 #define sti() __asm__ __volatile__("sti");