summaryrefslogtreecommitdiff
path: root/src/drivers/driver.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/driver.c')
-rw-r--r--src/drivers/driver.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/drivers/driver.c b/src/drivers/driver.c
index c9633b8..fae54e7 100644
--- a/src/drivers/driver.c
+++ b/src/drivers/driver.c
@@ -6,26 +6,20 @@
#include "stdlib.h"
static driver_vtable_t const driver_vtable = {
- driver_register_interrupt_handler,
driver_activate,
driver_deactivate,
driver_deinit,
driver_print_info
};
-void driver_init( driver_t *driver )
+void driver_init( driver_t *driver, interrupt_t *interrupt, void *context )
{
memset( driver, 0, sizeof( driver_t ) );
- driver->vtable = &driver_vtable;
-}
-
-void driver_register_interrupt_handler( void *obj, interrupt_handler_func_t handler, void *context )
-{
- driver_t *driver = (driver_t *)obj;
-
- driver->handler = handler;
+ driver->interrupt = interrupt;
driver->context = context;
+
+ driver->vtable = &driver_vtable;
}
void driver_activate( void *obj )