RTEMS: I/O

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Files | Macros
I/O
Board Support Packages » i386 » Comm

I/O. More...

## Files
file | i386_io.h
| I/O.

## Macros
#define | rtems_inb(port)
#define | rtems_inw(port)
#define | rtems_outb(port, data) __asm__ volatile ("outb %%al,%%dx" : : "a" (data), "d" (port))
#define | rtems_outw(port, data) __asm__ volatile ("outw %%ax,%%dx" : : "a" (data), "d" (port))
#define | outp(port, val) rtems_outb(port,val)
#define | inp(port) rtems_inb(port)
#define | outb(val, port) rtems_outb(port,val)
#define | inb(port) rtems_inb(port)
#define | outb_p(val, port) rtems_outb(port,val)
#define | inb_p(port) rtems_inb(port)
#define | outportb(port, val) rtems_outb(port,val)
#define | inportb(port) rtems_inb(port)
#define | outw(val, port) rtems_outw(port,val)
#define | inw(port) rtems_inw(port)
#define | cli() __asm__ __volatile__("cli")
#define | sti() __asm__ __volatile__("sti");

## Detailed Description

I/O.

## Macro Definition Documentation

## ◆ rtems_inb

#define rtems_inb | ( |  | port | ) |

Value:
({ \
register int _inb_result; \
\
__asm__ volatile ("xorl %%eax,%%eax; inb %%dx,%%al" : \
"=a" (_inb_result) : "d" (port)); \
_inb_result; \
})

## ◆ rtems_inw

#define rtems_inw | ( |  | port | ) |

Value:
({ \
register int _inbw_result; \
\
__asm__ volatile ("xorl %%eax,%%eax; inw %%dx,%%ax" : \
"=a" (_inbw_result) : "d" (port)); \
_inbw_result; \
})