diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2017-07-15 17:38:09 +0200 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2017-07-15 17:38:09 +0200 |
commit | 76b381c5d30f32c3018a134d96f8a5c3ad677cfa (patch) | |
tree | bc151c2f2a8e07e0b08f4827ff24202088c20c0b /src/drivers/driver.h | |
parent | 5631e68852081bb4e4eaa6e3bb3a53a4d024dff2 (diff) | |
download | abaos-76b381c5d30f32c3018a134d96f8a5c3ad677cfa.tar.gz abaos-76b381c5d30f32c3018a134d96f8a5c3ad677cfa.tar.bz2 |
added a dummy RTL8139 network driver
added register interrupt handler methods to drivers (but I'm pretty
unsure about them)
setting network in qemu startup and using RTL8139 emulation drivers
Diffstat (limited to 'src/drivers/driver.h')
-rw-r--r-- | src/drivers/driver.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/drivers/driver.h b/src/drivers/driver.h index 0f1a2b4..d538f14 100644 --- a/src/drivers/driver.h +++ b/src/drivers/driver.h @@ -4,6 +4,7 @@ #include "interrupts.h" typedef struct { + void (*register_interrupt_handler)( void *obj, interrupt_handler_func_t handler, void *context ); void (*activate)( void *obj ); void (*deactivate)( void *obj ); void (*deinit)( void *obj ); @@ -12,9 +13,12 @@ typedef struct { typedef struct { driver_vtable_t const *vtable; + interrupt_handler_func_t handler; + void *context; } driver_t; void driver_init( driver_t *driver ); +void driver_register_interrupt_handler( void *obj, interrupt_handler_func_t handler, void *context ); void driver_activate( void *obj ); void driver_deactivate( void *obj ); void driver_deinit( void *obj ); |