orinoco: use new libnetdriver

Change-Id: I003590539dd76f4be8e067f986bb1f17b151490d
This commit is contained in:
David van Moolenbroek 2014-12-02 14:05:26 +00:00
parent 6315775f16
commit bcc1b08c61
3 changed files with 341 additions and 849 deletions

View file

@ -2,8 +2,8 @@
PROG= orinoco PROG= orinoco
SRCS= orinoco.c hermes.c SRCS= orinoco.c hermes.c
DPADD+= ${LIBNETDRIVER} ${LIBSYS} ${LIBTIMERS} DPADD+= ${LIBNETDRIVER} ${LIBSYS}
LDADD+= -lnetdriver -lsys -ltimers LDADD+= -lnetdriver -lsys
CPPFLAGS.orinoco.c+= -I${NETBSDSRCDIR}/minix CPPFLAGS.orinoco.c+= -I${NETBSDSRCDIR}/minix

File diff suppressed because it is too large Load diff

View file

@ -26,73 +26,39 @@ typedef struct s_or
{ {
int or_irq; int or_irq;
int or_hook_id; int or_hook_id;
int or_mode;
int or_flags;
char *or_model;
int or_client;
int or_link_up; int or_link_up;
int or_got_int; int or_got_int;
int or_tx_alive; int or_tx_alive;
int or_send_int; int or_send_int;
int or_clear_rx;
int or_need_reset; int or_need_reset;
int or_report_link; int or_report_link;
/* Events */ /* Events */
int or_ev_rx;
int or_ev_tx;
int or_ev_info;
int or_ev_txexc;
int or_ev_alloc;
int connected; int connected;
u16_t channel_mask;
u16_t channel;
u16_t ap_density;
u16_t rts_thresh;
int bitratemode;
int last_linkstatus; int last_linkstatus;
int max_data_len;
int port_type;
/* Rx */ /* Rx */
phys_bytes or_rx_buf; phys_bytes or_rx_buf;
vir_bytes or_read_s;
u16_t rxfid[NR_RX_BUFS]; u16_t rxfid[NR_RX_BUFS];
int rx_length[NR_RX_BUFS]; int rx_length[NR_RX_BUFS];
u8_t rx_buf[NR_RX_BUFS][IEEE802_11_FRAME_LEN]; u8_t rx_buf[NR_RX_BUFS][IEEE802_11_FRAME_LEN];
u8_t rx_offset[NR_RX_BUFS];
int rx_first; int rx_first;
int rx_last; int rx_last;
int rx_current; int rx_current;
/* Tx */ /* Tx */
u16_t or_nicbuf_size; u16_t or_nicbuf_size;
vir_bytes or_transm_s;
int or_tx_head; int or_tx_head;
int or_tx_tail; int or_tx_tail;
int or_tx_busy;
struct struct
{ {
int ret_busy; int ret_busy;
u16_t or_txfid; u16_t or_txfid;
} or_tx; } or_tx;
u32_t or_ertxth;
/* PCI related */
int or_seen;
int devind;
/* 'large' items */
irq_hook_t or_hook;
eth_stat_t or_stat; eth_stat_t or_stat;
message or_rx_mess; char or_name[sizeof(OR_NAME)];
message or_tx_mess;
ether_addr_t or_address;
iovec_t or_iovec[IOVEC_NR];
iovec_s_t or_iovec_s[IOVEC_NR];
char or_name[sizeof (OR_NAME)];
hermes_t hw; hermes_t hw;
char nick[IW_ESSID_MAX_SIZE + 1];
} t_or; } t_or;