~ubuntu-branches/ubuntu/maverick/u-boot-omap3/maverick

« back to all changes in this revision

Viewing changes to drivers/bios_emulator/include/x86emu/x86emui.h

  • Committer: Bazaar Package Importer
  • Author(s): Oliver Grawert
  • Date: 2010-03-22 15:06:23 UTC
  • Revision ID: james.westby@ubuntu.com-20100322150623-i21g8rgiyl5dohag
Tags: upstream-2010.3git20100315
ImportĀ upstreamĀ versionĀ 2010.3git20100315

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/****************************************************************************
 
2
*
 
3
*                       Realmode X86 Emulator Library
 
4
*
 
5
*               Copyright (C) 1991-2004 SciTech Software, Inc.
 
6
*                    Copyright (C) David Mosberger-Tang
 
7
*                      Copyright (C) 1999 Egbert Eich
 
8
*
 
9
*  ========================================================================
 
10
*
 
11
*  Permission to use, copy, modify, distribute, and sell this software and
 
12
*  its documentation for any purpose is hereby granted without fee,
 
13
*  provided that the above copyright notice appear in all copies and that
 
14
*  both that copyright notice and this permission notice appear in
 
15
*  supporting documentation, and that the name of the authors not be used
 
16
*  in advertising or publicity pertaining to distribution of the software
 
17
*  without specific, written prior permission.  The authors makes no
 
18
*  representations about the suitability of this software for any purpose.
 
19
*  It is provided "as is" without express or implied warranty.
 
20
*
 
21
*  THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 
22
*  INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 
23
*  EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 
24
*  CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
 
25
*  USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
 
26
*  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 
27
*  PERFORMANCE OF THIS SOFTWARE.
 
28
*
 
29
*  ========================================================================
 
30
*
 
31
* Language:     ANSI C
 
32
* Environment:  Any
 
33
* Developer:    Kendall Bennett
 
34
*
 
35
* Description:  Header file for system specific functions. These functions
 
36
*               are always compiled and linked in the OS depedent libraries,
 
37
*               and never in a binary portable driver.
 
38
*
 
39
****************************************************************************/
 
40
 
 
41
#ifndef __X86EMU_X86EMUI_H
 
42
#define __X86EMU_X86EMUI_H
 
43
 
 
44
/* If we are compiling in C++ mode, we can compile some functions as
 
45
 * inline to increase performance (however the code size increases quite
 
46
 * dramatically in this case).
 
47
 */
 
48
 
 
49
#if defined(__cplusplus) && !defined(_NO_INLINE)
 
50
#define _INLINE inline
 
51
#else
 
52
#define _INLINE static
 
53
#endif
 
54
 
 
55
/* Get rid of unused parameters in C++ compilation mode */
 
56
 
 
57
#ifdef __cplusplus
 
58
#define X86EMU_UNUSED(v)
 
59
#else
 
60
#define X86EMU_UNUSED(v)    v
 
61
#endif
 
62
 
 
63
#include "x86emu.h"
 
64
#include "x86emu/regs.h"
 
65
#include "x86emu/debug.h"
 
66
#include "x86emu/decode.h"
 
67
#include "x86emu/ops.h"
 
68
#include "x86emu/prim_ops.h"
 
69
#ifndef __KERNEL__
 
70
#include <stdio.h>
 
71
#include <stdlib.h>
 
72
#include <string.h>
 
73
#endif
 
74
 
 
75
#define printk printf
 
76
 
 
77
 
 
78
/*--------------------------- Inline Functions ----------------------------*/
 
79
 
 
80
#ifdef  __cplusplus
 
81
extern "C" {                    /* Use "C" linkage when in C++ mode */
 
82
#endif
 
83
 
 
84
        extern u8(X86APIP sys_rdb) (u32 addr);
 
85
        extern u16(X86APIP sys_rdw) (u32 addr);
 
86
        extern u32(X86APIP sys_rdl) (u32 addr);
 
87
        extern void (X86APIP sys_wrb) (u32 addr, u8 val);
 
88
        extern void (X86APIP sys_wrw) (u32 addr, u16 val);
 
89
        extern void (X86APIP sys_wrl) (u32 addr, u32 val);
 
90
 
 
91
        extern u8(X86APIP sys_inb) (X86EMU_pioAddr addr);
 
92
        extern u16(X86APIP sys_inw) (X86EMU_pioAddr addr);
 
93
        extern u32(X86APIP sys_inl) (X86EMU_pioAddr addr);
 
94
        extern void (X86APIP sys_outb) (X86EMU_pioAddr addr, u8 val);
 
95
        extern void (X86APIP sys_outw) (X86EMU_pioAddr addr, u16 val);
 
96
        extern void (X86APIP sys_outl) (X86EMU_pioAddr addr, u32 val);
 
97
 
 
98
#ifdef  __cplusplus
 
99
}                               /* End of "C" linkage for C++       */
 
100
#endif
 
101
#endif                          /* __X86EMU_X86EMUI_H */