3 * Copyright (c) 2001, David H. Hovemeyer <daveho@cs.umd.edu>
6 * This is free software. You are permitted to use,
7 * redistribute, and modify it as specified in the file "COPYING".
10 #include <geekos/io.h>
13 * Write a byte to an I/O port.
15 void Out_Byte(ushort_t port, uchar_t value)
17 __asm__ __volatile__ (
20 : "a" (value), "Nd" (port)
24 extern uchar_t InByteLL(ushort_t port);
27 * Read a byte from an I/O port.
29 uchar_t In_Byte(ushort_t port)
34 __asm__ __volatile__ (
43 return InByteLL(port);
47 * Write a word to an I/O port.
49 void Out_Word(ushort_t port, ushort_t value)
51 __asm__ __volatile__ (
54 : "a" (value), "Nd" (port)
59 * Read a byte from an I/O port.
61 ushort_t In_Word(ushort_t port)
65 __asm__ __volatile__ (
75 * Short delay. May be needed when talking to some
81 __asm__ __volatile__ (