mirror of
https://gitlab.com/qemu-project/openbios.git
synced 2024-02-13 08:34:06 +08:00
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@688 f158a5a8-5612-0410-a976-696ce0be7e32
32 lines
822 B
C
32 lines
822 B
C
|
|
#ifndef __PLUGINS_H
|
|
#define __PLUGINS_H
|
|
|
|
#include "asm/types.h"
|
|
|
|
struct io_ops {
|
|
u8 (*inb)(u32 reg);
|
|
u16 (*inw)(u32 reg);
|
|
u32 (*inl)(u32 reg);
|
|
void (*outb)(u32 reg, u8 val);
|
|
void (*outw)(u32 reg, u16 val);
|
|
void (*outl)(u32 reg, u32 val);
|
|
};
|
|
typedef struct io_ops io_ops_t;
|
|
|
|
extern unsigned char *plugindir;
|
|
|
|
#define PLUGIN_DEPENDENCIES(x...) const char *plugin_deps[]={ x, NULL };
|
|
#define PLUGIN_AUTHOR(author) const char *plugin_author=author;
|
|
#define PLUGIN_LICENSE(license) const char *plugin_license=license;
|
|
#define PLUGIN_DESCRIPTION(desc) const char *plugin_description=desc;
|
|
|
|
int register_iorange(const char *name, io_ops_t *ops,
|
|
unsigned int rstart, unsigned int rend);
|
|
io_ops_t *find_iorange(u32 reg);
|
|
|
|
int load_plugin(const char *plugin_name);
|
|
int is_loaded(const char *plugin_name);
|
|
|
|
#endif
|