summaryrefslogtreecommitdiff
path: root/src/drivers/net/rtl8139.h
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2017-07-22 22:18:23 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2017-07-22 22:18:23 +0200
commit818d61794e7a3d4503acc9e922c134dfd1407476 (patch)
treecc94b6ff8bf73eb090530b4b1cf11d4323034d93 /src/drivers/net/rtl8139.h
parent70d880905c37cfde7f4ddfe46c5cab582dd36ab7 (diff)
downloadabaos-818d61794e7a3d4503acc9e922c134dfd1407476.tar.gz
abaos-818d61794e7a3d4503acc9e922c134dfd1407476.tar.bz2
started to code RTL8139 network driver, for now setting io_base and IRQ
Diffstat (limited to 'src/drivers/net/rtl8139.h')
-rw-r--r--src/drivers/net/rtl8139.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/drivers/net/rtl8139.h b/src/drivers/net/rtl8139.h
index a255d65..ce59cb1 100644
--- a/src/drivers/net/rtl8139.h
+++ b/src/drivers/net/rtl8139.h
@@ -2,19 +2,26 @@
#define RTL8139_H
#include "network.h"
+#include "pci.h"
+#include "port.h"
typedef struct {
network_t base;
+ port32_t MAC0_port;
+ port16_t MAC4_port;
+ interrupt_handler_t interrupt_handler;
} rtl8139_t;
typedef struct {
network_vtable_t base;
} rtl8139_vtable_t;
-void rtl8139_init( rtl8139_t *rtl8139, interrupt_t *interrupt, void *context );
+void rtl8139_init( rtl8139_t *rtl8139, pci_device_descriptor_t *descriptor, interrupt_t *interrupt, void *context );
void rtl8139_activate( void *obj );
void rtl8139_deactivate( void *obj );
void rtl8139_deinit( void *obj );
void rtl8139_print_info( void *obj );
+uint32_t rtl8139_handle_interrupt( interrupt_handler_t *handler, uint32_t esp );
+
#endif // RTL8139_H