]>
git.saurik.com Git - apple/boot.git/blob - i386/libsaio/io_inline.h
00c1e3794d9b2eb1a4857c1cd21294e83d25ac37
2 * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
8 * This file contains Original Code and/or Modifications of Original Code
9 * as defined in and that are subject to the Apple Public Source License
10 * Version 2.0 (the 'License'). You may not use this file except in
11 * compliance with the License. Please obtain a copy of the License at
12 * http://www.opensource.apple.com/apsl/ and read it before using this
15 * The Original Code and all software distributed under the License are
16 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
17 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
18 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
20 * Please see the License for the specific language governing rights and
21 * limitations under the License.
23 * @APPLE_LICENSE_HEADER_END@
26 * Copyright (c) 1992 NeXT Computer, Inc.
28 * Inlines for io space access.
32 * 20 May 1992 ? at NeXT
36 #ifndef __LIBSAIO_IO_INLINE_H
37 #define __LIBSAIO_IO_INLINE_H
40 *############################################################################
42 * x86 IN/OUT I/O inline functions.
47 * OUT: outb, outw, outl
50 *############################################################################
54 static inline unsigned u \
55 in##s(unsigned short port) \
67 out##s(unsigned short port, unsigned u data) \
72 : "d" (port), "a" (data)); \
75 __IN(b
, char) /* inb() */
76 __IN(w
, short) /* inw() */
77 __IN(l
, long) /* inl() */
79 __OUT(b
, char) /* outb() */
80 __OUT(w
, short) /* outw() */
81 __OUT(l
, long) /* outl() */
83 #endif /* !__LIBSAIO_IO_INLINE_H */