diff options
Diffstat (limited to 'src/drivers/net/rtl8139.h')
-rw-r--r-- | src/drivers/net/rtl8139.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/drivers/net/rtl8139.h b/src/drivers/net/rtl8139.h index 462526a..ec87d23 100644 --- a/src/drivers/net/rtl8139.h +++ b/src/drivers/net/rtl8139.h @@ -6,10 +6,13 @@ #include "port.h" #define NOF_MAC_REGISTERS 6 +#define NOF_TRANSMIT_BUFFERS 4 typedef struct { network_t base; port8_t MAC_port[NOF_MAC_REGISTERS]; + port32_t TSD_port[NOF_TRANSMIT_BUFFERS]; + port32_t TSAD_port[NOF_TRANSMIT_BUFFERS]; port32_t RBSTART_port; port8_t CMD_port; port16_t CAPR_port; @@ -24,6 +27,8 @@ typedef struct { const char *model; uint8_t *receive_buffer; uint16_t receive_buffer_pos; + uint8_t *transmit_buffer[NOF_TRANSMIT_BUFFERS]; + int transmit_buffer_idx; interrupt_handler_t interrupt_handler; } rtl8139_t; @@ -37,6 +42,7 @@ void rtl8139_deactivate( void *obj ); void rtl8139_deinit( void *obj ); void rtl8139_print_name( void *obj ); void rtl8139_print_info( void *obj ); +void rtl8139_write( void *obj, network_buffer_t buf ); uint32_t rtl8139_handle_interrupt( interrupt_handler_t *handler, uint32_t esp ); |