Commit 5a4a60ae authored by David S. Miller's avatar David S. Miller

Merge bk://kernel.bkbits.net/acme/net-2.5

into nuts.ninka.net:/home/davem/src/BK/net-2.5
parents d29e0365 41d0ff2e
...@@ -70,9 +70,9 @@ MODULE_PARM_DESC(cycx_debug, "cyclomx debug level"); ...@@ -70,9 +70,9 @@ MODULE_PARM_DESC(cycx_debug, "cyclomx debug level");
/* Function Prototypes */ /* Function Prototypes */
/* WAN link driver entry points */ /* WAN link driver entry points */
static int setup (wan_device_t *wandev, wandev_conf_t *conf); static int setup(struct wan_device *wandev, wandev_conf_t *conf);
static int shutdown (wan_device_t *wandev); static int shutdown(struct wan_device *wandev);
static int ioctl (wan_device_t *wandev, unsigned cmd, unsigned long arg); static int ioctl(struct wan_device *wandev, unsigned cmd, unsigned long arg);
/* Miscellaneous functions */ /* Miscellaneous functions */
static irqreturn_t cycx_isr (int irq, void *dev_id, struct pt_regs *regs); static irqreturn_t cycx_isr (int irq, void *dev_id, struct pt_regs *regs);
...@@ -122,7 +122,7 @@ int __init cyclomx_init (void) ...@@ -122,7 +122,7 @@ int __init cyclomx_init (void)
/* Register adapters with WAN router */ /* Register adapters with WAN router */
for (cnt = 0; cnt < ncards; ++cnt) { for (cnt = 0; cnt < ncards; ++cnt) {
cycx_t *card = &card_array[cnt]; cycx_t *card = &card_array[cnt];
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
sprintf(card->devname, "%s%d", drvname, cnt + 1); sprintf(card->devname, "%s%d", drvname, cnt + 1);
wandev->magic = ROUTER_MAGIC; wandev->magic = ROUTER_MAGIC;
...@@ -181,7 +181,7 @@ static void __exit cyclomx_cleanup (void) ...@@ -181,7 +181,7 @@ static void __exit cyclomx_cleanup (void)
* configuration structure is in kernel memory (including extended data, if * configuration structure is in kernel memory (including extended data, if
* any). * any).
*/ */
static int setup (wan_device_t *wandev, wandev_conf_t *conf) static int setup(struct wan_device *wandev, wandev_conf_t *conf)
{ {
int err = -EFAULT; int err = -EFAULT;
cycx_t *card; cycx_t *card;
...@@ -273,7 +273,7 @@ out: return err; ...@@ -273,7 +273,7 @@ out: return err;
* This function is called by the router when device is being unregistered or * This function is called by the router when device is being unregistered or
* when it handles ROUTER_DOWN IOCTL. * when it handles ROUTER_DOWN IOCTL.
*/ */
static int shutdown (wan_device_t *wandev) static int shutdown(struct wan_device *wandev)
{ {
int ret = -EFAULT; int ret = -EFAULT;
cycx_t *card; cycx_t *card;
...@@ -305,7 +305,7 @@ out: return ret; ...@@ -305,7 +305,7 @@ out: return ret;
* *
* no reserved ioctls for the cyclom 2x up to now * no reserved ioctls for the cyclom 2x up to now
*/ */
static int ioctl (wan_device_t *wandev, unsigned cmd, unsigned long arg) static int ioctl(struct wan_device *wandev, unsigned cmd, unsigned long arg)
{ {
return -EINVAL; return -EINVAL;
} }
......
...@@ -120,10 +120,10 @@ typedef struct x25_channel { ...@@ -120,10 +120,10 @@ typedef struct x25_channel {
/* Function Prototypes */ /* Function Prototypes */
/* WAN link driver entry points. These are called by the WAN router module. */ /* WAN link driver entry points. These are called by the WAN router module. */
static int update (wan_device_t *wandev), static int update(struct wan_device *wandev),
new_if (wan_device_t *wandev, struct net_device *dev, new_if(struct wan_device *wandev, struct net_device *dev,
wanif_conf_t *conf), wanif_conf_t *conf),
del_if (wan_device_t *wandev, struct net_device *dev); del_if(struct wan_device *wandev, struct net_device *dev);
/* Network device interface */ /* Network device interface */
static int if_init (struct net_device *dev), static int if_init (struct net_device *dev),
...@@ -175,14 +175,15 @@ static u8 log2 (u32 n); ...@@ -175,14 +175,15 @@ static u8 log2 (u32 n);
static unsigned dec_to_uint (u8 *str, int len); static unsigned dec_to_uint (u8 *str, int len);
static struct net_device *get_dev_by_lcn (wan_device_t *wandev, s16 lcn); static struct net_device *get_dev_by_lcn(struct wan_device *wandev, s16 lcn);
static struct net_device *get_dev_by_dte_addr (wan_device_t *wandev, char *dte); static struct net_device *get_dev_by_dte_addr(struct wan_device *wandev,
char *dte);
#ifdef CYCLOMX_X25_DEBUG #ifdef CYCLOMX_X25_DEBUG
static void hex_dump(char *msg, unsigned char *p, int len); static void hex_dump(char *msg, unsigned char *p, int len);
static void x25_dump_config(TX25Config *conf); static void x25_dump_config(TX25Config *conf);
static void x25_dump_stats(TX25Stats *stats); static void x25_dump_stats(TX25Stats *stats);
static void x25_dump_devs(wan_device_t *wandev); static void x25_dump_devs(struct wan_device *wandev);
#else #else
#define hex_dump(msg, p, len) #define hex_dump(msg, p, len)
#define x25_dump_config(conf) #define x25_dump_config(conf)
...@@ -318,7 +319,7 @@ int cyx_init (cycx_t *card, wandev_conf_t *conf) ...@@ -318,7 +319,7 @@ int cyx_init (cycx_t *card, wandev_conf_t *conf)
/* WAN Device Driver Entry Points */ /* WAN Device Driver Entry Points */
/* Update device status & statistics. */ /* Update device status & statistics. */
static int update (wan_device_t *wandev) static int update(struct wan_device *wandev)
{ {
/* sanity checks */ /* sanity checks */
if (!wandev || !wandev->private) if (!wandev || !wandev->private)
...@@ -342,8 +343,8 @@ static int update (wan_device_t *wandev) ...@@ -342,8 +343,8 @@ static int update (wan_device_t *wandev)
* *
* Return: 0 o.k. * Return: 0 o.k.
* < 0 failure (channel will not be created) */ * < 0 failure (channel will not be created) */
static int new_if (wan_device_t *wandev, struct net_device *dev, static int new_if(struct wan_device *wandev, struct net_device *dev,
wanif_conf_t *conf) wanif_conf_t *conf)
{ {
cycx_t *card = wandev->private; cycx_t *card = wandev->private;
x25_channel_t *chan; x25_channel_t *chan;
...@@ -431,7 +432,7 @@ static int new_if (wan_device_t *wandev, struct net_device *dev, ...@@ -431,7 +432,7 @@ static int new_if (wan_device_t *wandev, struct net_device *dev,
} }
/* Delete logical channel. */ /* Delete logical channel. */
static int del_if (wan_device_t *wandev, struct net_device *dev) static int del_if(struct wan_device *wandev, struct net_device *dev)
{ {
if (dev->priv) { if (dev->priv) {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
...@@ -461,7 +462,7 @@ static int if_init (struct net_device *dev) ...@@ -461,7 +462,7 @@ static int if_init (struct net_device *dev)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
cycx_t *card = chan->card; cycx_t *card = chan->card;
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
/* Initialize device driver entry points */ /* Initialize device driver entry points */
dev->open = if_open; dev->open = if_open;
...@@ -711,7 +712,7 @@ static void cyx_isr (cycx_t *card) ...@@ -711,7 +712,7 @@ static void cyx_isr (cycx_t *card)
static void tx_intr (cycx_t *card, TX25Cmd *cmd) static void tx_intr (cycx_t *card, TX25Cmd *cmd)
{ {
struct net_device *dev; struct net_device *dev;
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
u8 lcn; u8 lcn;
cycx_peek(&card->hw, cmd->buf, &lcn, sizeof(lcn)); cycx_peek(&card->hw, cmd->buf, &lcn, sizeof(lcn));
...@@ -741,7 +742,7 @@ static void tx_intr (cycx_t *card, TX25Cmd *cmd) ...@@ -741,7 +742,7 @@ static void tx_intr (cycx_t *card, TX25Cmd *cmd)
* socket buffers available) the whole packet sequence must be discarded. */ * socket buffers available) the whole packet sequence must be discarded. */
static void rx_intr (cycx_t *card, TX25Cmd *cmd) static void rx_intr (cycx_t *card, TX25Cmd *cmd)
{ {
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
struct net_device *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
struct sk_buff *skb; struct sk_buff *skb;
...@@ -825,7 +826,7 @@ static void rx_intr (cycx_t *card, TX25Cmd *cmd) ...@@ -825,7 +826,7 @@ static void rx_intr (cycx_t *card, TX25Cmd *cmd)
/* Connect interrupt handler. */ /* Connect interrupt handler. */
static void connect_intr (cycx_t *card, TX25Cmd *cmd) static void connect_intr (cycx_t *card, TX25Cmd *cmd)
{ {
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
struct net_device *dev = NULL; struct net_device *dev = NULL;
x25_channel_t *chan; x25_channel_t *chan;
u8 d[32], u8 d[32],
...@@ -867,7 +868,7 @@ static void connect_intr (cycx_t *card, TX25Cmd *cmd) ...@@ -867,7 +868,7 @@ static void connect_intr (cycx_t *card, TX25Cmd *cmd)
/* Connect confirm interrupt handler. */ /* Connect confirm interrupt handler. */
static void connect_confirm_intr (cycx_t *card, TX25Cmd *cmd) static void connect_confirm_intr (cycx_t *card, TX25Cmd *cmd)
{ {
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
struct net_device *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
u8 lcn, key; u8 lcn, key;
...@@ -894,7 +895,7 @@ static void connect_confirm_intr (cycx_t *card, TX25Cmd *cmd) ...@@ -894,7 +895,7 @@ static void connect_confirm_intr (cycx_t *card, TX25Cmd *cmd)
/* Disconnect confirm interrupt handler. */ /* Disconnect confirm interrupt handler. */
static void disconnect_confirm_intr (cycx_t *card, TX25Cmd *cmd) static void disconnect_confirm_intr (cycx_t *card, TX25Cmd *cmd)
{ {
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
struct net_device *dev; struct net_device *dev;
u8 lcn; u8 lcn;
...@@ -914,7 +915,7 @@ static void disconnect_confirm_intr (cycx_t *card, TX25Cmd *cmd) ...@@ -914,7 +915,7 @@ static void disconnect_confirm_intr (cycx_t *card, TX25Cmd *cmd)
/* disconnect interrupt handler. */ /* disconnect interrupt handler. */
static void disconnect_intr (cycx_t *card, TX25Cmd *cmd) static void disconnect_intr (cycx_t *card, TX25Cmd *cmd)
{ {
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
struct net_device *dev; struct net_device *dev;
u8 lcn; u8 lcn;
...@@ -1255,7 +1256,7 @@ static int x25_send (cycx_t *card, u8 link, u8 lcn, u8 bitm, int len, void *buf) ...@@ -1255,7 +1256,7 @@ static int x25_send (cycx_t *card, u8 link, u8 lcn, u8 bitm, int len, void *buf)
/* Miscellaneous */ /* Miscellaneous */
/* Find network device by its channel number. */ /* Find network device by its channel number. */
static struct net_device *get_dev_by_lcn (wan_device_t *wandev, s16 lcn) static struct net_device *get_dev_by_lcn(struct wan_device *wandev, s16 lcn)
{ {
struct net_device *dev = wandev->dev; struct net_device *dev = wandev->dev;
x25_channel_t *chan; x25_channel_t *chan;
...@@ -1271,7 +1272,8 @@ static struct net_device *get_dev_by_lcn (wan_device_t *wandev, s16 lcn) ...@@ -1271,7 +1272,8 @@ static struct net_device *get_dev_by_lcn (wan_device_t *wandev, s16 lcn)
} }
/* Find network device by its remote dte address. */ /* Find network device by its remote dte address. */
static struct net_device *get_dev_by_dte_addr (wan_device_t *wandev, char *dte) static struct net_device *get_dev_by_dte_addr(struct wan_device *wandev,
char *dte)
{ {
struct net_device *dev = wandev->dev; struct net_device *dev = wandev->dev;
x25_channel_t *chan; x25_channel_t *chan;
...@@ -1556,7 +1558,7 @@ static void x25_dump_stats(TX25Stats *stats) ...@@ -1556,7 +1558,7 @@ static void x25_dump_stats(TX25Stats *stats)
printk(KERN_INFO "rx_aborts=%d\n", stats->rx_aborts); printk(KERN_INFO "rx_aborts=%d\n", stats->rx_aborts);
} }
static void x25_dump_devs(wan_device_t *wandev) static void x25_dump_devs(struct wan_device *wandev)
{ {
struct net_device *dev = wandev->dev; struct net_device *dev = wandev->dev;
......
...@@ -186,21 +186,22 @@ extern void enable_irq(unsigned int); ...@@ -186,21 +186,22 @@ extern void enable_irq(unsigned int);
/****** Function Prototypes *************************************************/ /****** Function Prototypes *************************************************/
/* WAN link driver entry points. These are called by the WAN router module. */ /* WAN link driver entry points. These are called by the WAN router module. */
static int update (wan_device_t* wandev); static int update(struct wan_device* wandev);
static int new_if (wan_device_t* wandev, netdevice_t* dev, static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf); wanif_conf_t* conf);
/* Network device interface */ /* Network device interface */
static int if_init (netdevice_t* dev); static int if_init(struct net_device* dev);
static int if_open (netdevice_t* dev); static int if_open(struct net_device* dev);
static int if_close (netdevice_t* dev); static int if_close(struct net_device* dev);
static int if_header (struct sk_buff* skb, netdevice_t* dev, static int if_header(struct sk_buff* skb, struct net_device* dev,
unsigned short type, void* daddr, void* saddr, unsigned len); unsigned short type, void* daddr, void* saddr,
unsigned len);
static int if_rebuild_hdr (struct sk_buff *skb); static int if_rebuild_hdr (struct sk_buff *skb);
static struct net_device_stats* if_stats (netdevice_t* dev); static struct net_device_stats* if_stats(struct net_device* dev);
static int if_send (struct sk_buff* skb, netdevice_t* dev); static int if_send(struct sk_buff* skb, struct net_device* dev);
/* CHDLC Firmware interface functions */ /* CHDLC Firmware interface functions */
static int chdlc_configure (sdla_t* card, void* data); static int chdlc_configure (sdla_t* card, void* data);
...@@ -214,7 +215,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb); ...@@ -214,7 +215,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb);
static int chdlc_disable_comm_shutdown (sdla_t *card); static int chdlc_disable_comm_shutdown (sdla_t *card);
static void if_tx_timeout (netdevice_t *dev); static void if_tx_timeout(struct net_device *dev);
/* Miscellaneous CHDLC Functions */ /* Miscellaneous CHDLC Functions */
static int set_chdlc_config (sdla_t* card); static int set_chdlc_config (sdla_t* card);
...@@ -230,8 +231,8 @@ static void port_set_state (sdla_t *card, int); ...@@ -230,8 +231,8 @@ static void port_set_state (sdla_t *card, int);
static int config_chdlc (sdla_t *card); static int config_chdlc (sdla_t *card);
static void disable_comm (sdla_t *card); static void disable_comm (sdla_t *card);
static void trigger_chdlc_poll (netdevice_t *); static void trigger_chdlc_poll(struct net_device *dev);
static void chdlc_poll (netdevice_t *); static void chdlc_poll(struct net_device *dev);
static void chdlc_poll_delay (unsigned long dev_ptr); static void chdlc_poll_delay (unsigned long dev_ptr);
...@@ -245,20 +246,20 @@ static void rx_intr (sdla_t* card); ...@@ -245,20 +246,20 @@ static void rx_intr (sdla_t* card);
static void timer_intr(sdla_t *); static void timer_intr(sdla_t *);
/* Bottom half handlers */ /* Bottom half handlers */
static void chdlc_work (netdevice_t *); static void chdlc_work(struct net_device *dev);
static int chdlc_work_cleanup (netdevice_t *); static int chdlc_work_cleanup(struct net_device *dev);
static int bh_enqueue (netdevice_t *, struct sk_buff *); static int bh_enqueue(struct net_device *dev, struct sk_buff *skb);
/* Miscellaneous functions */ /* Miscellaneous functions */
static int chk_bcast_mcast_addr(sdla_t* card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t* card, struct net_device* dev,
struct sk_buff *skb); struct sk_buff *skb);
static int reply_udp( unsigned char *data, unsigned int mbox_len ); static int reply_udp( unsigned char *data, unsigned int mbox_len );
static int intr_test( sdla_t* card); static int intr_test( sdla_t* card);
static int udp_pkt_type( struct sk_buff *skb , sdla_t* card); static int udp_pkt_type( struct sk_buff *skb , sdla_t* card);
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area); chdlc_private_area_t* chdlc_priv_area);
static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev, static int process_udp_mgmt_pkt(sdla_t* card, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area); chdlc_private_area_t* chdlc_priv_area);
static unsigned short calc_checksum (char *, int); static unsigned short calc_checksum (char *, int);
static void s508_lock (sdla_t *card, unsigned long *smp_flags); static void s508_lock (sdla_t *card, unsigned long *smp_flags);
...@@ -598,10 +599,10 @@ int wpc_init (sdla_t* card, wandev_conf_t* conf) ...@@ -598,10 +599,10 @@ int wpc_init (sdla_t* card, wandev_conf_t* conf)
* as to minimize the time that we are inside the interrupt handler. * as to minimize the time that we are inside the interrupt handler.
* *
*/ */
static int update (wan_device_t* wandev) static int update(struct wan_device* wandev)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
netdevice_t* dev; struct net_device* dev;
volatile chdlc_private_area_t* chdlc_priv_area; volatile chdlc_private_area_t* chdlc_priv_area;
SHARED_MEMORY_INFO_STRUCT *flags; SHARED_MEMORY_INFO_STRUCT *flags;
unsigned long timeout; unsigned long timeout;
...@@ -666,7 +667,8 @@ static int update (wan_device_t* wandev) ...@@ -666,7 +667,8 @@ static int update (wan_device_t* wandev)
* Return: 0 o.k. * Return: 0 o.k.
* < 0 failure (channel will not be created) * < 0 failure (channel will not be created)
*/ */
static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
chdlc_private_area_t* chdlc_priv_area; chdlc_private_area_t* chdlc_priv_area;
...@@ -897,11 +899,11 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) ...@@ -897,11 +899,11 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf)
* interface registration. Returning anything but zero will fail interface * interface registration. Returning anything but zero will fail interface
* registration. * registration.
*/ */
static int if_init (netdevice_t* dev) static int if_init(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
/* Initialize device driver entry points */ /* Initialize device driver entry points */
dev->open = &if_open; dev->open = &if_open;
...@@ -960,7 +962,7 @@ static int if_init (netdevice_t* dev) ...@@ -960,7 +962,7 @@ static int if_init (netdevice_t* dev)
* *
* Return 0 if O.k. or errno. * Return 0 if O.k. or errno.
*/ */
static int if_open (netdevice_t* dev) static int if_open(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
...@@ -1013,7 +1015,7 @@ static int if_open (netdevice_t* dev) ...@@ -1013,7 +1015,7 @@ static int if_open (netdevice_t* dev)
* o if this is the last close, then disable communications and interrupts. * o if this is the last close, then disable communications and interrupts.
* o reset flags. * o reset flags.
*/ */
static int if_close (netdevice_t* dev) static int if_close(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
...@@ -1084,8 +1086,9 @@ static void disable_comm (sdla_t *card) ...@@ -1084,8 +1086,9 @@ static void disable_comm (sdla_t *card)
* *
* Return: media header length. * Return: media header length.
*/ */
static int if_header (struct sk_buff* skb, netdevice_t* dev, static int if_header(struct sk_buff* skb, struct net_device* dev,
unsigned short type, void* daddr, void* saddr, unsigned len) unsigned short type, void* daddr, void* saddr,
unsigned len)
{ {
skb->protocol = htons(type); skb->protocol = htons(type);
...@@ -1096,7 +1099,7 @@ static int if_header (struct sk_buff* skb, netdevice_t* dev, ...@@ -1096,7 +1099,7 @@ static int if_header (struct sk_buff* skb, netdevice_t* dev,
/*============================================================================ /*============================================================================
* Handle transmit timeout event from netif watchdog * Handle transmit timeout event from netif watchdog
*/ */
static void if_tx_timeout (netdevice_t *dev) static void if_tx_timeout(struct net_device *dev)
{ {
chdlc_private_area_t* chan = dev->priv; chdlc_private_area_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -1144,7 +1147,7 @@ static int if_rebuild_hdr (struct sk_buff *skb) ...@@ -1144,7 +1147,7 @@ static int if_rebuild_hdr (struct sk_buff *skb)
* 2. Setting tbusy flag will inhibit further transmit requests from the * 2. Setting tbusy flag will inhibit further transmit requests from the
* protocol stack and can be used for flow control with protocol layer. * protocol stack and can be used for flow control with protocol layer.
*/ */
static int if_send (struct sk_buff* skb, netdevice_t* dev) static int if_send(struct sk_buff* skb, struct net_device* dev)
{ {
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
sdla_t *card = chdlc_priv_area->card; sdla_t *card = chdlc_priv_area->card;
...@@ -1278,7 +1281,7 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev) ...@@ -1278,7 +1281,7 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev)
* multicast source IP address. * multicast source IP address.
*/ */
static int chk_bcast_mcast_addr(sdla_t *card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t *card, struct net_device* dev,
struct sk_buff *skb) struct sk_buff *skb)
{ {
u32 src_ip_addr; u32 src_ip_addr;
...@@ -1421,7 +1424,7 @@ unsigned short calc_checksum (char *data, int len) ...@@ -1421,7 +1424,7 @@ unsigned short calc_checksum (char *data, int len)
* Get ethernet-style interface statistics. * Get ethernet-style interface statistics.
* Return a pointer to struct enet_statistics. * Return a pointer to struct enet_statistics.
*/ */
static struct net_device_stats* if_stats (netdevice_t* dev) static struct net_device_stats* if_stats(struct net_device* dev)
{ {
sdla_t *my_card; sdla_t *my_card;
chdlc_private_area_t* chdlc_priv_area; chdlc_private_area_t* chdlc_priv_area;
...@@ -1710,7 +1713,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb) ...@@ -1710,7 +1713,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb)
* PREPROCESSOR STATEMENT ABOVE, UNLESS YOU KNOW WHAT YOU ARE * PREPROCESSOR STATEMENT ABOVE, UNLESS YOU KNOW WHAT YOU ARE
* DOING */ * DOING */
static void chdlc_work (netdevice_t * dev) static void chdlc_work(struct net_device * dev)
{ {
chdlc_private_area_t* chan = dev->priv; chdlc_private_area_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -1751,7 +1754,7 @@ static void chdlc_work (netdevice_t * dev) ...@@ -1751,7 +1754,7 @@ static void chdlc_work (netdevice_t * dev)
return; return;
} }
static int chdlc_work_cleanup (netdevice_t *dev) static int chdlc_work_cleanup(struct net_device *dev)
{ {
chdlc_private_area_t* chan = dev->priv; chdlc_private_area_t* chan = dev->priv;
...@@ -1769,7 +1772,7 @@ static int chdlc_work_cleanup (netdevice_t *dev) ...@@ -1769,7 +1772,7 @@ static int chdlc_work_cleanup (netdevice_t *dev)
static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb) static int bh_enqueue(struct net_device *dev, struct sk_buff *skb)
{ {
/* Check for full */ /* Check for full */
chdlc_private_area_t* chan = dev->priv; chdlc_private_area_t* chan = dev->priv;
...@@ -1804,7 +1807,7 @@ static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb) ...@@ -1804,7 +1807,7 @@ static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb)
*/ */
static void wpc_isr (sdla_t* card) static void wpc_isr (sdla_t* card)
{ {
netdevice_t* dev; struct net_device* dev;
SHARED_MEMORY_INFO_STRUCT* flags = NULL; SHARED_MEMORY_INFO_STRUCT* flags = NULL;
int i; int i;
sdla_t *my_card; sdla_t *my_card;
...@@ -1931,7 +1934,7 @@ static void wpc_isr (sdla_t* card) ...@@ -1931,7 +1934,7 @@ static void wpc_isr (sdla_t* card)
*/ */
static void rx_intr (sdla_t* card) static void rx_intr (sdla_t* card)
{ {
netdevice_t *dev; struct net_device *dev;
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags; SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags;
CHDLC_DATA_RX_STATUS_EL_STRUCT *rxbuf = card->u.c.rxmb; CHDLC_DATA_RX_STATUS_EL_STRUCT *rxbuf = card->u.c.rxmb;
...@@ -2083,7 +2086,7 @@ static void rx_intr (sdla_t* card) ...@@ -2083,7 +2086,7 @@ static void rx_intr (sdla_t* card)
*/ */
void timer_intr(sdla_t *card) void timer_intr(sdla_t *card)
{ {
netdevice_t* dev; struct net_device* dev;
chdlc_private_area_t* chdlc_priv_area = NULL; chdlc_private_area_t* chdlc_priv_area = NULL;
SHARED_MEMORY_INFO_STRUCT* flags = NULL; SHARED_MEMORY_INFO_STRUCT* flags = NULL;
...@@ -2172,7 +2175,7 @@ static int set_chdlc_config(sdla_t* card) ...@@ -2172,7 +2175,7 @@ static int set_chdlc_config(sdla_t* card)
cfg.IP_netmask = 0; cfg.IP_netmask = 0;
}else if (card->wandev.dev){ }else if (card->wandev.dev){
netdevice_t * dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
struct in_device *in_dev = dev->ip_ptr; struct in_device *in_dev = dev->ip_ptr;
...@@ -2402,7 +2405,7 @@ static int process_chdlc_exception(sdla_t *card) ...@@ -2402,7 +2405,7 @@ static int process_chdlc_exception(sdla_t *card)
static int configure_ip (sdla_t* card) static int configure_ip (sdla_t* card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
char err; char err;
...@@ -2449,7 +2452,7 @@ static int configure_ip (sdla_t* card) ...@@ -2449,7 +2452,7 @@ static int configure_ip (sdla_t* card)
static int unconfigure_ip (sdla_t* card) static int unconfigure_ip (sdla_t* card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
if (!dev) if (!dev)
...@@ -2477,7 +2480,7 @@ static int unconfigure_ip (sdla_t* card) ...@@ -2477,7 +2480,7 @@ static int unconfigure_ip (sdla_t* card)
static void process_route (sdla_t *card) static void process_route (sdla_t *card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
unsigned char port_num; unsigned char port_num;
chdlc_private_area_t *chdlc_priv_area = NULL; chdlc_private_area_t *chdlc_priv_area = NULL;
u32 local_IP_addr = 0; u32 local_IP_addr = 0;
...@@ -2658,8 +2661,8 @@ static void process_route (sdla_t *card) ...@@ -2658,8 +2661,8 @@ static void process_route (sdla_t *card)
*/ */
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area ) chdlc_private_area_t* chdlc_priv_area)
{ {
int udp_pkt_stored = 0; int udp_pkt_stored = 0;
...@@ -2686,7 +2689,7 @@ static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, ...@@ -2686,7 +2689,7 @@ static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
* Process UDP management packet. * Process UDP management packet.
*/ */
static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev, static int process_udp_mgmt_pkt(sdla_t* card, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area ) chdlc_private_area_t* chdlc_priv_area )
{ {
unsigned char *buf; unsigned char *buf;
...@@ -3263,7 +3266,7 @@ static void port_set_state (sdla_t *card, int state) ...@@ -3263,7 +3266,7 @@ static void port_set_state (sdla_t *card, int state)
card->wandev.state = card->u.c.state = state; card->wandev.state = card->u.c.state = state;
if (card->wandev.dev){ if (card->wandev.dev){
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
chdlc_priv_area->common.state = state; chdlc_priv_area->common.state = state;
} }
...@@ -3293,7 +3296,7 @@ static void port_set_state (sdla_t *card, int state) ...@@ -3293,7 +3296,7 @@ static void port_set_state (sdla_t *card, int state)
static int config_chdlc (sdla_t *card) static int config_chdlc (sdla_t *card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags; SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags;
...@@ -3417,7 +3420,7 @@ static int config_chdlc (sdla_t *card) ...@@ -3417,7 +3420,7 @@ static int config_chdlc (sdla_t *card)
* the chldc_poll routine. * the chldc_poll routine.
*/ */
static void chdlc_poll (netdevice_t *dev) static void chdlc_poll(struct net_device *dev)
{ {
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
sdla_t *card; sdla_t *card;
...@@ -3567,7 +3570,7 @@ static void chdlc_poll (netdevice_t *dev) ...@@ -3567,7 +3570,7 @@ static void chdlc_poll (netdevice_t *dev)
* a polling routine. * a polling routine.
* *
*/ */
static void trigger_chdlc_poll (netdevice_t *dev) static void trigger_chdlc_poll(struct net_device *dev)
{ {
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
sdla_t *card; sdla_t *card;
...@@ -3592,7 +3595,7 @@ static void trigger_chdlc_poll (netdevice_t *dev) ...@@ -3592,7 +3595,7 @@ static void trigger_chdlc_poll (netdevice_t *dev)
static void chdlc_poll_delay (unsigned long dev_ptr) static void chdlc_poll_delay (unsigned long dev_ptr)
{ {
netdevice_t *dev = (netdevice_t *)dev_ptr; struct net_device *dev = (struct net_device *)dev_ptr;
trigger_chdlc_poll(dev); trigger_chdlc_poll(dev);
} }
......
...@@ -323,27 +323,28 @@ static int Intr_test_counter; ...@@ -323,27 +323,28 @@ static int Intr_test_counter;
/****** Function Prototypes *************************************************/ /****** Function Prototypes *************************************************/
/* WAN link driver entry points. These are called by the WAN router module. */ /* WAN link driver entry points. These are called by the WAN router module. */
static int update(wan_device_t *wandev); static int update(struct wan_device *wandev);
static int new_if(wan_device_t *wandev, netdevice_t *dev, wanif_conf_t *conf); static int new_if(struct wan_device *wandev, struct net_device *dev,
static int del_if(wan_device_t *wandev, netdevice_t *dev); wanif_conf_t *conf);
static int del_if(struct wan_device *wandev, struct net_device *dev);
static void disable_comm (sdla_t *card); static void disable_comm (sdla_t *card);
/* WANPIPE-specific entry points */ /* WANPIPE-specific entry points */
static int wpf_exec(struct sdla *card, void *u_cmd, void *u_data); static int wpf_exec(struct sdla *card, void *u_cmd, void *u_data);
/* Network device interface */ /* Network device interface */
static int if_init(netdevice_t *dev); static int if_init(struct net_device *dev);
static int if_open(netdevice_t *dev); static int if_open(struct net_device *dev);
static int if_close(netdevice_t *dev); static int if_close(struct net_device *dev);
static void if_tx_timeout (netdevice_t *dev); static void if_tx_timeout(struct net_device *dev);
static int if_rebuild_hdr (struct sk_buff *skb); static int if_rebuild_hdr (struct sk_buff *skb);
static int if_send(struct sk_buff *skb, netdevice_t *dev); static int if_send(struct sk_buff *skb, struct net_device *dev);
static int chk_bcast_mcast_addr(sdla_t *card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t *card, struct net_device* dev,
struct sk_buff *skb); struct sk_buff *skb);
static struct net_device_stats *if_stats(netdevice_t *dev); static struct net_device_stats *if_stats(struct net_device *dev);
/* Interrupt handlers */ /* Interrupt handlers */
static void fr_isr(sdla_t *card); static void fr_isr(sdla_t *card);
...@@ -382,9 +383,9 @@ static int fr_modem_failure(sdla_t *card, fr_mbox_t *mbox); ...@@ -382,9 +383,9 @@ static int fr_modem_failure(sdla_t *card, fr_mbox_t *mbox);
static int fr_dlci_change(sdla_t *card, fr_mbox_t *mbox); static int fr_dlci_change(sdla_t *card, fr_mbox_t *mbox);
/* Miscellaneous functions */ /* Miscellaneous functions */
static int update_chan_state(netdevice_t *dev); static int update_chan_state(struct net_device *dev);
static void set_chan_state(netdevice_t *dev, int state); static void set_chan_state(struct net_device *dev, int state);
static netdevice_t *find_channel(sdla_t *card, unsigned dlci); static struct net_device *find_channel(sdla_t *card, unsigned dlci);
static int is_tx_ready(sdla_t *card, fr_channel_t *chan); static int is_tx_ready(sdla_t *card, fr_channel_t *chan);
static unsigned int dec_to_uint(unsigned char *str, int len); static unsigned int dec_to_uint(unsigned char *str, int len);
static int reply_udp( unsigned char *data, unsigned int mbox_len ); static int reply_udp( unsigned char *data, unsigned int mbox_len );
...@@ -393,22 +394,23 @@ static int intr_test( sdla_t* card ); ...@@ -393,22 +394,23 @@ static int intr_test( sdla_t* card );
static void init_chan_statistics( fr_channel_t* chan ); static void init_chan_statistics( fr_channel_t* chan );
static void init_global_statistics( sdla_t* card ); static void init_global_statistics( sdla_t* card );
static void read_DLCI_IB_mapping( sdla_t* card, fr_channel_t* chan ); static void read_DLCI_IB_mapping( sdla_t* card, fr_channel_t* chan );
static int setup_for_delayed_transmit(netdevice_t* dev, struct sk_buff *skb); static int setup_for_delayed_transmit(struct net_device* dev,
struct sk_buff *skb);
netdevice_t * move_dev_to_next (sdla_t *, netdevice_t *); struct net_device *move_dev_to_next(sdla_t *card, struct net_device *dev);
static int check_tx_status(sdla_t *, netdevice_t *); static int check_tx_status(sdla_t *card, struct net_device *dev);
/* Frame Relay Socket API */ /* Frame Relay Socket API */
static void trigger_fr_bh (fr_channel_t *); static void trigger_fr_bh (fr_channel_t *);
static void fr_bh (netdevice_t *); static void fr_bh(struct net_device *dev);
static int fr_bh_cleanup (netdevice_t *); static int fr_bh_cleanup(struct net_device *dev);
static int bh_enqueue (netdevice_t *, struct sk_buff *); static int bh_enqueue(struct net_device *dev, struct sk_buff *skb);
static void trigger_fr_poll (netdevice_t *); static void trigger_fr_poll(struct net_device *dev);
static void fr_poll (netdevice_t *); static void fr_poll(struct net_device *dev);
//static void add_gateway (netdevice_t *); //static void add_gateway(struct net_device *dev);
static void trigger_unconfig_fr (netdevice_t *dev); static void trigger_unconfig_fr(struct net_device *dev);
static void unconfig_fr (sdla_t *); static void unconfig_fr (sdla_t *);
static void trigger_config_fr (sdla_t *); static void trigger_config_fr (sdla_t *);
...@@ -416,11 +418,11 @@ static void config_fr (sdla_t *); ...@@ -416,11 +418,11 @@ static void config_fr (sdla_t *);
/* Inverse ARP and Dynamic routing functions */ /* Inverse ARP and Dynamic routing functions */
int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, netdevice_t *dev); int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, struct net_device *dev);
int is_arp(void *buf); int is_arp(void *buf);
int send_inarp_request(sdla_t *card, netdevice_t *dev); int send_inarp_request(sdla_t *card, struct net_device *dev);
static void trigger_fr_arp (netdevice_t *); static void trigger_fr_arp(struct net_device *dev);
static void fr_arp (unsigned long data); static void fr_arp (unsigned long data);
...@@ -442,7 +444,8 @@ void s508_s514_unlock(sdla_t *card, unsigned long *smp_flags); ...@@ -442,7 +444,8 @@ void s508_s514_unlock(sdla_t *card, unsigned long *smp_flags);
void s508_s514_lock(sdla_t *card, unsigned long *smp_flags); void s508_s514_lock(sdla_t *card, unsigned long *smp_flags);
unsigned short calc_checksum (char *, int); unsigned short calc_checksum (char *, int);
static int setup_fr_header(struct sk_buff** skb, netdevice_t* dev, char op_mode); static int setup_fr_header(struct sk_buff** skb,
struct net_device* dev, char op_mode);
/****** Public Functions ****************************************************/ /****** Public Functions ****************************************************/
...@@ -746,7 +749,7 @@ int wpf_init(sdla_t *card, wandev_conf_t *conf) ...@@ -746,7 +749,7 @@ int wpf_init(sdla_t *card, wandev_conf_t *conf)
/*============================================================================ /*============================================================================
* Update device status & statistics. * Update device status & statistics.
*/ */
static int update (wan_device_t* wandev) static int update(struct wan_device* wandev)
{ {
volatile sdla_t* card; volatile sdla_t* card;
unsigned long timeout; unsigned long timeout;
...@@ -791,7 +794,8 @@ static int update (wan_device_t* wandev) ...@@ -791,7 +794,8 @@ static int update (wan_device_t* wandev)
* Return: 0 o.k. * Return: 0 o.k.
* < 0 failure (channel will not be created) * < 0 failure (channel will not be created)
*/ */
static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
fr_channel_t* chan; fr_channel_t* chan;
...@@ -1020,7 +1024,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) ...@@ -1020,7 +1024,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf)
/*============================================================================ /*============================================================================
* Delete logical channel. * Delete logical channel.
*/ */
static int del_if (wan_device_t* wandev, netdevice_t* dev) static int del_if(struct wan_device* wandev, struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
unsigned long smp_flags=0; unsigned long smp_flags=0;
...@@ -1116,11 +1120,11 @@ static int wpf_exec (struct sdla* card, void* u_cmd, void* u_data) ...@@ -1116,11 +1120,11 @@ static int wpf_exec (struct sdla* card, void* u_cmd, void* u_data)
* interface registration. Returning anything but zero will fail interface * interface registration. Returning anything but zero will fail interface
* registration. * registration.
*/ */
static int if_init (netdevice_t* dev) static int if_init(struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
/* Initialize device driver entry points */ /* Initialize device driver entry points */
dev->open = &if_open; dev->open = &if_open;
...@@ -1194,7 +1198,7 @@ static int if_init (netdevice_t* dev) ...@@ -1194,7 +1198,7 @@ static int if_init (netdevice_t* dev)
* *
* Return 0 if O.k. or errno. * Return 0 if O.k. or errno.
*/ */
static int if_open (netdevice_t* dev) static int if_open(struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1236,7 +1240,7 @@ static int if_open (netdevice_t* dev) ...@@ -1236,7 +1240,7 @@ static int if_open (netdevice_t* dev)
* o if this is the last open, then disable communications and interrupts. * o if this is the last open, then disable communications and interrupts.
* o reset flags. * o reset flags.
*/ */
static int if_close (netdevice_t* dev) static int if_close(struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1259,8 +1263,7 @@ static int if_close (netdevice_t* dev) ...@@ -1259,8 +1263,7 @@ static int if_close (netdevice_t* dev)
*/ */
static int if_rebuild_hdr (struct sk_buff* skb) static int if_rebuild_hdr (struct sk_buff* skb)
{ {
struct net_device *dev = skb->dev;
netdevice_t *dev = skb->dev;
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1272,7 +1275,7 @@ static int if_rebuild_hdr (struct sk_buff* skb) ...@@ -1272,7 +1275,7 @@ static int if_rebuild_hdr (struct sk_buff* skb)
/*============================================================================ /*============================================================================
* Handle transmit timeout event from netif watchdog * Handle transmit timeout event from netif watchdog
*/ */
static void if_tx_timeout (netdevice_t *dev) static void if_tx_timeout(struct net_device *dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -1315,7 +1318,7 @@ static void if_tx_timeout (netdevice_t *dev) ...@@ -1315,7 +1318,7 @@ static void if_tx_timeout (netdevice_t *dev)
* will inhibit further transmit requests from the protocol stack * will inhibit further transmit requests from the protocol stack
* and can be used for flow control with protocol layer. * and can be used for flow control with protocol layer.
*/ */
static int if_send (struct sk_buff* skb, netdevice_t* dev) static int if_send(struct sk_buff* skb, struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1562,7 +1565,8 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev) ...@@ -1562,7 +1565,8 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev)
* Setup so that a frame can be transmitted on the occurrence of a transmit * Setup so that a frame can be transmitted on the occurrence of a transmit
* interrupt. * interrupt.
*/ */
static int setup_for_delayed_transmit (netdevice_t* dev, struct sk_buff *skb) static int setup_for_delayed_transmit(struct net_device* dev,
struct sk_buff *skb)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1614,7 +1618,7 @@ static int setup_for_delayed_transmit (netdevice_t* dev, struct sk_buff *skb) ...@@ -1614,7 +1618,7 @@ static int setup_for_delayed_transmit (netdevice_t* dev, struct sk_buff *skb)
* Return 0 if not broadcast/multicast address, otherwise return 1. * Return 0 if not broadcast/multicast address, otherwise return 1.
*/ */
static int chk_bcast_mcast_addr(sdla_t *card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t *card, struct net_device* dev,
struct sk_buff *skb) struct sk_buff *skb)
{ {
u32 src_ip_addr; u32 src_ip_addr;
...@@ -1826,7 +1830,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_ ...@@ -1826,7 +1830,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_
* Get ethernet-style interface statistics. * Get ethernet-style interface statistics.
* Return a pointer to struct enet_statistics. * Return a pointer to struct enet_statistics.
*/ */
static struct net_device_stats *if_stats(netdevice_t *dev) static struct net_device_stats *if_stats(struct net_device *dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
...@@ -1952,7 +1956,7 @@ static void rx_intr (sdla_t* card) ...@@ -1952,7 +1956,7 @@ static void rx_intr (sdla_t* card)
fr_channel_t* chan; fr_channel_t* chan;
char *ptr = &flags->iflag; char *ptr = &flags->iflag;
struct sk_buff* skb; struct sk_buff* skb;
netdevice_t* dev; struct net_device* dev;
void* buf; void* buf;
unsigned dlci, len, offs, len_incl_hdr; unsigned dlci, len, offs, len_incl_hdr;
int i, udp_type; int i, udp_type;
...@@ -2223,7 +2227,7 @@ static void tx_intr(sdla_t *card) ...@@ -2223,7 +2227,7 @@ static void tx_intr(sdla_t *card)
{ {
fr508_flags_t* flags = card->flags; fr508_flags_t* flags = card->flags;
fr_tx_buf_ctl_t* bctl; fr_tx_buf_ctl_t* bctl;
netdevice_t* dev; struct net_device* dev;
fr_channel_t* chan; fr_channel_t* chan;
if(card->hw.type == SDLA_S514){ if(card->hw.type == SDLA_S514){
...@@ -2352,9 +2356,10 @@ static void timer_intr(sdla_t *card) ...@@ -2352,9 +2356,10 @@ static void timer_intr(sdla_t *card)
/* Update the channel state call. This is call is /* Update the channel state call. This is call is
* triggered by if_send() function */ * triggered by if_send() function */
if (card->u.f.timer_int_enabled & TMR_INT_ENABLED_UPDATE_STATE){ if (card->u.f.timer_int_enabled & TMR_INT_ENABLED_UPDATE_STATE){
netdevice_t *dev; struct net_device *dev;
if (card->wandev.state == WAN_CONNECTED){ if (card->wandev.state == WAN_CONNECTED){
for (dev=card->wandev.dev; dev; dev = *((netdevice_t **)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)){
fr_channel_t *chan = dev->priv; fr_channel_t *chan = dev->priv;
if (chan->common.state != WAN_CONNECTED){ if (chan->common.state != WAN_CONNECTED){
update_chan_state(dev); update_chan_state(dev);
...@@ -2380,7 +2385,7 @@ static void timer_intr(sdla_t *card) ...@@ -2380,7 +2385,7 @@ static void timer_intr(sdla_t *card)
/* Transmit ARP packets */ /* Transmit ARP packets */
if (card->u.f.timer_int_enabled & TMR_INT_ENABLED_ARP){ if (card->u.f.timer_int_enabled & TMR_INT_ENABLED_ARP){
int i=0; int i=0;
netdevice_t *dev; struct net_device *dev;
if (card->u.f.arp_dev == NULL) if (card->u.f.arp_dev == NULL)
card->u.f.arp_dev = card->wandev.dev; card->u.f.arp_dev = card->wandev.dev;
...@@ -2584,7 +2589,7 @@ static int handle_IPXWAN(unsigned char *sendpacket, ...@@ -2584,7 +2589,7 @@ static int handle_IPXWAN(unsigned char *sendpacket,
* This function is called by fr_poll() polling funtion. * This function is called by fr_poll() polling funtion.
*/ */
static void process_route (netdevice_t *dev) static void process_route(struct net_device *dev)
{ {
fr_channel_t *chan = dev->priv; fr_channel_t *chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -2985,7 +2990,7 @@ static int fr_issue_isf (sdla_t* card, int isf) ...@@ -2985,7 +2990,7 @@ static int fr_issue_isf (sdla_t* card, int isf)
static unsigned int fr_send_hdr (sdla_t*card, int dlci, unsigned int offset) static unsigned int fr_send_hdr (sdla_t*card, int dlci, unsigned int offset)
{ {
netdevice_t *dev = find_channel(card,dlci); struct net_device *dev = find_channel(card,dlci);
fr_channel_t *chan; fr_channel_t *chan;
if (!dev || !(chan=dev->priv)) if (!dev || !(chan=dev->priv))
...@@ -3088,12 +3093,12 @@ static int fr_event (sdla_t *card, int event, fr_mbox_t* mbox) ...@@ -3088,12 +3093,12 @@ static int fr_event (sdla_t *card, int event, fr_mbox_t* mbox)
case FRRES_MODEM_FAILURE: case FRRES_MODEM_FAILURE:
return fr_modem_failure(card, mbox); return fr_modem_failure(card, mbox);
case FRRES_CHANNEL_DOWN: case FRRES_CHANNEL_DOWN: {
{ struct net_device *dev;
netdevice_t *dev;
/* Remove all routes from associated DLCI's */ /* Remove all routes from associated DLCI's */
for (dev = card->wandev.dev; dev; dev = *((netdevice_t **)dev->priv)) { for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
fr_channel_t *chan = dev->priv; fr_channel_t *chan = dev->priv;
if (chan->route_flag == ROUTE_ADDED) { if (chan->route_flag == ROUTE_ADDED) {
chan->route_flag = REMOVE_ROUTE; chan->route_flag = REMOVE_ROUTE;
...@@ -3114,13 +3119,13 @@ static int fr_event (sdla_t *card, int event, fr_mbox_t* mbox) ...@@ -3114,13 +3119,13 @@ static int fr_event (sdla_t *card, int event, fr_mbox_t* mbox)
return 1; return 1;
} }
case FRRES_CHANNEL_UP: case FRRES_CHANNEL_UP: {
{ struct net_device *dev;
netdevice_t *dev;
/* FIXME: Only startup devices that are on the list */ /* FIXME: Only startup devices that are on the list */
for (dev = card->wandev.dev; dev; dev = *((netdevice_t **)dev->priv)) { for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
set_chan_state(dev,WAN_CONNECTED); set_chan_state(dev,WAN_CONNECTED);
} }
...@@ -3194,13 +3199,13 @@ static int fr_dlci_change (sdla_t *card, fr_mbox_t* mbox) ...@@ -3194,13 +3199,13 @@ static int fr_dlci_change (sdla_t *card, fr_mbox_t* mbox)
dlci_status_t* status = (void*)mbox->data; dlci_status_t* status = (void*)mbox->data;
int cnt = mbox->cmd.length / sizeof(dlci_status_t); int cnt = mbox->cmd.length / sizeof(dlci_status_t);
fr_channel_t *chan; fr_channel_t *chan;
netdevice_t* dev2; struct net_device* dev2;
for (; cnt; --cnt, ++status) { for (; cnt; --cnt, ++status) {
unsigned short dlci= status->dlci; unsigned short dlci= status->dlci;
netdevice_t* dev = find_channel(card, dlci); struct net_device* dev = find_channel(card, dlci);
if (dev == NULL){ if (dev == NULL){
printk(KERN_INFO printk(KERN_INFO
...@@ -3259,7 +3264,8 @@ static int fr_dlci_change (sdla_t *card, fr_mbox_t* mbox) ...@@ -3259,7 +3264,8 @@ static int fr_dlci_change (sdla_t *card, fr_mbox_t* mbox)
} }
} }
for (dev2 =card->wandev.dev; dev2; dev2 = *((netdevice_t **)dev2->priv)){ for (dev2 = card->wandev.dev; dev2;
dev2 = *((struct net_device **)dev2->priv)){
chan = dev2->priv; chan = dev2->priv;
...@@ -3315,7 +3321,7 @@ static int fr_init_dlci (sdla_t *card, fr_channel_t *chan) ...@@ -3315,7 +3321,7 @@ static int fr_init_dlci (sdla_t *card, fr_channel_t *chan)
/*============================================================================ /*============================================================================
* Update channel state. * Update channel state.
*/ */
static int update_chan_state (netdevice_t* dev) static int update_chan_state(struct net_device* dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -3361,7 +3367,7 @@ static int update_chan_state (netdevice_t* dev) ...@@ -3361,7 +3367,7 @@ static int update_chan_state (netdevice_t* dev)
/*============================================================================ /*============================================================================
* Set channel state. * Set channel state.
*/ */
static void set_chan_state (netdevice_t* dev, int state) static void set_chan_state(struct net_device* dev, int state)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -3414,7 +3420,7 @@ static void set_chan_state (netdevice_t* dev, int state) ...@@ -3414,7 +3420,7 @@ static void set_chan_state (netdevice_t* dev, int state)
* NOTE: del_if() functions updates this array, it uses * NOTE: del_if() functions updates this array, it uses
* the spin locks to avoid corruption. * the spin locks to avoid corruption.
*/ */
static netdevice_t* find_channel (sdla_t* card, unsigned dlci) static struct net_device* find_channel(sdla_t* card, unsigned dlci)
{ {
if(dlci > HIGHEST_VALID_DLCI) if(dlci > HIGHEST_VALID_DLCI)
return NULL; return NULL;
...@@ -3471,7 +3477,7 @@ static int store_udp_mgmt_pkt(int udp_type, char udp_pkt_src, sdla_t* card, ...@@ -3471,7 +3477,7 @@ static int store_udp_mgmt_pkt(int udp_type, char udp_pkt_src, sdla_t* card,
{ {
int udp_pkt_stored = 0; int udp_pkt_stored = 0;
netdevice_t *dev=find_channel(card,dlci); struct net_device *dev = find_channel(card, dlci);
fr_channel_t *chan; fr_channel_t *chan;
if (!dev || !(chan=dev->priv)) if (!dev || !(chan=dev->priv))
...@@ -3517,7 +3523,7 @@ static int process_udp_mgmt_pkt(sdla_t* card) ...@@ -3517,7 +3523,7 @@ static int process_udp_mgmt_pkt(sdla_t* card)
int err; int err;
struct timeval tv; struct timeval tv;
int udp_mgmt_req_valid = 1; int udp_mgmt_req_valid = 1;
netdevice_t* dev; struct net_device* dev;
fr_channel_t* chan; fr_channel_t* chan;
fr_udp_pkt_t *fr_udp_pkt; fr_udp_pkt_t *fr_udp_pkt;
unsigned short num_trc_els; unsigned short num_trc_els;
...@@ -3918,7 +3924,7 @@ static int process_udp_mgmt_pkt(sdla_t* card) ...@@ -3918,7 +3924,7 @@ static int process_udp_mgmt_pkt(sdla_t* card)
* Send Inverse ARP Request * Send Inverse ARP Request
*/ */
int send_inarp_request(sdla_t *card, netdevice_t *dev) int send_inarp_request(sdla_t *card, struct net_device *dev)
{ {
int err=0; int err=0;
...@@ -3995,7 +4001,7 @@ int is_arp(void *buf) ...@@ -3995,7 +4001,7 @@ int is_arp(void *buf)
* Process ARP Packet Type * Process ARP Packet Type
*/ */
int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, netdevice_t* dev) int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, struct net_device* dev)
{ {
...@@ -4152,7 +4158,7 @@ int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, netdevice_t* dev) ...@@ -4152,7 +4158,7 @@ int process_ARP(arphdr_1490_t *ArpPacket, sdla_t *card, netdevice_t* dev)
* at a later date. * at a later date.
*/ */
static void trigger_fr_arp (netdevice_t *dev) static void trigger_fr_arp(struct net_device *dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
...@@ -4173,7 +4179,7 @@ static void trigger_fr_arp (netdevice_t *dev) ...@@ -4173,7 +4179,7 @@ static void trigger_fr_arp (netdevice_t *dev)
static void fr_arp (unsigned long data) static void fr_arp (unsigned long data)
{ {
netdevice_t *dev = (netdevice_t *)data; struct net_device *dev = (struct net_device *)data;
fr_channel_t *chan = dev->priv; fr_channel_t *chan = dev->priv;
volatile sdla_t *card = chan->card; volatile sdla_t *card = chan->card;
fr508_flags_t* flags = card->flags; fr508_flags_t* flags = card->flags;
...@@ -4365,7 +4371,7 @@ void s508_s514_unlock(sdla_t *card, unsigned long *smp_flags) ...@@ -4365,7 +4371,7 @@ void s508_s514_unlock(sdla_t *card, unsigned long *smp_flags)
* *
*/ */
static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb) static int bh_enqueue(struct net_device *dev, struct sk_buff *skb)
{ {
/* Check for full */ /* Check for full */
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
...@@ -4438,7 +4444,7 @@ static void trigger_fr_bh (fr_channel_t *chan) ...@@ -4438,7 +4444,7 @@ static void trigger_fr_bh (fr_channel_t *chan)
* *
*/ */
static void fr_bh (netdevice_t * dev) static void fr_bh(struct net_device * dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -4485,7 +4491,7 @@ static void fr_bh (netdevice_t * dev) ...@@ -4485,7 +4491,7 @@ static void fr_bh (netdevice_t * dev)
return; return;
} }
static int fr_bh_cleanup (netdevice_t *dev) static int fr_bh_cleanup(struct net_device *dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
...@@ -4519,7 +4525,7 @@ static int fr_bh_cleanup (netdevice_t *dev) ...@@ -4519,7 +4525,7 @@ static int fr_bh_cleanup (netdevice_t *dev)
* a polling routine. * a polling routine.
* *
*/ */
static void trigger_fr_poll (netdevice_t *dev) static void trigger_fr_poll(struct net_device *dev)
{ {
fr_channel_t* chan = dev->priv; fr_channel_t* chan = dev->priv;
schedule_task(&chan->fr_poll_task); schedule_task(&chan->fr_poll_task);
...@@ -4549,7 +4555,7 @@ static void trigger_fr_poll (netdevice_t *dev) ...@@ -4549,7 +4555,7 @@ static void trigger_fr_poll (netdevice_t *dev)
* the fr_poll routine. * the fr_poll routine.
*/ */
static void fr_poll (netdevice_t *dev) static void fr_poll(struct net_device *dev)
{ {
fr_channel_t* chan; fr_channel_t* chan;
...@@ -4636,7 +4642,7 @@ static void fr_poll (netdevice_t *dev) ...@@ -4636,7 +4642,7 @@ static void fr_poll (netdevice_t *dev)
* an interrupt. * an interrupt.
*/ */
static int check_tx_status(sdla_t *card, netdevice_t *dev) static int check_tx_status(sdla_t *card, struct net_device *dev)
{ {
if (card->hw.type == SDLA_S514){ if (card->hw.type == SDLA_S514){
...@@ -4666,14 +4672,13 @@ static int check_tx_status(sdla_t *card, netdevice_t *dev) ...@@ -4666,14 +4672,13 @@ static int check_tx_status(sdla_t *card, netdevice_t *dev)
* *
*/ */
netdevice_t * move_dev_to_next (sdla_t *card, netdevice_t *dev) struct net_device *move_dev_to_next(sdla_t *card, struct net_device *dev)
{ {
if (card->wandev.new_if_cnt != 1){ if (card->wandev.new_if_cnt != 1){
if (*((netdevice_t **)dev->priv) == NULL){ if (!*((struct net_device **)dev->priv))
return card->wandev.dev; return card->wandev.dev;
}else{ else
return *((netdevice_t **)dev->priv); return *((struct net_device **)dev->priv);
}
} }
return dev; return dev;
} }
...@@ -4723,10 +4728,11 @@ static void trigger_config_fr (sdla_t *card) ...@@ -4723,10 +4728,11 @@ static void trigger_config_fr (sdla_t *card)
static void config_fr (sdla_t *card) static void config_fr (sdla_t *card)
{ {
netdevice_t *dev; struct net_device *dev;
fr_channel_t *chan; fr_channel_t *chan;
for (dev=card->wandev.dev; dev; dev=*((netdevice_t **)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
if ((chan=dev->priv) == NULL) if ((chan=dev->priv) == NULL)
continue; continue;
...@@ -4795,7 +4801,7 @@ static void config_fr (sdla_t *card) ...@@ -4795,7 +4801,7 @@ static void config_fr (sdla_t *card)
* *
*/ */
static void trigger_unconfig_fr (netdevice_t *dev) static void trigger_unconfig_fr(struct net_device *dev)
{ {
fr_channel_t *chan = dev->priv; fr_channel_t *chan = dev->priv;
volatile sdla_t *card = chan->card; volatile sdla_t *card = chan->card;
...@@ -4847,10 +4853,11 @@ static void trigger_unconfig_fr (netdevice_t *dev) ...@@ -4847,10 +4853,11 @@ static void trigger_unconfig_fr (netdevice_t *dev)
static void unconfig_fr (sdla_t *card) static void unconfig_fr (sdla_t *card)
{ {
netdevice_t *dev; struct net_device *dev;
fr_channel_t *chan; fr_channel_t *chan;
for (dev=card->wandev.dev; dev; dev=*((netdevice_t **)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)){
if ((chan=dev->priv) == NULL) if ((chan=dev->priv) == NULL)
continue; continue;
...@@ -4869,7 +4876,8 @@ static void unconfig_fr (sdla_t *card) ...@@ -4869,7 +4876,8 @@ static void unconfig_fr (sdla_t *card)
} }
} }
static int setup_fr_header(struct sk_buff ** skb_orig, netdevice_t* dev, char op_mode) static int setup_fr_header(struct sk_buff **skb_orig, struct net_device* dev,
char op_mode)
{ {
struct sk_buff *skb = *skb_orig; struct sk_buff *skb = *skb_orig;
fr_channel_t *chan=dev->priv; fr_channel_t *chan=dev->priv;
...@@ -4927,7 +4935,7 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan) ...@@ -4927,7 +4935,7 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan)
fr_conf_t *conf=NULL; fr_conf_t *conf=NULL;
unsigned short dlci_num = chan->dlci; unsigned short dlci_num = chan->dlci;
int dlci_offset=0; int dlci_offset=0;
netdevice_t *dev=NULL; struct net_device *dev = NULL;
mbox->cmd.command = FR_READ_CONFIG; mbox->cmd.command = FR_READ_CONFIG;
mbox->cmd.length = 0; mbox->cmd.length = 0;
...@@ -4939,9 +4947,9 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan) ...@@ -4939,9 +4947,9 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan)
return 0; return 0;
} }
for (dev=card->wandev.dev; dev; dev=*((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev=*((struct net_device **)dev->priv))
set_chan_state(dev,WAN_DISCONNECTED); set_chan_state(dev,WAN_DISCONNECTED);
}
printk(KERN_INFO "DLCI %i Not configured, configuring\n",dlci_num); printk(KERN_INFO "DLCI %i Not configured, configuring\n",dlci_num);
...@@ -4969,7 +4977,8 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan) ...@@ -4969,7 +4977,8 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan)
conf = (fr_conf_t *)mbox->data; conf = (fr_conf_t *)mbox->data;
dlci_offset=0; dlci_offset=0;
for (dev=card->wandev.dev; dev; dev=*((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
fr_channel_t *chan_tmp = dev->priv; fr_channel_t *chan_tmp = dev->priv;
conf->dlci[dlci_offset] = chan_tmp->dlci; conf->dlci[dlci_offset] = chan_tmp->dlci;
dlci_offset++; dlci_offset++;
...@@ -5003,7 +5012,8 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan) ...@@ -5003,7 +5012,8 @@ static int check_dlci_config (sdla_t *card, fr_channel_t *chan)
printk(KERN_INFO "Enabling Communications \n"); printk(KERN_INFO "Enabling Communications \n");
for (dev=card->wandev.dev; dev; dev=*((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
fr_channel_t *chan_tmp = dev->priv; fr_channel_t *chan_tmp = dev->priv;
fr_init_dlci(card,chan_tmp); fr_init_dlci(card,chan_tmp);
fr_add_dlci(card, chan_tmp->dlci); fr_add_dlci(card, chan_tmp->dlci);
......
...@@ -70,7 +70,7 @@ ...@@ -70,7 +70,7 @@
typedef struct chdlc_private_area typedef struct chdlc_private_area
{ {
netdevice_t *slave; struct net_device *slave;
sdla_t *card; sdla_t *card;
int TracingEnabled; /* For enabling Tracing */ int TracingEnabled; /* For enabling Tracing */
unsigned long curr_trace_addr; /* Used for Tracing */ unsigned long curr_trace_addr; /* Used for Tracing */
......
...@@ -168,7 +168,7 @@ ...@@ -168,7 +168,7 @@
typedef struct ppp_private_area typedef struct ppp_private_area
{ {
netdevice_t *slave; struct net_device *slave;
sdla_t* card; sdla_t* card;
unsigned long router_start_time; /*router start time in sec */ unsigned long router_start_time; /*router start time in sec */
unsigned long tick_counter; /*used for 5 second counter*/ unsigned long tick_counter; /*used for 5 second counter*/
...@@ -231,25 +231,27 @@ extern void enable_irq(unsigned int); ...@@ -231,25 +231,27 @@ extern void enable_irq(unsigned int);
/****** Function Prototypes *************************************************/ /****** Function Prototypes *************************************************/
/* WAN link driver entry points. These are called by the WAN router module. */ /* WAN link driver entry points. These are called by the WAN router module. */
static int update(wan_device_t *wandev); static int update(struct wan_device *wandev);
static int new_if(wan_device_t *wandev, netdevice_t *dev, wanif_conf_t *conf); static int new_if(struct wan_device *wandev, struct net_device *dev,
static int del_if(wan_device_t *wandev, netdevice_t *dev); wanif_conf_t *conf);
static int del_if(struct wan_device *wandev, struct net_device *dev);
/* WANPIPE-specific entry points */ /* WANPIPE-specific entry points */
static int wpp_exec (struct sdla *card, void *u_cmd, void *u_data); static int wpp_exec (struct sdla *card, void *u_cmd, void *u_data);
/* Network device interface */ /* Network device interface */
static int if_init(netdevice_t *dev); static int if_init(struct net_device *dev);
static int if_open(netdevice_t *dev); static int if_open(struct net_device *dev);
static int if_close(netdevice_t *dev); static int if_close(struct net_device *dev);
static int if_header(struct sk_buff *skb, netdevice_t *dev, unsigned short type, static int if_header(struct sk_buff *skb, struct net_device *dev,
unsigned short type,
void *daddr, void *saddr, unsigned len); void *daddr, void *saddr, unsigned len);
static void if_tx_timeout (netdevice_t *dev); static void if_tx_timeout(struct net_device *dev);
static int if_rebuild_hdr(struct sk_buff *skb); static int if_rebuild_hdr(struct sk_buff *skb);
static struct net_device_stats *if_stats(netdevice_t *dev); static struct net_device_stats *if_stats(struct net_device *dev);
static int if_send(struct sk_buff *skb, netdevice_t *dev); static int if_send(struct sk_buff *skb, struct net_device *dev);
/* PPP firmware interface functions */ /* PPP firmware interface functions */
...@@ -278,10 +280,10 @@ static void retrigger_comm(sdla_t *card); ...@@ -278,10 +280,10 @@ static void retrigger_comm(sdla_t *card);
static int read_info( sdla_t *card ); static int read_info( sdla_t *card );
static int read_connection_info (sdla_t *card); static int read_connection_info (sdla_t *card);
static void remove_route( sdla_t *card ); static void remove_route( sdla_t *card );
static int config508(netdevice_t *dev, sdla_t *card); static int config508(struct net_device *dev, sdla_t *card);
static void show_disc_cause(sdla_t * card, unsigned cause); static void show_disc_cause(sdla_t * card, unsigned cause);
static int reply_udp( unsigned char *data, unsigned int mbox_len ); static int reply_udp( unsigned char *data, unsigned int mbox_len );
static void process_udp_mgmt_pkt(sdla_t *card, netdevice_t *dev, static void process_udp_mgmt_pkt(sdla_t *card, struct net_device *dev,
ppp_private_area_t *ppp_priv_area); ppp_private_area_t *ppp_priv_area);
static void init_ppp_tx_rx_buff( sdla_t *card ); static void init_ppp_tx_rx_buff( sdla_t *card );
static int intr_test( sdla_t *card ); static int intr_test( sdla_t *card );
...@@ -290,12 +292,12 @@ static void init_ppp_priv_struct( ppp_private_area_t *ppp_priv_area); ...@@ -290,12 +292,12 @@ static void init_ppp_priv_struct( ppp_private_area_t *ppp_priv_area);
static void init_global_statistics( sdla_t *card ); static void init_global_statistics( sdla_t *card );
static int tokenize(char *str, char **tokens); static int tokenize(char *str, char **tokens);
static char* strstrip(char *str, char *s); static char* strstrip(char *str, char *s);
static int chk_bcast_mcast_addr(sdla_t* card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t* card, struct net_device* dev,
struct sk_buff *skb); struct sk_buff *skb);
static int config_ppp (sdla_t *); static int config_ppp (sdla_t *);
static void ppp_poll(netdevice_t *); static void ppp_poll(struct net_device *dev);
static void trigger_ppp_poll(netdevice_t *); static void trigger_ppp_poll(struct net_device *dev);
static void ppp_poll_delay (unsigned long dev_ptr); static void ppp_poll_delay (unsigned long dev_ptr);
...@@ -315,7 +317,7 @@ static void s508_lock (sdla_t *card, unsigned long *smp_flags); ...@@ -315,7 +317,7 @@ static void s508_lock (sdla_t *card, unsigned long *smp_flags);
static void s508_unlock (sdla_t *card, unsigned long *smp_flags); static void s508_unlock (sdla_t *card, unsigned long *smp_flags);
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
ppp_private_area_t* ppp_priv_area ); ppp_private_area_t* ppp_priv_area );
static unsigned short calc_checksum (char *data, int len); static unsigned short calc_checksum (char *data, int len);
static void disable_comm (sdla_t *card); static void disable_comm (sdla_t *card);
...@@ -444,10 +446,10 @@ int wpp_init(sdla_t *card, wandev_conf_t *conf) ...@@ -444,10 +446,10 @@ int wpp_init(sdla_t *card, wandev_conf_t *conf)
/*============================================================================ /*============================================================================
* Update device status & statistics. * Update device status & statistics.
*/ */
static int update(wan_device_t *wandev) static int update(struct wan_device *wandev)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
netdevice_t* dev; struct net_device* dev;
volatile ppp_private_area_t *ppp_priv_area; volatile ppp_private_area_t *ppp_priv_area;
ppp_flags_t *flags = card->flags; ppp_flags_t *flags = card->flags;
unsigned long timeout; unsigned long timeout;
...@@ -504,7 +506,8 @@ static int update(wan_device_t *wandev) ...@@ -504,7 +506,8 @@ static int update(wan_device_t *wandev)
* Return: 0 o.k. * Return: 0 o.k.
* < 0 failure (channel will not be created) * < 0 failure (channel will not be created)
*/ */
static int new_if(wan_device_t *wandev, netdevice_t *dev, wanif_conf_t *conf) static int new_if(struct wan_device *wandev, struct net_device *dev,
wanif_conf_t *conf)
{ {
sdla_t *card = wandev->private; sdla_t *card = wandev->private;
ppp_private_area_t *ppp_priv_area; ppp_private_area_t *ppp_priv_area;
...@@ -622,7 +625,7 @@ static int new_if(wan_device_t *wandev, netdevice_t *dev, wanif_conf_t *conf) ...@@ -622,7 +625,7 @@ static int new_if(wan_device_t *wandev, netdevice_t *dev, wanif_conf_t *conf)
/*============================================================================ /*============================================================================
* Delete logical channel. * Delete logical channel.
*/ */
static int del_if(wan_device_t *wandev, netdevice_t *dev) static int del_if(struct wan_device *wandev, struct net_device *dev)
{ {
return 0; return 0;
} }
...@@ -681,11 +684,11 @@ static int wpp_exec(struct sdla *card, void *u_cmd, void *u_data) ...@@ -681,11 +684,11 @@ static int wpp_exec(struct sdla *card, void *u_cmd, void *u_data)
* interface registration. Returning anything but zero will fail interface * interface registration. Returning anything but zero will fail interface
* registration. * registration.
*/ */
static int if_init(netdevice_t *dev) static int if_init(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
sdla_t *card = ppp_priv_area->card; sdla_t *card = ppp_priv_area->card;
wan_device_t *wandev = &card->wandev; struct wan_device *wandev = &card->wandev;
/* Initialize device driver entry points */ /* Initialize device driver entry points */
dev->open = &if_open; dev->open = &if_open;
...@@ -730,7 +733,7 @@ static int if_init(netdevice_t *dev) ...@@ -730,7 +733,7 @@ static int if_init(netdevice_t *dev)
* *
* Return 0 if O.k. or errno. * Return 0 if O.k. or errno.
*/ */
static int if_open (netdevice_t *dev) static int if_open(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
sdla_t *card = ppp_priv_area->card; sdla_t *card = ppp_priv_area->card;
...@@ -769,7 +772,7 @@ static int if_open (netdevice_t *dev) ...@@ -769,7 +772,7 @@ static int if_open (netdevice_t *dev)
* o if this is the last open, then disable communications and interrupts. * o if this is the last open, then disable communications and interrupts.
* o reset flags. * o reset flags.
*/ */
static int if_close(netdevice_t *dev) static int if_close(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
sdla_t *card = ppp_priv_area->card; sdla_t *card = ppp_priv_area->card;
...@@ -790,7 +793,7 @@ static int if_close(netdevice_t *dev) ...@@ -790,7 +793,7 @@ static int if_close(netdevice_t *dev)
* *
* Return: media header length. * Return: media header length.
*/ */
static int if_header(struct sk_buff *skb, netdevice_t *dev, static int if_header(struct sk_buff *skb, struct net_device *dev,
unsigned short type, void *daddr, void *saddr, unsigned len) unsigned short type, void *daddr, void *saddr, unsigned len)
{ {
switch (type) switch (type)
...@@ -815,7 +818,7 @@ static int if_header(struct sk_buff *skb, netdevice_t *dev, ...@@ -815,7 +818,7 @@ static int if_header(struct sk_buff *skb, netdevice_t *dev,
*/ */
static int if_rebuild_hdr (struct sk_buff *skb) static int if_rebuild_hdr (struct sk_buff *skb)
{ {
netdevice_t *dev = skb->dev; struct net_device *dev = skb->dev;
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
sdla_t *card = ppp_priv_area->card; sdla_t *card = ppp_priv_area->card;
...@@ -827,7 +830,7 @@ static int if_rebuild_hdr (struct sk_buff *skb) ...@@ -827,7 +830,7 @@ static int if_rebuild_hdr (struct sk_buff *skb)
/*============================================================================ /*============================================================================
* Handle transmit timeout event from netif watchdog * Handle transmit timeout event from netif watchdog
*/ */
static void if_tx_timeout (netdevice_t *dev) static void if_tx_timeout(struct net_device *dev)
{ {
ppp_private_area_t* chan = dev->priv; ppp_private_area_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -865,7 +868,7 @@ static void if_tx_timeout (netdevice_t *dev) ...@@ -865,7 +868,7 @@ static void if_tx_timeout (netdevice_t *dev)
* 2. Setting tbusy flag will inhibit further transmit requests from the * 2. Setting tbusy flag will inhibit further transmit requests from the
* protocol stack and can be used for flow control with protocol layer. * protocol stack and can be used for flow control with protocol layer.
*/ */
static int if_send (struct sk_buff *skb, netdevice_t *dev) static int if_send (struct sk_buff *skb, struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
sdla_t *card = ppp_priv_area->card; sdla_t *card = ppp_priv_area->card;
...@@ -995,7 +998,7 @@ static int if_send (struct sk_buff *skb, netdevice_t *dev) ...@@ -995,7 +998,7 @@ static int if_send (struct sk_buff *skb, netdevice_t *dev)
*/ */
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
ppp_private_area_t* ppp_priv_area ) ppp_private_area_t* ppp_priv_area )
{ {
int udp_pkt_stored = 0; int udp_pkt_stored = 0;
...@@ -1189,7 +1192,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_ ...@@ -1189,7 +1192,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_
* Get ethernet-style interface statistics. * Get ethernet-style interface statistics.
* Return a pointer to struct net_device_stats. * Return a pointer to struct net_device_stats.
*/ */
static struct net_device_stats *if_stats(netdevice_t *dev) static struct net_device_stats *if_stats(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
...@@ -1569,7 +1572,7 @@ static void wpp_isr (sdla_t *card) ...@@ -1569,7 +1572,7 @@ static void wpp_isr (sdla_t *card)
{ {
ppp_flags_t *flags = card->flags; ppp_flags_t *flags = card->flags;
char *ptr = &flags->iflag; char *ptr = &flags->iflag;
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
int i; int i;
card->in_isr = 1; card->in_isr = 1;
...@@ -1649,7 +1652,7 @@ static void wpp_isr (sdla_t *card) ...@@ -1649,7 +1652,7 @@ static void wpp_isr (sdla_t *card)
static void rx_intr(sdla_t *card) static void rx_intr(sdla_t *card)
{ {
ppp_buf_ctl_t *rxbuf = card->rxmb; ppp_buf_ctl_t *rxbuf = card->rxmb;
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
ppp_private_area_t *ppp_priv_area; ppp_private_area_t *ppp_priv_area;
struct sk_buff *skb; struct sk_buff *skb;
unsigned len; unsigned len;
...@@ -1789,7 +1792,7 @@ static void rx_intr(sdla_t *card) ...@@ -1789,7 +1792,7 @@ static void rx_intr(sdla_t *card)
void event_intr (sdla_t *card) void event_intr (sdla_t *card)
{ {
netdevice_t* dev = card->wandev.dev; struct net_device* dev = card->wandev.dev;
ppp_private_area_t* ppp_priv_area = dev->priv; ppp_private_area_t* ppp_priv_area = dev->priv;
volatile ppp_flags_t *flags = card->flags; volatile ppp_flags_t *flags = card->flags;
...@@ -1908,7 +1911,7 @@ void event_intr (sdla_t *card) ...@@ -1908,7 +1911,7 @@ void event_intr (sdla_t *card)
void timer_intr (sdla_t *card) void timer_intr (sdla_t *card)
{ {
netdevice_t* dev = card->wandev.dev; struct net_device* dev = card->wandev.dev;
ppp_private_area_t* ppp_priv_area = dev->priv; ppp_private_area_t* ppp_priv_area = dev->priv;
ppp_flags_t *flags = card->flags; ppp_flags_t *flags = card->flags;
...@@ -2105,7 +2108,7 @@ static int handle_IPXWAN(unsigned char *sendpacket, char *devname, unsigned char ...@@ -2105,7 +2108,7 @@ static int handle_IPXWAN(unsigned char *sendpacket, char *devname, unsigned char
static void process_route (sdla_t *card) static void process_route (sdla_t *card)
{ {
ppp_flags_t *flags = card->flags; ppp_flags_t *flags = card->flags;
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
if ((card->u.p.ip_mode == WANOPT_PPP_PEER) && if ((card->u.p.ip_mode == WANOPT_PPP_PEER) &&
...@@ -2147,7 +2150,7 @@ static void process_route (sdla_t *card) ...@@ -2147,7 +2150,7 @@ static void process_route (sdla_t *card)
*/ */
static void retrigger_comm(sdla_t *card) static void retrigger_comm(sdla_t *card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
if (dev && ((jiffies - card->state_tick) > HOLD_DOWN_TIME)) { if (dev && ((jiffies - card->state_tick) > HOLD_DOWN_TIME)) {
...@@ -2164,7 +2167,7 @@ static void retrigger_comm(sdla_t *card) ...@@ -2164,7 +2167,7 @@ static void retrigger_comm(sdla_t *card)
/*============================================================================ /*============================================================================
* Configure S508 adapter. * Configure S508 adapter.
*/ */
static int config508(netdevice_t *dev, sdla_t *card) static int config508(struct net_device *dev, sdla_t *card)
{ {
ppp508_conf_t cfg; ppp508_conf_t cfg;
struct in_device *in_dev = dev->ip_ptr; struct in_device *in_dev = dev->ip_ptr;
...@@ -2336,7 +2339,7 @@ static void show_disc_cause(sdla_t *card, unsigned cause) ...@@ -2336,7 +2339,7 @@ static void show_disc_cause(sdla_t *card, unsigned cause)
/*============================================================================= /*=============================================================================
* Process UDP call of type PTPIPEAB. * Process UDP call of type PTPIPEAB.
*/ */
static void process_udp_mgmt_pkt(sdla_t *card, netdevice_t *dev, static void process_udp_mgmt_pkt(sdla_t *card, struct net_device *dev,
ppp_private_area_t *ppp_priv_area ) ppp_private_area_t *ppp_priv_area )
{ {
unsigned char buf2[5]; unsigned char buf2[5];
...@@ -2847,7 +2850,7 @@ static void init_ppp_tx_rx_buff( sdla_t *card ) ...@@ -2847,7 +2850,7 @@ static void init_ppp_tx_rx_buff( sdla_t *card )
*/ */
static int read_info( sdla_t *card ) static int read_info( sdla_t *card )
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
int err; int err;
...@@ -2896,7 +2899,7 @@ static int read_info( sdla_t *card ) ...@@ -2896,7 +2899,7 @@ static int read_info( sdla_t *card )
static void remove_route( sdla_t *card ) static void remove_route( sdla_t *card )
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
long ip_addr; long ip_addr;
int err; int err;
...@@ -3022,7 +3025,7 @@ static int udp_pkt_type( struct sk_buff *skb, sdla_t *card ) ...@@ -3022,7 +3025,7 @@ static int udp_pkt_type( struct sk_buff *skb, sdla_t *card )
* multicast source IP address. * multicast source IP address.
*/ */
static int chk_bcast_mcast_addr(sdla_t *card, netdevice_t* dev, static int chk_bcast_mcast_addr(sdla_t *card, struct net_device* dev,
struct sk_buff *skb) struct sk_buff *skb)
{ {
u32 src_ip_addr; u32 src_ip_addr;
...@@ -3073,7 +3076,7 @@ void s508_unlock (sdla_t *card, unsigned long *smp_flags) ...@@ -3073,7 +3076,7 @@ void s508_unlock (sdla_t *card, unsigned long *smp_flags)
static int read_connection_info (sdla_t *card) static int read_connection_info (sdla_t *card)
{ {
ppp_mbox_t *mb = card->mbox; ppp_mbox_t *mb = card->mbox;
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
ppp508_connect_info_t *ppp508_connect_info; ppp508_connect_info_t *ppp508_connect_info;
int err; int err;
...@@ -3122,7 +3125,7 @@ static int read_connection_info (sdla_t *card) ...@@ -3122,7 +3125,7 @@ static int read_connection_info (sdla_t *card)
static int config_ppp (sdla_t *card) static int config_ppp (sdla_t *card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
ppp_flags_t *flags = card->flags; ppp_flags_t *flags = card->flags;
ppp_private_area_t *ppp_priv_area = dev->priv; ppp_private_area_t *ppp_priv_area = dev->priv;
...@@ -3230,7 +3233,7 @@ static int config_ppp (sdla_t *card) ...@@ -3230,7 +3233,7 @@ static int config_ppp (sdla_t *card)
* trigger_ppp_poll() function is used to kick * trigger_ppp_poll() function is used to kick
* the ppp_poll routine. * the ppp_poll routine.
*/ */
static void ppp_poll (netdevice_t *dev) static void ppp_poll(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area; ppp_private_area_t *ppp_priv_area;
sdla_t *card; sdla_t *card;
...@@ -3375,7 +3378,7 @@ static void ppp_poll (netdevice_t *dev) ...@@ -3375,7 +3378,7 @@ static void ppp_poll (netdevice_t *dev)
* *
*/ */
static void trigger_ppp_poll (netdevice_t *dev) static void trigger_ppp_poll(struct net_device *dev)
{ {
ppp_private_area_t *ppp_priv_area; ppp_private_area_t *ppp_priv_area;
if ((ppp_priv_area=dev->priv) != NULL){ if ((ppp_priv_area=dev->priv) != NULL){
...@@ -3397,7 +3400,7 @@ static void trigger_ppp_poll (netdevice_t *dev) ...@@ -3397,7 +3400,7 @@ static void trigger_ppp_poll (netdevice_t *dev)
static void ppp_poll_delay (unsigned long dev_ptr) static void ppp_poll_delay (unsigned long dev_ptr)
{ {
netdevice_t *dev = (netdevice_t *)dev_ptr; struct net_device *dev = (struct net_device *)dev_ptr;
trigger_ppp_poll(dev); trigger_ppp_poll(dev);
} }
......
...@@ -241,7 +241,7 @@ static void dbg_kfree(void * v, int line) { ...@@ -241,7 +241,7 @@ static void dbg_kfree(void * v, int line) {
* *
* Assumptions: * Assumptions:
* *
* Description: This is an extention of the 'netdevice_t' * Description: This is an extention of the struct net_device
* we create for each network interface to keep * we create for each network interface to keep
* the rest of X.25 channel-specific data. * the rest of X.25 channel-specific data.
* *
...@@ -271,7 +271,7 @@ typedef struct x25_channel ...@@ -271,7 +271,7 @@ typedef struct x25_channel
atomic_t bh_buff_used; atomic_t bh_buff_used;
sdla_t* card; /* -> owner */ sdla_t* card; /* -> owner */
netdevice_t *dev; /* -> bound devce */ struct net_device *dev; /* -> bound devce */
int ch_idx; int ch_idx;
unsigned char enable_IPX; unsigned char enable_IPX;
...@@ -330,10 +330,10 @@ typedef struct x25_call_info ...@@ -330,10 +330,10 @@ typedef struct x25_call_info
* WAN link driver entry points. These are * WAN link driver entry points. These are
* called by the WAN router module. * called by the WAN router module.
*/ */
static int update (wan_device_t* wandev); static int update(struct wan_device* wandev);
static int new_if (wan_device_t* wandev, netdevice_t* dev, static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf); wanif_conf_t* conf);
static int del_if (wan_device_t* wandev, netdevice_t* dev); static int del_if(struct wan_device* wandev, struct net_device* dev);
static void disable_comm (sdla_t* card); static void disable_comm (sdla_t* card);
static void disable_comm_shutdown(sdla_t *card); static void disable_comm_shutdown(sdla_t *card);
...@@ -343,24 +343,24 @@ static void disable_comm_shutdown(sdla_t *card); ...@@ -343,24 +343,24 @@ static void disable_comm_shutdown(sdla_t *card);
* WANPIPE-specific entry points * WANPIPE-specific entry points
*/ */
static int wpx_exec (struct sdla* card, void* u_cmd, void* u_data); static int wpx_exec (struct sdla* card, void* u_cmd, void* u_data);
static void x25api_bh (netdevice_t *); static void x25api_bh(struct net_device *dev);
static int x25api_bh_cleanup (netdevice_t *); static int x25api_bh_cleanup(struct net_device *dev);
static int bh_enqueue (netdevice_t *, struct sk_buff *); static int bh_enqueue(struct net_device *dev, struct sk_buff *skb);
/*================================================= /*=================================================
* Network device interface * Network device interface
*/ */
static int if_init (netdevice_t* dev); static int if_init(struct net_device* dev);
static int if_open (netdevice_t* dev); static int if_open(struct net_device* dev);
static int if_close (netdevice_t* dev); static int if_close(struct net_device* dev);
static int if_header (struct sk_buff* skb, netdevice_t* dev, static int if_header(struct sk_buff* skb, struct net_device* dev,
unsigned short type, void* daddr, void* saddr, unsigned len); unsigned short type, void* daddr, void* saddr, unsigned len);
static int if_rebuild_hdr (struct sk_buff* skb); static int if_rebuild_hdr (struct sk_buff* skb);
static int if_send (struct sk_buff* skb, netdevice_t* dev); static int if_send(struct sk_buff* skb, struct net_device* dev);
static struct net_device_stats *if_stats (netdevice_t* dev); static struct net_device_stats *if_stats(struct net_device* dev);
static void if_tx_timeout (netdevice_t *dev); static void if_tx_timeout(struct net_device *dev);
/*================================================= /*=================================================
* Interrupt handlers * Interrupt handlers
...@@ -373,8 +373,9 @@ static void event_intr (sdla_t *); ...@@ -373,8 +373,9 @@ static void event_intr (sdla_t *);
static void spur_intr (sdla_t *); static void spur_intr (sdla_t *);
static void timer_intr (sdla_t *); static void timer_intr (sdla_t *);
static int tx_intr_send(sdla_t *, netdevice_t *); static int tx_intr_send(sdla_t *card, struct net_device *dev);
static netdevice_t * move_dev_to_next (sdla_t *, netdevice_t *); static struct net_device *move_dev_to_next(sdla_t *card,
struct net_device *dev);
/*================================================= /*=================================================
* Background polling routines * Background polling routines
...@@ -425,35 +426,41 @@ static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb); ...@@ -425,35 +426,41 @@ static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb);
*/ */
static int connect (sdla_t* card); static int connect (sdla_t* card);
static int disconnect (sdla_t* card); static int disconnect (sdla_t* card);
static netdevice_t* get_dev_by_lcn(wan_device_t* wandev, unsigned lcn); static struct net_device* get_dev_by_lcn(struct wan_device* wandev,
static int chan_connect (netdevice_t* dev); unsigned lcn);
static int chan_disc (netdevice_t* dev); static int chan_connect(struct net_device* dev);
static void set_chan_state (netdevice_t* dev, int state); static int chan_disc(struct net_device* dev);
static int chan_send (netdevice_t* , void* , unsigned, unsigned char); static void set_chan_state(struct net_device* dev, int state);
static int chan_send(struct net_device *dev, void* buff, unsigned data_len,
unsigned char tx_intr);
static unsigned char bps_to_speed_code (unsigned long bps); static unsigned char bps_to_speed_code (unsigned long bps);
static unsigned int dec_to_uint (unsigned char* str, int len); static unsigned int dec_to_uint (unsigned char* str, int len);
static unsigned int hex_to_uint (unsigned char*, int); static unsigned int hex_to_uint (unsigned char*, int);
static void parse_call_info (unsigned char*, x25_call_info_t*); static void parse_call_info (unsigned char*, x25_call_info_t*);
static netdevice_t * find_channel(sdla_t *, unsigned); static struct net_device *find_channel(sdla_t *card, unsigned lcn);
static void bind_lcn_to_dev (sdla_t *, netdevice_t *,unsigned); static void bind_lcn_to_dev(sdla_t *card, struct net_device *dev, unsigned lcn);
static void setup_for_delayed_transmit (netdevice_t*, void*, unsigned); static void setup_for_delayed_transmit(struct net_device *dev,
void *buf, unsigned len);
/*================================================= /*=================================================
* X25 API Functions * X25 API Functions
*/ */
static int wanpipe_pull_data_in_skb (sdla_t *, netdevice_t *, struct sk_buff **); static int wanpipe_pull_data_in_skb(sdla_t *card, struct net_device *dev,
struct sk_buff **);
static void timer_intr_exec(sdla_t *, unsigned char); static void timer_intr_exec(sdla_t *, unsigned char);
static int execute_delayed_cmd (sdla_t*, netdevice_t *, mbox_cmd_t *,char); static int execute_delayed_cmd(sdla_t *card, struct net_device *dev,
mbox_cmd_t *usr_cmd, char bad_cmd);
static int api_incoming_call (sdla_t*, TX25Mbox *, int); static int api_incoming_call (sdla_t*, TX25Mbox *, int);
static int alloc_and_init_skb_buf (sdla_t *,struct sk_buff **, int); static int alloc_and_init_skb_buf (sdla_t *,struct sk_buff **, int);
static void send_delayed_cmd_result(sdla_t *, netdevice_t *dev, TX25Mbox*); static void send_delayed_cmd_result(sdla_t *card, struct net_device *dev,
TX25Mbox* mbox);
static int clear_confirm_event (sdla_t *, TX25Mbox*); static int clear_confirm_event (sdla_t *, TX25Mbox*);
static void send_oob_msg (sdla_t *, netdevice_t *, TX25Mbox *); static void send_oob_msg (sdla_t *card, struct net_device *dev, TX25Mbox *mbox);
static int timer_intr_cmd_exec(sdla_t *card); static int timer_intr_cmd_exec(sdla_t *card);
static void api_oob_event (sdla_t *card,TX25Mbox *mbox); static void api_oob_event (sdla_t *card,TX25Mbox *mbox);
static int check_bad_command (sdla_t *, netdevice_t *); static int check_bad_command(sdla_t *card, struct net_device *dev);
static int channel_disconnect (sdla_t*, netdevice_t *); static int channel_disconnect(sdla_t* card, struct net_device *dev);
static void hdlc_link_down (sdla_t*); static void hdlc_link_down (sdla_t*);
/*================================================= /*=================================================
...@@ -464,7 +471,9 @@ static int udp_pkt_type( struct sk_buff *, sdla_t*); ...@@ -464,7 +471,9 @@ static int udp_pkt_type( struct sk_buff *, sdla_t*);
static int reply_udp( unsigned char *, unsigned int); static int reply_udp( unsigned char *, unsigned int);
static void init_x25_channel_struct( x25_channel_t *); static void init_x25_channel_struct( x25_channel_t *);
static void init_global_statistics( sdla_t *); static void init_global_statistics( sdla_t *);
static int store_udp_mgmt_pkt(int, char, sdla_t*, netdevice_t *, struct sk_buff *, int); static int store_udp_mgmt_pkt(int udp_type, char udp_pkt_src, sdla_t *card,
struct net_device *dev,
struct sk_buff *skb, int lcn);
static unsigned short calc_checksum (char *, int); static unsigned short calc_checksum (char *, int);
...@@ -830,7 +839,7 @@ int wpx_init (sdla_t* card, wandev_conf_t* conf) ...@@ -830,7 +839,7 @@ int wpx_init (sdla_t* card, wandev_conf_t* conf)
* <0 Failed (or busy). * <0 Failed (or busy).
*/ */
static int update (wan_device_t* wandev) static int update(struct wan_device* wandev)
{ {
volatile sdla_t* card; volatile sdla_t* card;
TX25Status* status; TX25Status* status;
...@@ -895,7 +904,8 @@ static int update (wan_device_t* wandev) ...@@ -895,7 +904,8 @@ static int update (wan_device_t* wandev)
* Return: 0 Ok * Return: 0 Ok
* <0 Failed (channel will not be created) * <0 Failed (channel will not be created)
*/ */
static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
x25_channel_t* chan; x25_channel_t* chan;
...@@ -1029,7 +1039,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf) ...@@ -1029,7 +1039,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* dev, wanif_conf_t* conf)
//FIXME Del IF Should be taken out now. //FIXME Del IF Should be taken out now.
static int del_if (wan_device_t* wandev, netdevice_t* dev) static int del_if(struct wan_device* wandev, struct net_device* dev)
{ {
return 0; return 0;
} }
...@@ -1095,11 +1105,11 @@ static void disable_comm(sdla_t* card) ...@@ -1095,11 +1105,11 @@ static void disable_comm(sdla_t* card)
* *
* Return: 0 Ok : Void function. * Return: 0 Ok : Void function.
*/ */
static int if_init (netdevice_t* dev) static int if_init(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
/* Initialize device driver entry points */ /* Initialize device driver entry points */
dev->open = &if_open; dev->open = &if_open;
...@@ -1167,7 +1177,7 @@ static int if_init (netdevice_t* dev) ...@@ -1167,7 +1177,7 @@ static int if_init (netdevice_t* dev)
* <0 Failur: Interface will not come up. * <0 Failur: Interface will not come up.
*/ */
static int if_open (netdevice_t* dev) static int if_open(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1260,7 +1270,7 @@ static int if_open (netdevice_t* dev) ...@@ -1260,7 +1270,7 @@ static int if_open (netdevice_t* dev)
* Return: 0 Ok * Return: 0 Ok
* <0 Failure: Interface will not exit properly. * <0 Failure: Interface will not exit properly.
*/ */
static int if_close (netdevice_t* dev) static int if_close(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1318,8 +1328,9 @@ static int if_close (netdevice_t* dev) ...@@ -1318,8 +1328,9 @@ static int if_close (netdevice_t* dev)
* Return: media header length. * Return: media header length.
*======================================================================*/ *======================================================================*/
static int if_header (struct sk_buff* skb, netdevice_t* dev, static int if_header(struct sk_buff* skb, struct net_device* dev,
unsigned short type, void* daddr, void* saddr, unsigned len) unsigned short type, void* daddr, void* saddr,
unsigned len)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
int hdr_len = dev->hard_header_len; int hdr_len = dev->hard_header_len;
...@@ -1344,7 +1355,7 @@ static int if_header (struct sk_buff* skb, netdevice_t* dev, ...@@ -1344,7 +1355,7 @@ static int if_header (struct sk_buff* skb, netdevice_t* dev,
static int if_rebuild_hdr (struct sk_buff* skb) static int if_rebuild_hdr (struct sk_buff* skb)
{ {
netdevice_t *dev = skb->dev; struct net_device *dev = skb->dev;
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1357,7 +1368,7 @@ static int if_rebuild_hdr (struct sk_buff* skb) ...@@ -1357,7 +1368,7 @@ static int if_rebuild_hdr (struct sk_buff* skb)
/*============================================================================ /*============================================================================
* Handle transmit timeout event from netif watchdog * Handle transmit timeout event from netif watchdog
*/ */
static void if_tx_timeout (netdevice_t *dev) static void if_tx_timeout(struct net_device *dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -1394,7 +1405,7 @@ static void if_tx_timeout (netdevice_t *dev) ...@@ -1394,7 +1405,7 @@ static void if_tx_timeout (netdevice_t *dev)
* *
*========================================================================*/ *========================================================================*/
static int if_send (struct sk_buff* skb, netdevice_t* dev) static int if_send(struct sk_buff* skb, struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1527,8 +1538,8 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev) ...@@ -1527,8 +1538,8 @@ static int if_send (struct sk_buff* skb, netdevice_t* dev)
* interrupt. * interrupt.
*===========================================================================*/ *===========================================================================*/
static void setup_for_delayed_transmit (netdevice_t* dev, void* buf, static void setup_for_delayed_transmit(struct net_device* dev, void* buf,
unsigned len) unsigned len)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -1579,7 +1590,7 @@ static void setup_for_delayed_transmit (netdevice_t* dev, void* buf, ...@@ -1579,7 +1590,7 @@ static void setup_for_delayed_transmit (netdevice_t* dev, void* buf,
* Return a pointer to struct enet_statistics. * Return a pointer to struct enet_statistics.
* *
*==============================================================*/ *==============================================================*/
static struct net_device_stats *if_stats (netdevice_t* dev) static struct net_device_stats *if_stats(struct net_device* dev)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
...@@ -1675,7 +1686,7 @@ static void rx_intr (sdla_t* card) ...@@ -1675,7 +1686,7 @@ static void rx_intr (sdla_t* card)
{ {
TX25Mbox* rxmb = card->rxmb; TX25Mbox* rxmb = card->rxmb;
unsigned lcn = rxmb->cmd.lcn; unsigned lcn = rxmb->cmd.lcn;
netdevice_t* dev = find_channel(card,lcn); struct net_device* dev = find_channel(card,lcn);
x25_channel_t* chan; x25_channel_t* chan;
struct sk_buff* skb=NULL; struct sk_buff* skb=NULL;
...@@ -1773,7 +1784,8 @@ static void rx_intr (sdla_t* card) ...@@ -1773,7 +1784,8 @@ static void rx_intr (sdla_t* card)
} }
static int wanpipe_pull_data_in_skb (sdla_t *card, netdevice_t *dev, struct sk_buff **skb) static int wanpipe_pull_data_in_skb(sdla_t *card, struct net_device *dev,
struct sk_buff **skb)
{ {
void *bufptr; void *bufptr;
TX25Mbox* rxmb = card->rxmb; TX25Mbox* rxmb = card->rxmb;
...@@ -1883,7 +1895,7 @@ static int wanpipe_pull_data_in_skb (sdla_t *card, netdevice_t *dev, struct sk_b ...@@ -1883,7 +1895,7 @@ static int wanpipe_pull_data_in_skb (sdla_t *card, netdevice_t *dev, struct sk_b
static void tx_intr (sdla_t* card) static void tx_intr (sdla_t* card)
{ {
netdevice_t *dev; struct net_device *dev;
TX25Status* status = card->flags; TX25Status* status = card->flags;
unsigned char more_to_tx=0; unsigned char more_to_tx=0;
x25_channel_t *chan=NULL; x25_channel_t *chan=NULL;
...@@ -1977,14 +1989,13 @@ static void tx_intr (sdla_t* card) ...@@ -1977,14 +1989,13 @@ static void tx_intr (sdla_t* card)
*===============================================================*/ *===============================================================*/
netdevice_t * move_dev_to_next (sdla_t *card, netdevice_t *dev) struct net_device *move_dev_to_next(sdla_t *card, struct net_device *dev)
{ {
if (card->u.x.no_dev != 1){ if (card->u.x.no_dev != 1){
if (*((netdevice_t**)dev->priv) == NULL){ if (!*((struct net_device **)dev->priv))
return card->wandev.dev; return card->wandev.dev;
}else{ else
return *((netdevice_t**)dev->priv); return *((struct net_device **)dev->priv);
}
} }
return dev; return dev;
} }
...@@ -1995,7 +2006,7 @@ netdevice_t * move_dev_to_next (sdla_t *card, netdevice_t *dev) ...@@ -1995,7 +2006,7 @@ netdevice_t * move_dev_to_next (sdla_t *card, netdevice_t *dev)
* *
*===============================================================*/ *===============================================================*/
static int tx_intr_send(sdla_t *card, netdevice_t *dev) static int tx_intr_send(sdla_t *card, struct net_device *dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
...@@ -2058,7 +2069,7 @@ static void timer_intr (sdla_t *card) ...@@ -2058,7 +2069,7 @@ static void timer_intr (sdla_t *card)
}else if (card->u.x.timer_int_enabled & TMR_INT_ENABLED_POLL_ACTIVE) { }else if (card->u.x.timer_int_enabled & TMR_INT_ENABLED_POLL_ACTIVE) {
netdevice_t *dev = card->u.x.poll_device; struct net_device *dev = card->u.x.poll_device;
x25_channel_t *chan = NULL; x25_channel_t *chan = NULL;
if (!dev){ if (!dev){
...@@ -2079,7 +2090,7 @@ static void timer_intr (sdla_t *card) ...@@ -2079,7 +2090,7 @@ static void timer_intr (sdla_t *card)
wanpipe_set_state(card, WAN_CONNECTED); wanpipe_set_state(card, WAN_CONNECTED);
if (card->u.x.LAPB_hdlc){ if (card->u.x.LAPB_hdlc){
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
set_chan_state(dev,WAN_CONNECTED); set_chan_state(dev,WAN_CONNECTED);
send_delayed_cmd_result(card,dev,card->mbox); send_delayed_cmd_result(card,dev,card->mbox);
} }
...@@ -2135,7 +2146,7 @@ static void status_intr (sdla_t* card) ...@@ -2135,7 +2146,7 @@ static void status_intr (sdla_t* card)
TX25Mbox* mbox = card->mbox; TX25Mbox* mbox = card->mbox;
TX25ModemStatus *modem_status; TX25ModemStatus *modem_status;
netdevice_t *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
int err; int err;
...@@ -2164,7 +2175,8 @@ static void status_intr (sdla_t* card) ...@@ -2164,7 +2175,8 @@ static void status_intr (sdla_t* card)
mbox->cmd.result = 0x08; mbox->cmd.result = 0x08;
/* Send a OOB to all connected sockets */ /* Send a OOB to all connected sockets */
for (dev = card->wandev.dev; dev; dev = *((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device**)dev->priv)) {
chan=dev->priv; chan=dev->priv;
if (chan->common.usedby == API){ if (chan->common.usedby == API){
send_oob_msg(card,dev,mbox); send_oob_msg(card,dev,mbox);
...@@ -2294,7 +2306,7 @@ static void poll_connecting (sdla_t* card) ...@@ -2294,7 +2306,7 @@ static void poll_connecting (sdla_t* card)
static void poll_disconnected (sdla_t* card) static void poll_disconnected (sdla_t* card)
{ {
netdevice_t *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
TX25Status* status = card->flags; TX25Status* status = card->flags;
...@@ -2331,10 +2343,11 @@ static void poll_disconnected (sdla_t* card) ...@@ -2331,10 +2343,11 @@ static void poll_disconnected (sdla_t* card)
static void poll_active (sdla_t* card) static void poll_active (sdla_t* card)
{ {
netdevice_t* dev; struct net_device* dev;
TX25Status* status = card->flags; TX25Status* status = card->flags;
for (dev = card->wandev.dev; dev; dev = *((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)){
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
/* If SVC has been idle long enough, close virtual circuit */ /* If SVC has been idle long enough, close virtual circuit */
...@@ -3101,9 +3114,9 @@ static int x25_error (sdla_t* card, int err, int cmd, int lcn) ...@@ -3101,9 +3114,9 @@ static int x25_error (sdla_t* card, int err, int cmd, int lcn)
static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
{ {
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
int new_lcn = mb->cmd.lcn; int new_lcn = mb->cmd.lcn;
netdevice_t* dev = get_dev_by_lcn(wandev, new_lcn); struct net_device* dev = get_dev_by_lcn(wandev, new_lcn);
x25_channel_t* chan = NULL; x25_channel_t* chan = NULL;
int accept = 0; /* set to '1' if o.k. to accept call */ int accept = 0; /* set to '1' if o.k. to accept call */
unsigned int user_data; unsigned int user_data;
...@@ -3155,7 +3168,7 @@ static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3155,7 +3168,7 @@ static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
user_data = hex_to_uint(info->user,2); user_data = hex_to_uint(info->user,2);
/* Find available channel */ /* Find available channel */
for (dev = wandev->dev; dev; dev = *((netdevice_t**)dev->priv)){ for (dev = wandev->dev; dev; dev = *((struct net_device **)dev->priv)) {
chan = dev->priv; chan = dev->priv;
if (chan->common.usedby == API) if (chan->common.usedby == API)
...@@ -3252,7 +3265,7 @@ static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3252,7 +3265,7 @@ static int incoming_call (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
static int call_accepted (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) static int call_accepted (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
{ {
unsigned new_lcn = mb->cmd.lcn; unsigned new_lcn = mb->cmd.lcn;
netdevice_t* dev = find_channel(card, new_lcn); struct net_device* dev = find_channel(card, new_lcn);
x25_channel_t* chan; x25_channel_t* chan;
if (dev == NULL){ if (dev == NULL){
...@@ -3292,7 +3305,7 @@ static int call_accepted (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3292,7 +3305,7 @@ static int call_accepted (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
static int call_cleared (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) static int call_cleared (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
{ {
unsigned new_lcn = mb->cmd.lcn; unsigned new_lcn = mb->cmd.lcn;
netdevice_t* dev = find_channel(card, new_lcn); struct net_device* dev = find_channel(card, new_lcn);
x25_channel_t *chan; x25_channel_t *chan;
unsigned char old_state; unsigned char old_state;
...@@ -3336,8 +3349,8 @@ static int call_cleared (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3336,8 +3349,8 @@ static int call_cleared (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
{ {
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
netdevice_t* dev; struct net_device* dev;
x25_channel_t *chan; x25_channel_t *chan;
unsigned char old_state; unsigned char old_state;
...@@ -3346,7 +3359,7 @@ static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3346,7 +3359,7 @@ static int restart_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
card->devname, mb->cmd.cause, mb->cmd.diagn); card->devname, mb->cmd.cause, mb->cmd.diagn);
/* down all logical channels */ /* down all logical channels */
for (dev = wandev->dev; dev; dev = *((netdevice_t**)dev->priv)){ for (dev = wandev->dev; dev; dev = *((struct net_device **)dev->priv)) {
chan=dev->priv; chan=dev->priv;
old_state = chan->common.state; old_state = chan->common.state;
...@@ -3377,7 +3390,7 @@ static int timeout_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb) ...@@ -3377,7 +3390,7 @@ static int timeout_event (sdla_t* card, int cmd, int lcn, TX25Mbox* mb)
if (mb->cmd.pktType == 0x05) /* call request time out */ if (mb->cmd.pktType == 0x05) /* call request time out */
{ {
netdevice_t* dev = find_channel(card,new_lcn); struct net_device* dev = find_channel(card,new_lcn);
printk(KERN_INFO "%s: X.25 call timed timeout on LCN %d!\n", printk(KERN_INFO "%s: X.25 call timed timeout on LCN %d!\n",
card->devname, new_lcn); card->devname, new_lcn);
...@@ -3447,11 +3460,12 @@ static int disconnect (sdla_t* card) ...@@ -3447,11 +3460,12 @@ static int disconnect (sdla_t* card)
* Find network device by its channel number. * Find network device by its channel number.
*/ */
static netdevice_t* get_dev_by_lcn (wan_device_t* wandev, unsigned lcn) static struct net_device* get_dev_by_lcn(struct wan_device* wandev,
unsigned lcn)
{ {
netdevice_t* dev; struct net_device* dev;
for (dev = wandev->dev; dev; dev = *((netdevice_t**)dev->priv)) for (dev = wandev->dev; dev; dev = *((struct net_device **)dev->priv))
if (((x25_channel_t*)dev->priv)->common.lcn == lcn) if (((x25_channel_t*)dev->priv)->common.lcn == lcn)
break; break;
return dev; return dev;
...@@ -3467,7 +3481,7 @@ static netdevice_t* get_dev_by_lcn (wan_device_t* wandev, unsigned lcn) ...@@ -3467,7 +3481,7 @@ static netdevice_t* get_dev_by_lcn (wan_device_t* wandev, unsigned lcn)
* <0 failure * <0 failure
*/ */
static int chan_connect (netdevice_t* dev) static int chan_connect(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -3500,7 +3514,7 @@ static int chan_connect (netdevice_t* dev) ...@@ -3500,7 +3514,7 @@ static int chan_connect (netdevice_t* dev)
* o if SVC then clear X.25 call * o if SVC then clear X.25 call
*/ */
static int chan_disc (netdevice_t* dev) static int chan_disc(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
...@@ -3523,7 +3537,7 @@ static int chan_disc (netdevice_t* dev) ...@@ -3523,7 +3537,7 @@ static int chan_disc (netdevice_t* dev)
* Set logical channel state. * Set logical channel state.
*/ */
static void set_chan_state (netdevice_t* dev, int state) static void set_chan_state(struct net_device* dev, int state)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -3613,7 +3627,8 @@ static void set_chan_state (netdevice_t* dev, int state) ...@@ -3613,7 +3627,8 @@ static void set_chan_state (netdevice_t* dev, int state)
* to the router. * to the router.
*/ */
static int chan_send (netdevice_t* dev, void* buff, unsigned data_len, unsigned char tx_intr) static int chan_send(struct net_device* dev, void* buff, unsigned data_len,
unsigned char tx_intr)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -4080,7 +4095,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_ ...@@ -4080,7 +4095,7 @@ static void switch_net_numbers(unsigned char *sendpacket, unsigned long network_
*===============================================================*/ *===============================================================*/
netdevice_t * find_channel(sdla_t *card, unsigned lcn) struct net_device *find_channel(sdla_t *card, unsigned lcn)
{ {
if (card->u.x.LAPB_hdlc){ if (card->u.x.LAPB_hdlc){
...@@ -4127,7 +4142,7 @@ netdevice_t * find_channel(sdla_t *card, unsigned lcn) ...@@ -4127,7 +4142,7 @@ netdevice_t * find_channel(sdla_t *card, unsigned lcn)
} }
} }
void bind_lcn_to_dev (sdla_t *card, netdevice_t *dev,unsigned lcn) void bind_lcn_to_dev(sdla_t *card, struct net_device *dev, unsigned lcn)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
...@@ -4154,7 +4169,7 @@ void bind_lcn_to_dev (sdla_t *card, netdevice_t *dev,unsigned lcn) ...@@ -4154,7 +4169,7 @@ void bind_lcn_to_dev (sdla_t *card, netdevice_t *dev,unsigned lcn)
* *
*==============================================================*/ *==============================================================*/
static void x25api_bh (netdevice_t * dev) static void x25api_bh(struct net_device* dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t* card = chan->card; sdla_t* card = chan->card;
...@@ -4230,7 +4245,7 @@ static void x25api_bh (netdevice_t * dev) ...@@ -4230,7 +4245,7 @@ static void x25api_bh (netdevice_t * dev)
* *
*==============================================================*/ *==============================================================*/
static int x25api_bh_cleanup (netdevice_t *dev) static int x25api_bh_cleanup(struct net_device *dev)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -4269,7 +4284,7 @@ static int x25api_bh_cleanup (netdevice_t *dev) ...@@ -4269,7 +4284,7 @@ static int x25api_bh_cleanup (netdevice_t *dev)
* *
*==============================================================*/ *==============================================================*/
static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb) static int bh_enqueue(struct net_device *dev, struct sk_buff *skb)
{ {
x25_channel_t* chan = dev->priv; x25_channel_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -4309,7 +4324,7 @@ static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb) ...@@ -4309,7 +4324,7 @@ static int bh_enqueue (netdevice_t *dev, struct sk_buff *skb)
static int timer_intr_cmd_exec (sdla_t* card) static int timer_intr_cmd_exec (sdla_t* card)
{ {
netdevice_t *dev; struct net_device *dev;
unsigned char more_to_exec=0; unsigned char more_to_exec=0;
volatile x25_channel_t *chan=NULL; volatile x25_channel_t *chan=NULL;
int i=0,bad_cmd=0,err=0; int i=0,bad_cmd=0,err=0;
...@@ -4436,7 +4451,8 @@ static int timer_intr_cmd_exec (sdla_t* card) ...@@ -4436,7 +4451,8 @@ static int timer_intr_cmd_exec (sdla_t* card)
* *
*===============================================================*/ *===============================================================*/
static int execute_delayed_cmd (sdla_t* card, netdevice_t *dev, mbox_cmd_t *usr_cmd,char bad_cmd) static int execute_delayed_cmd(sdla_t* card, struct net_device *dev,
mbox_cmd_t *usr_cmd, char bad_cmd)
{ {
TX25Mbox* mbox = card->mbox; TX25Mbox* mbox = card->mbox;
int err; int err;
...@@ -4669,7 +4685,8 @@ static int api_incoming_call (sdla_t* card, TX25Mbox *mbox, int lcn) ...@@ -4669,7 +4685,8 @@ static int api_incoming_call (sdla_t* card, TX25Mbox *mbox, int lcn)
* the result to a waiting sock. * the result to a waiting sock.
* *
*===============================================================*/ *===============================================================*/
static void send_delayed_cmd_result(sdla_t *card, netdevice_t *dev, TX25Mbox* mbox) static void send_delayed_cmd_result(sdla_t *card, struct net_device *dev,
TX25Mbox* mbox)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
mbox_cmd_t *usr_cmd = (mbox_cmd_t *)chan->common.mbox; mbox_cmd_t *usr_cmd = (mbox_cmd_t *)chan->common.mbox;
...@@ -4724,7 +4741,7 @@ static void send_delayed_cmd_result(sdla_t *card, netdevice_t *dev, TX25Mbox* mb ...@@ -4724,7 +4741,7 @@ static void send_delayed_cmd_result(sdla_t *card, netdevice_t *dev, TX25Mbox* mb
static int clear_confirm_event (sdla_t *card, TX25Mbox* mb) static int clear_confirm_event (sdla_t *card, TX25Mbox* mb)
{ {
netdevice_t *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
unsigned char old_state; unsigned char old_state;
...@@ -4772,7 +4789,7 @@ static int clear_confirm_event (sdla_t *card, TX25Mbox* mb) ...@@ -4772,7 +4789,7 @@ static int clear_confirm_event (sdla_t *card, TX25Mbox* mb)
* *
*===============================================================*/ *===============================================================*/
static void send_oob_msg (sdla_t *card, netdevice_t *dev, TX25Mbox *mbox) static void send_oob_msg(sdla_t *card, struct net_device *dev, TX25Mbox *mbox)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
mbox_cmd_t *usr_cmd = (mbox_cmd_t *)chan->common.mbox; mbox_cmd_t *usr_cmd = (mbox_cmd_t *)chan->common.mbox;
...@@ -4870,7 +4887,7 @@ static int alloc_and_init_skb_buf (sdla_t *card, struct sk_buff **skb, int len) ...@@ -4870,7 +4887,7 @@ static int alloc_and_init_skb_buf (sdla_t *card, struct sk_buff **skb, int len)
static void api_oob_event (sdla_t *card,TX25Mbox *mbox) static void api_oob_event (sdla_t *card,TX25Mbox *mbox)
{ {
netdevice_t *dev = find_channel(card,mbox->cmd.lcn); struct net_device *dev = find_channel(card, mbox->cmd.lcn);
x25_channel_t *chan; x25_channel_t *chan;
if (!dev) if (!dev)
...@@ -4886,7 +4903,7 @@ static void api_oob_event (sdla_t *card,TX25Mbox *mbox) ...@@ -4886,7 +4903,7 @@ static void api_oob_event (sdla_t *card,TX25Mbox *mbox)
static int channel_disconnect (sdla_t* card, netdevice_t *dev) static int channel_disconnect(sdla_t* card, struct net_device *dev)
{ {
int err; int err;
...@@ -4960,7 +4977,7 @@ static void hdlc_link_down (sdla_t *card) ...@@ -4960,7 +4977,7 @@ static void hdlc_link_down (sdla_t *card)
} }
static int check_bad_command (sdla_t* card, netdevice_t *dev) static int check_bad_command(sdla_t* card, struct net_device *dev)
{ {
x25_channel_t *chan = dev->priv; x25_channel_t *chan = dev->priv;
int bad_cmd = 0; int bad_cmd = 0;
...@@ -5013,7 +5030,7 @@ static int process_udp_mgmt_pkt(sdla_t *card) ...@@ -5013,7 +5030,7 @@ static int process_udp_mgmt_pkt(sdla_t *card)
TX25Mbox *mbox = card->mbox; TX25Mbox *mbox = card->mbox;
int err; int err;
int udp_mgmt_req_valid = 1; int udp_mgmt_req_valid = 1;
netdevice_t *dev; struct net_device *dev;
x25_channel_t *chan; x25_channel_t *chan;
unsigned short lcn; unsigned short lcn;
struct timeval tv; struct timeval tv;
...@@ -5337,7 +5354,8 @@ unsigned short calc_checksum (char *data, int len) ...@@ -5337,7 +5354,8 @@ unsigned short calc_checksum (char *data, int len)
*/ */
static int store_udp_mgmt_pkt(int udp_type, char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(int udp_type, char udp_pkt_src, sdla_t* card,
netdevice_t *dev, struct sk_buff *skb, int lcn) struct net_device *dev, struct sk_buff *skb,
int lcn)
{ {
int udp_pkt_stored = 0; int udp_pkt_stored = 0;
......
...@@ -64,8 +64,6 @@ ...@@ -64,8 +64,6 @@
#include <linux/sdlapci.h> #include <linux/sdlapci.h>
#include <linux/if_wanpipe_common.h> #include <linux/if_wanpipe_common.h>
#define netdevice_t struct net_device
#include <asm/uaccess.h> /* kernel <-> user copy */ #include <asm/uaccess.h> /* kernel <-> user copy */
#include <linux/inetdevice.h> #include <linux/inetdevice.h>
...@@ -184,9 +182,9 @@ int init_module (void); ...@@ -184,9 +182,9 @@ int init_module (void);
void cleanup_module (void); void cleanup_module (void);
/* WAN link driver entry points */ /* WAN link driver entry points */
static int setup (wan_device_t* wandev, wandev_conf_t* conf); static int setup(struct wan_device* wandev, wandev_conf_t* conf);
static int shutdown (wan_device_t* wandev); static int shutdown(struct wan_device* wandev);
static int ioctl (wan_device_t* wandev, unsigned cmd, unsigned long arg); static int ioctl(struct wan_device* wandev, unsigned cmd, unsigned long arg);
/* IOCTL handlers */ /* IOCTL handlers */
static int ioctl_dump (sdla_t* card, sdla_dump_t* u_dump); static int ioctl_dump (sdla_t* card, sdla_dump_t* u_dump);
...@@ -279,7 +277,7 @@ int wanpipe_init(void) ...@@ -279,7 +277,7 @@ int wanpipe_init(void)
/* Register adapters with WAN router */ /* Register adapters with WAN router */
for (cnt = 0; cnt < ncards; ++ cnt) { for (cnt = 0; cnt < ncards; ++ cnt) {
sdla_t* card = &card_array[cnt]; sdla_t* card = &card_array[cnt];
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
card->next = NULL; card->next = NULL;
sprintf(card->devname, "%s%d", drvname, cnt + 1); sprintf(card->devname, "%s%d", drvname, cnt + 1);
...@@ -352,7 +350,7 @@ void cleanup_module (void) ...@@ -352,7 +350,7 @@ void cleanup_module (void)
* any). * any).
*/ */
static int setup (wan_device_t* wandev, wandev_conf_t* conf) static int setup(struct wan_device* wandev, wandev_conf_t* conf)
{ {
sdla_t* card; sdla_t* card;
int err = 0; int err = 0;
...@@ -779,7 +777,7 @@ static int check_s514_conflicts(sdla_t* card,wandev_conf_t* conf, int *irq) ...@@ -779,7 +777,7 @@ static int check_s514_conflicts(sdla_t* card,wandev_conf_t* conf, int *irq)
* This function is called by the router when device is being unregistered or * This function is called by the router when device is being unregistered or
* when it handles ROUTER_DOWN IOCTL. * when it handles ROUTER_DOWN IOCTL.
*/ */
static int shutdown (wan_device_t* wandev) static int shutdown(struct wan_device* wandev)
{ {
sdla_t *card; sdla_t *card;
int err=0; int err=0;
...@@ -888,7 +886,7 @@ static void release_hw (sdla_t *card) ...@@ -888,7 +886,7 @@ static void release_hw (sdla_t *card)
* This function is called when router handles one of the reserved user * This function is called when router handles one of the reserved user
* IOCTLs. Note that 'arg' stil points to user address space. * IOCTLs. Note that 'arg' stil points to user address space.
*/ */
static int ioctl (wan_device_t* wandev, unsigned cmd, unsigned long arg) static int ioctl(struct wan_device* wandev, unsigned cmd, unsigned long arg)
{ {
sdla_t* card; sdla_t* card;
int err; int err;
...@@ -1255,7 +1253,7 @@ void wanpipe_mark_bh (void) ...@@ -1255,7 +1253,7 @@ void wanpipe_mark_bh (void)
} }
} }
void wakeup_sk_bh (netdevice_t *dev) void wakeup_sk_bh(struct net_device *dev)
{ {
wanpipe_common_t *chan = dev->priv; wanpipe_common_t *chan = dev->priv;
...@@ -1268,7 +1266,7 @@ void wakeup_sk_bh (netdevice_t *dev) ...@@ -1268,7 +1266,7 @@ void wakeup_sk_bh (netdevice_t *dev)
} }
} }
int change_dev_flags (netdevice_t *dev, unsigned flags) int change_dev_flags(struct net_device *dev, unsigned flags)
{ {
struct ifreq if_info; struct ifreq if_info;
mm_segment_t fs = get_fs(); mm_segment_t fs = get_fs();
...@@ -1285,7 +1283,7 @@ int change_dev_flags (netdevice_t *dev, unsigned flags) ...@@ -1285,7 +1283,7 @@ int change_dev_flags (netdevice_t *dev, unsigned flags)
return err; return err;
} }
unsigned long get_ip_address (netdevice_t *dev, int option) unsigned long get_ip_address(struct net_device *dev, int option)
{ {
struct in_ifaddr *ifaddr; struct in_ifaddr *ifaddr;
...@@ -1323,7 +1321,7 @@ unsigned long get_ip_address (netdevice_t *dev, int option) ...@@ -1323,7 +1321,7 @@ unsigned long get_ip_address (netdevice_t *dev, int option)
return 0; return 0;
} }
void add_gateway(sdla_t *card, netdevice_t *dev) void add_gateway(sdla_t *card, struct net_device *dev)
{ {
mm_segment_t oldfs; mm_segment_t oldfs;
struct rtentry route; struct rtentry route;
......
...@@ -130,19 +130,19 @@ extern void enable_irq(unsigned int); ...@@ -130,19 +130,19 @@ extern void enable_irq(unsigned int);
/****** Function Prototypes *************************************************/ /****** Function Prototypes *************************************************/
/* WAN link driver entry points. These are called by the WAN router module. */ /* WAN link driver entry points. These are called by the WAN router module. */
static int update (wan_device_t* wandev); static int update(struct wan_device* wandev);
static int new_if (wan_device_t* wandev, netdevice_t* dev, static int new_if(struct wan_device* wandev, struct net_device* dev,
wanif_conf_t* conf); wanif_conf_t* conf);
static int del_if (wan_device_t* wandev, netdevice_t* dev); static int del_if(struct wan_device* wandev, struct net_device* dev);
/* Network device interface */ /* Network device interface */
static int if_init (netdevice_t* dev); static int if_init(struct net_device* dev);
static int if_open (netdevice_t* dev); static int if_open(struct net_device* dev);
static int if_close (netdevice_t* dev); static int if_close(struct net_device* dev);
static int if_send (struct sk_buff* skb, netdevice_t* dev); static int if_send(struct sk_buff* skb, struct net_device* dev);
static struct net_device_stats* if_stats (netdevice_t* dev); static struct net_device_stats* if_stats(struct net_device* dev);
static void if_tx_timeout (netdevice_t *dev); static void if_tx_timeout(struct net_device *dev);
/* CHDLC Firmware interface functions */ /* CHDLC Firmware interface functions */
static int chdlc_configure (sdla_t* card, void* data); static int chdlc_configure (sdla_t* card, void* data);
...@@ -158,7 +158,7 @@ static int config_chdlc (sdla_t *card); ...@@ -158,7 +158,7 @@ static int config_chdlc (sdla_t *card);
/* Miscellaneous CHDLC Functions */ /* Miscellaneous CHDLC Functions */
static int set_chdlc_config (sdla_t* card); static int set_chdlc_config (sdla_t* card);
static void init_chdlc_tx_rx_buff( sdla_t* card, netdevice_t *dev ); static void init_chdlc_tx_rx_buff(sdla_t* card, struct net_device *dev);
static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb); static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb);
static int process_chdlc_exception(sdla_t *card); static int process_chdlc_exception(sdla_t *card);
static int process_global_exception(sdla_t *card); static int process_global_exception(sdla_t *card);
...@@ -176,14 +176,14 @@ static int reply_udp( unsigned char *data, unsigned int mbox_len ); ...@@ -176,14 +176,14 @@ static int reply_udp( unsigned char *data, unsigned int mbox_len );
static int intr_test( sdla_t* card); static int intr_test( sdla_t* card);
static int udp_pkt_type( struct sk_buff *skb , sdla_t* card); static int udp_pkt_type( struct sk_buff *skb , sdla_t* card);
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area); chdlc_private_area_t* chdlc_priv_area);
static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev, static int process_udp_mgmt_pkt(sdla_t* card, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area); chdlc_private_area_t* chdlc_priv_area);
static unsigned short calc_checksum (char *, int); static unsigned short calc_checksum (char *, int);
static void s508_lock (sdla_t *card, unsigned long *smp_flags); static void s508_lock (sdla_t *card, unsigned long *smp_flags);
static void s508_unlock (sdla_t *card, unsigned long *smp_flags); static void s508_unlock (sdla_t *card, unsigned long *smp_flags);
static void send_ppp_term_request (netdevice_t*); static void send_ppp_term_request(struct net_device *dev);
static int Intr_test_counter; static int Intr_test_counter;
...@@ -456,10 +456,10 @@ int wsppp_init (sdla_t* card, wandev_conf_t* conf) ...@@ -456,10 +456,10 @@ int wsppp_init (sdla_t* card, wandev_conf_t* conf)
* as to minimize the time that we are inside the interrupt handler. * as to minimize the time that we are inside the interrupt handler.
* *
*/ */
static int update (wan_device_t* wandev) static int update(struct wan_device* wandev)
{ {
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
netdevice_t* dev; struct net_device* dev;
volatile chdlc_private_area_t* chdlc_priv_area; volatile chdlc_private_area_t* chdlc_priv_area;
SHARED_MEMORY_INFO_STRUCT *flags; SHARED_MEMORY_INFO_STRUCT *flags;
unsigned long timeout; unsigned long timeout;
...@@ -522,11 +522,12 @@ static int update (wan_device_t* wandev) ...@@ -522,11 +522,12 @@ static int update (wan_device_t* wandev)
* Return: 0 o.k. * Return: 0 o.k.
* < 0 failure (channel will not be created) * < 0 failure (channel will not be created)
*/ */
static int new_if (wan_device_t* wandev, netdevice_t* pdev, wanif_conf_t* conf) static int new_if(struct wan_device* wandev, struct net_device* pdev,
wanif_conf_t* conf)
{ {
struct ppp_device *pppdev = (struct ppp_device *)pdev; struct ppp_device *pppdev = (struct ppp_device *)pdev;
netdevice_t *dev=NULL; struct net_device *dev = NULL;
struct sppp *sp; struct sppp *sp;
sdla_t* card = wandev->private; sdla_t* card = wandev->private;
chdlc_private_area_t* chdlc_priv_area; chdlc_private_area_t* chdlc_priv_area;
...@@ -616,7 +617,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* pdev, wanif_conf_t* conf) ...@@ -616,7 +617,7 @@ static int new_if (wan_device_t* wandev, netdevice_t* pdev, wanif_conf_t* conf)
/*============================================================================ /*============================================================================
* Delete logical channel. * Delete logical channel.
*/ */
static int del_if (wan_device_t* wandev, netdevice_t* dev) static int del_if(struct wan_device* wandev, struct net_device* dev)
{ {
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
sdla_t *card = chdlc_priv_area->card; sdla_t *card = chdlc_priv_area->card;
...@@ -651,11 +652,11 @@ static int del_if (wan_device_t* wandev, netdevice_t* dev) ...@@ -651,11 +652,11 @@ static int del_if (wan_device_t* wandev, netdevice_t* dev)
* interface registration. Returning anything but zero will fail interface * interface registration. Returning anything but zero will fail interface
* registration. * registration.
*/ */
static int if_init (netdevice_t* dev) static int if_init(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
wan_device_t* wandev = &card->wandev; struct wan_device* wandev = &card->wandev;
/* NOTE: Most of the dev initialization was /* NOTE: Most of the dev initialization was
* done in sppp_attach(), called by new_if() * done in sppp_attach(), called by new_if()
...@@ -694,7 +695,7 @@ static int if_init (netdevice_t* dev) ...@@ -694,7 +695,7 @@ static int if_init (netdevice_t* dev)
/*============================================================================ /*============================================================================
* Handle transmit timeout event from netif watchdog * Handle transmit timeout event from netif watchdog
*/ */
static void if_tx_timeout (netdevice_t *dev) static void if_tx_timeout(struct net_device *dev)
{ {
chdlc_private_area_t* chan = dev->priv; chdlc_private_area_t* chan = dev->priv;
sdla_t *card = chan->card; sdla_t *card = chan->card;
...@@ -719,7 +720,7 @@ static void if_tx_timeout (netdevice_t *dev) ...@@ -719,7 +720,7 @@ static void if_tx_timeout (netdevice_t *dev)
* *
* Return 0 if O.k. or errno. * Return 0 if O.k. or errno.
*/ */
static int if_open (netdevice_t* dev) static int if_open(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
...@@ -752,7 +753,7 @@ static int if_open (netdevice_t* dev) ...@@ -752,7 +753,7 @@ static int if_open (netdevice_t* dev)
* o if this is the last close, then disable communications and interrupts. * o if this is the last close, then disable communications and interrupts.
* o reset flags. * o reset flags.
*/ */
static int if_close (netdevice_t* dev) static int if_close(struct net_device* dev)
{ {
chdlc_private_area_t* chdlc_priv_area = dev->priv; chdlc_private_area_t* chdlc_priv_area = dev->priv;
sdla_t* card = chdlc_priv_area->card; sdla_t* card = chdlc_priv_area->card;
...@@ -783,7 +784,7 @@ static int if_close (netdevice_t* dev) ...@@ -783,7 +784,7 @@ static int if_close (netdevice_t* dev)
* 2. Setting tbusy flag will inhibit further transmit requests from the * 2. Setting tbusy flag will inhibit further transmit requests from the
* protocol stack and can be used for flow control with protocol layer. * protocol stack and can be used for flow control with protocol layer.
*/ */
static int if_send (struct sk_buff* skb, netdevice_t* dev) static int if_send(struct sk_buff* skb, struct net_device* dev)
{ {
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
sdla_t *card = chdlc_priv_area->card; sdla_t *card = chdlc_priv_area->card;
...@@ -973,7 +974,7 @@ unsigned short calc_checksum (char *data, int len) ...@@ -973,7 +974,7 @@ unsigned short calc_checksum (char *data, int len)
* Get ethernet-style interface statistics. * Get ethernet-style interface statistics.
* Return a pointer to struct enet_statistics. * Return a pointer to struct enet_statistics.
*/ */
static struct net_device_stats* if_stats (netdevice_t* dev) static struct net_device_stats* if_stats(struct net_device* dev)
{ {
sdla_t *my_card; sdla_t *my_card;
chdlc_private_area_t* chdlc_priv_area; chdlc_private_area_t* chdlc_priv_area;
...@@ -1242,7 +1243,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb) ...@@ -1242,7 +1243,7 @@ static int chdlc_error (sdla_t *card, int err, CHDLC_MAILBOX_STRUCT *mb)
*/ */
STATIC void wsppp_isr (sdla_t* card) STATIC void wsppp_isr (sdla_t* card)
{ {
netdevice_t* dev; struct net_device* dev;
SHARED_MEMORY_INFO_STRUCT* flags = NULL; SHARED_MEMORY_INFO_STRUCT* flags = NULL;
int i; int i;
sdla_t *my_card; sdla_t *my_card;
...@@ -1355,7 +1356,7 @@ STATIC void wsppp_isr (sdla_t* card) ...@@ -1355,7 +1356,7 @@ STATIC void wsppp_isr (sdla_t* card)
*/ */
static void rx_intr (sdla_t* card) static void rx_intr (sdla_t* card)
{ {
netdevice_t *dev; struct net_device *dev;
chdlc_private_area_t *chdlc_priv_area; chdlc_private_area_t *chdlc_priv_area;
SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags; SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags;
CHDLC_DATA_RX_STATUS_EL_STRUCT *rxbuf = card->u.c.rxmb; CHDLC_DATA_RX_STATUS_EL_STRUCT *rxbuf = card->u.c.rxmb;
...@@ -1477,7 +1478,7 @@ static void rx_intr (sdla_t* card) ...@@ -1477,7 +1478,7 @@ static void rx_intr (sdla_t* card)
*/ */
void timer_intr(sdla_t *card) void timer_intr(sdla_t *card)
{ {
netdevice_t* dev; struct net_device* dev;
chdlc_private_area_t* chdlc_priv_area = NULL; chdlc_private_area_t* chdlc_priv_area = NULL;
SHARED_MEMORY_INFO_STRUCT* flags = NULL; SHARED_MEMORY_INFO_STRUCT* flags = NULL;
...@@ -1665,8 +1666,8 @@ static int process_chdlc_exception(sdla_t *card) ...@@ -1665,8 +1666,8 @@ static int process_chdlc_exception(sdla_t *card)
*/ */
static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
struct sk_buff *skb, netdevice_t* dev, struct sk_buff *skb, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area ) chdlc_private_area_t* chdlc_priv_area )
{ {
int udp_pkt_stored = 0; int udp_pkt_stored = 0;
...@@ -1692,7 +1693,7 @@ static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card, ...@@ -1692,7 +1693,7 @@ static int store_udp_mgmt_pkt(char udp_pkt_src, sdla_t* card,
* Process UDP management packet. * Process UDP management packet.
*/ */
static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev, static int process_udp_mgmt_pkt(sdla_t* card, struct net_device* dev,
chdlc_private_area_t* chdlc_priv_area ) chdlc_private_area_t* chdlc_priv_area )
{ {
unsigned char *buf; unsigned char *buf;
...@@ -2076,7 +2077,7 @@ static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev, ...@@ -2076,7 +2077,7 @@ static int process_udp_mgmt_pkt(sdla_t* card, netdevice_t* dev,
* Initialize Receive and Transmit Buffers. * Initialize Receive and Transmit Buffers.
*/ */
static void init_chdlc_tx_rx_buff( sdla_t* card, netdevice_t *dev ) static void init_chdlc_tx_rx_buff(sdla_t* card, struct net_device *dev)
{ {
CHDLC_MAILBOX_STRUCT* mb = card->mbox; CHDLC_MAILBOX_STRUCT* mb = card->mbox;
CHDLC_TX_STATUS_EL_CFG_STRUCT *tx_config; CHDLC_TX_STATUS_EL_CFG_STRUCT *tx_config;
...@@ -2213,7 +2214,7 @@ static int udp_pkt_type(struct sk_buff *skb, sdla_t* card) ...@@ -2213,7 +2214,7 @@ static int udp_pkt_type(struct sk_buff *skb, sdla_t* card)
*/ */
static void port_set_state (sdla_t *card, int state) static void port_set_state (sdla_t *card, int state)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
chdlc_private_area_t *chdlc_priv_area = dev->priv; chdlc_private_area_t *chdlc_priv_area = dev->priv;
if (card->u.c.state != state) if (card->u.c.state != state)
...@@ -2284,7 +2285,7 @@ void s508_unlock (sdla_t *card, unsigned long *smp_flags) ...@@ -2284,7 +2285,7 @@ void s508_unlock (sdla_t *card, unsigned long *smp_flags)
static int config_chdlc (sdla_t *card) static int config_chdlc (sdla_t *card)
{ {
netdevice_t *dev = card->wandev.dev; struct net_device *dev = card->wandev.dev;
SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags; SHARED_MEMORY_INFO_STRUCT *flags = card->u.c.flags;
if (card->u.c.comm_enabled){ if (card->u.c.comm_enabled){
...@@ -2330,7 +2331,7 @@ static int config_chdlc (sdla_t *card) ...@@ -2330,7 +2331,7 @@ static int config_chdlc (sdla_t *card)
} }
static void send_ppp_term_request (netdevice_t *dev) static void send_ppp_term_request(struct net_device *dev)
{ {
struct sk_buff *new_skb; struct sk_buff *new_skb;
unsigned char *buf; unsigned char *buf;
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
typedef struct cycx { typedef struct cycx {
char devname[WAN_DRVNAME_SZ+1]; /* card name */ char devname[WAN_DRVNAME_SZ+1]; /* card name */
cycxhw_t hw; /* hardware configuration */ cycxhw_t hw; /* hardware configuration */
wan_device_t wandev; /* WAN device data space */ struct wan_device wandev; /* WAN device data space */
u32 open_cnt; /* number of open interfaces */ u32 open_cnt; /* number of open interfaces */
u32 state_tick; /* link state timestamp */ u32 state_tick; /* link state timestamp */
spinlock_t lock; spinlock_t lock;
......
...@@ -101,16 +101,12 @@ typedef struct ...@@ -101,16 +101,12 @@ typedef struct
#ifdef __KERNEL__ #ifdef __KERNEL__
#ifndef netdevice_t
#define netdevice_t struct net_device
#endif
/* Private wanpipe socket structures. */ /* Private wanpipe socket structures. */
struct wanpipe_opt struct wanpipe_opt
{ {
void *mbox; /* Mail box */ void *mbox; /* Mail box */
void *card; /* Card bouded to */ void *card; /* Card bouded to */
netdevice_t *dev; /* Bounded device */ struct net_device *dev; /* Bounded device */
unsigned short lcn; /* Binded LCN */ unsigned short lcn; /* Binded LCN */
unsigned char svc; /* 0=pvc, 1=svc */ unsigned char svc; /* 0=pvc, 1=svc */
unsigned char timer; /* flag for delayed transmit*/ unsigned char timer; /* flag for delayed transmit*/
......
...@@ -19,11 +19,8 @@ ...@@ -19,11 +19,8 @@
#include <linux/version.h> #include <linux/version.h>
#define netdevice_t struct net_device
typedef struct { typedef struct {
netdevice_t *slave; struct net_device *slave;
atomic_t packet_sent; atomic_t packet_sent;
atomic_t receive_block; atomic_t receive_block;
atomic_t command; atomic_t command;
...@@ -32,8 +29,8 @@ typedef struct { ...@@ -32,8 +29,8 @@ typedef struct {
long common_critical; long common_critical;
struct timer_list *tx_timer; struct timer_list *tx_timer;
struct sock *sk; /* Wanpipe Sock bind's here */ struct sock *sk; /* Wanpipe Sock bind's here */
int (*func) (struct sk_buff *, netdevice_t *, int (*func)(struct sk_buff *skb, struct net_device *dev,
struct sock *); struct sock *sk);
struct work_struct wanpipe_work; /* deferred keventd work */ struct work_struct wanpipe_work; /* deferred keventd work */
unsigned char rw_bind; /* Sock bind state */ unsigned char rw_bind; /* Sock bind state */
......
...@@ -39,8 +39,6 @@ ...@@ -39,8 +39,6 @@
#ifndef _WANPIPE_H #ifndef _WANPIPE_H
#define _WANPIPE_H #define _WANPIPE_H
#define netdevice_t struct net_device
#include <linux/wanrouter.h> #include <linux/wanrouter.h>
/* Defines */ /* Defines */
...@@ -286,7 +284,7 @@ typedef struct sdla ...@@ -286,7 +284,7 @@ typedef struct sdla
{ {
char devname[WAN_DRVNAME_SZ+1]; /* card name */ char devname[WAN_DRVNAME_SZ+1]; /* card name */
sdlahw_t hw; /* hardware configuration */ sdlahw_t hw; /* hardware configuration */
wan_device_t wandev; /* WAN device data space */ struct wan_device wandev; /* WAN device data space */
unsigned open_cnt; /* number of open interfaces */ unsigned open_cnt; /* number of open interfaces */
unsigned long state_tick; /* link state timestamp */ unsigned long state_tick; /* link state timestamp */
...@@ -335,22 +333,22 @@ typedef struct sdla ...@@ -335,22 +333,22 @@ typedef struct sdla
u32 hi_pvc; u32 hi_pvc;
u32 lo_svc; u32 lo_svc;
u32 hi_svc; u32 hi_svc;
netdevice_t *svc_to_dev_map[MAX_X25_LCN]; struct net_device *svc_to_dev_map[MAX_X25_LCN];
netdevice_t *pvc_to_dev_map[MAX_X25_LCN]; struct net_device *pvc_to_dev_map[MAX_X25_LCN];
netdevice_t *tx_dev; struct net_device *tx_dev;
netdevice_t *cmd_dev; struct net_device *cmd_dev;
u32 no_dev; u32 no_dev;
volatile u8 *hdlc_buf_status; volatile u8 *hdlc_buf_status;
u32 tx_interrupts_pending; u32 tx_interrupts_pending;
u16 timer_int_enabled; u16 timer_int_enabled;
netdevice_t *poll_device; struct net_device *poll_device;
atomic_t command_busy; atomic_t command_busy;
u16 udp_pkt_lgth; u16 udp_pkt_lgth;
u32 udp_type; u32 udp_type;
u8 udp_pkt_src; u8 udp_pkt_src;
u32 udp_lcn; u32 udp_lcn;
netdevice_t * udp_dev; struct net_device *udp_dev;
s8 udp_pkt_data[MAX_LGTH_UDP_MGNT_PKT]; s8 udp_pkt_data[MAX_LGTH_UDP_MGNT_PKT];
u8 LAPB_hdlc; /* Option to turn off X25 and run only LAPB */ u8 LAPB_hdlc; /* Option to turn off X25 and run only LAPB */
...@@ -369,7 +367,7 @@ typedef struct sdla ...@@ -369,7 +367,7 @@ typedef struct sdla
unsigned rx_top; /* S508 receive buffer end */ unsigned rx_top; /* S508 receive buffer end */
unsigned short node_dlci[100]; unsigned short node_dlci[100];
unsigned short dlci_num; unsigned short dlci_num;
netdevice_t *dlci_to_dev_map[991 + 1]; struct net_device *dlci_to_dev_map[991 + 1];
unsigned tx_interrupts_pending; unsigned tx_interrupts_pending;
unsigned short timer_int_enabled; unsigned short timer_int_enabled;
unsigned short udp_pkt_lgth; unsigned short udp_pkt_lgth;
...@@ -382,7 +380,7 @@ typedef struct sdla ...@@ -382,7 +380,7 @@ typedef struct sdla
void *curr_trc_el; /* current trace element */ void *curr_trc_el; /* current trace element */
unsigned short trc_bfr_space; /* trace buffer space */ unsigned short trc_bfr_space; /* trace buffer space */
unsigned char update_comms_stats; unsigned char update_comms_stats;
netdevice_t *arp_dev; struct net_device *arp_dev;
spinlock_t if_send_lock; spinlock_t if_send_lock;
} f; } f;
struct /****** PPP-specific data ***********/ struct /****** PPP-specific data ***********/
...@@ -483,10 +481,10 @@ extern sdla_t * wanpipe_find_card_num (int); ...@@ -483,10 +481,10 @@ extern sdla_t * wanpipe_find_card_num (int);
extern void wanpipe_queue_work (struct work_struct *); extern void wanpipe_queue_work (struct work_struct *);
extern void wanpipe_mark_bh (void); extern void wanpipe_mark_bh (void);
extern void wakeup_sk_bh (netdevice_t *); extern void wakeup_sk_bh(struct net_device *dev);
extern int change_dev_flags (netdevice_t *, unsigned); extern int change_dev_flags(struct net_device *dev, unsigned flags);
extern unsigned long get_ip_address (netdevice_t *dev, int option); extern unsigned long get_ip_address(struct net_device *dev, int option);
extern void add_gateway(sdla_t *, netdevice_t *); extern void add_gateway(sdla_t *card, struct net_device *dev);
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
......
...@@ -44,8 +44,6 @@ ...@@ -44,8 +44,6 @@
* Jan 02, 1997 Gene Kozin Initial version (based on wanpipe.h). * Jan 02, 1997 Gene Kozin Initial version (based on wanpipe.h).
*****************************************************************************/ *****************************************************************************/
#define netdevice_t struct net_device
#include <linux/spinlock.h> /* Support for SMP Locking */ #include <linux/spinlock.h> /* Support for SMP Locking */
#ifndef _ROUTER_H #ifndef _ROUTER_H
...@@ -462,8 +460,7 @@ typedef struct wanif_conf ...@@ -462,8 +460,7 @@ typedef struct wanif_conf
/*---------------------------------------------------------------------------- /*----------------------------------------------------------------------------
* WAN device data space. * WAN device data space.
*/ */
typedef struct wan_device struct wan_device {
{
unsigned magic; /* magic number */ unsigned magic; /* magic number */
char* name; /* -> WAN device name (ASCIIZ) */ char* name; /* -> WAN device name (ASCIIZ) */
void* private; /* -> driver private data */ void* private; /* -> driver private data */
...@@ -506,27 +503,29 @@ typedef struct wan_device ...@@ -506,27 +503,29 @@ typedef struct wan_device
int (*update) (struct wan_device *wandev); int (*update) (struct wan_device *wandev);
int (*ioctl) (struct wan_device *wandev, unsigned cmd, int (*ioctl) (struct wan_device *wandev, unsigned cmd,
unsigned long arg); unsigned long arg);
int (*new_if) (struct wan_device *wandev, netdevice_t *dev, int (*new_if)(struct wan_device *wandev, struct net_device *dev,
wanif_conf_t *conf); wanif_conf_t *conf);
int (*del_if) (struct wan_device *wandev, netdevice_t *dev); int (*del_if)(struct wan_device *wandev, struct net_device *dev);
/****** maintained by the router ****/ /****** maintained by the router ****/
struct wan_device* next; /* -> next device */ struct wan_device* next; /* -> next device */
netdevice_t* dev; /* list of network interfaces */ struct net_device* dev; /* list of network interfaces */
unsigned ndev; /* number of interfaces */ unsigned ndev; /* number of interfaces */
struct proc_dir_entry *dent; /* proc filesystem entry */ struct proc_dir_entry *dent; /* proc filesystem entry */
} wan_device_t; };
/* Public functions available for device drivers */ /* Public functions available for device drivers */
extern int register_wan_device(wan_device_t *wandev); extern int register_wan_device(struct wan_device *wandev);
extern int unregister_wan_device(char *name); extern int unregister_wan_device(char *name);
unsigned short wanrouter_type_trans(struct sk_buff *skb, netdevice_t *dev); unsigned short wanrouter_type_trans(struct sk_buff *skb,
int wanrouter_encapsulate(struct sk_buff *skb, netdevice_t *dev,unsigned short type); struct net_device *dev);
int wanrouter_encapsulate(struct sk_buff *skb, struct net_device *dev,
unsigned short type);
/* Proc interface functions. These must not be called by the drivers! */ /* Proc interface functions. These must not be called by the drivers! */
extern int wanrouter_proc_init(void); extern int wanrouter_proc_init(void);
extern void wanrouter_proc_cleanup(void); extern void wanrouter_proc_cleanup(void);
extern int wanrouter_proc_add(wan_device_t *wandev); extern int wanrouter_proc_add(struct wan_device *wandev);
extern int wanrouter_proc_delete(wan_device_t *wandev); extern int wanrouter_proc_delete(struct wan_device *wandev);
extern int wanrouter_ioctl( struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg); extern int wanrouter_ioctl( struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg);
extern void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags); extern void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
...@@ -535,7 +534,7 @@ extern void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags); ...@@ -535,7 +534,7 @@ extern void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
/* Public Data */ /* Public Data */
extern wan_device_t *router_devlist; /* list of registered devices */ extern struct wan_device *router_devlist; /* list of registered devices */
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
#endif /* _ROUTER_H */ #endif /* _ROUTER_H */
...@@ -170,7 +170,7 @@ struct wanpipe_opt ...@@ -170,7 +170,7 @@ struct wanpipe_opt
{ {
void *mbox; /* Mail box */ void *mbox; /* Mail box */
void *card; /* Card bouded to */ void *card; /* Card bouded to */
netdevice_t *dev; /* Bounded device */ struct net_device *dev; /* Bounded device */
unsigned short lcn; /* Binded LCN */ unsigned short lcn; /* Binded LCN */
unsigned char svc; /* 0=pvc, 1=svc */ unsigned char svc; /* 0=pvc, 1=svc */
unsigned char timer; /* flag for delayed transmit*/ unsigned char timer; /* flag for delayed transmit*/
...@@ -185,25 +185,26 @@ static int sk_count; ...@@ -185,25 +185,26 @@ static int sk_count;
extern struct proto_ops wanpipe_ops; extern struct proto_ops wanpipe_ops;
static unsigned long find_free_critical; static unsigned long find_free_critical;
static void wanpipe_unlink_driver (struct sock *); static void wanpipe_unlink_driver(struct sock *sk);
static void wanpipe_link_driver (netdevice_t *,struct sock *sk); static void wanpipe_link_driver(struct net_device *dev, struct sock *sk);
static void wanpipe_wakeup_driver(struct sock *sk); static void wanpipe_wakeup_driver(struct sock *sk);
static int execute_command(struct sock *, unsigned char, unsigned int); static int execute_command(struct sock *, unsigned char, unsigned int);
static int check_dev (netdevice_t *, sdla_t *); static int check_dev(struct net_device *dev, sdla_t *card);
netdevice_t * wanpipe_find_free_dev (sdla_t *); struct net_device *wanpipe_find_free_dev(sdla_t *card);
static void wanpipe_unlink_card (struct sock *); static void wanpipe_unlink_card (struct sock *);
static int wanpipe_link_card (struct sock *); static int wanpipe_link_card (struct sock *);
static struct sock *wanpipe_make_new(struct sock *); static struct sock *wanpipe_make_new(struct sock *);
static struct sock *wanpipe_alloc_socket(void); static struct sock *wanpipe_alloc_socket(void);
static inline int get_atomic_device (netdevice_t *); static inline int get_atomic_device(struct net_device *dev);
static int wanpipe_exec_cmd(struct sock *, int, unsigned int); static int wanpipe_exec_cmd(struct sock *, int, unsigned int);
static int get_ioctl_cmd (struct sock *, void *); static int get_ioctl_cmd (struct sock *, void *);
static int set_ioctl_cmd (struct sock *, void *); static int set_ioctl_cmd (struct sock *, void *);
static void release_device (netdevice_t *); static void release_device(struct net_device *dev);
static void wanpipe_kill_sock_timer (unsigned long data); static void wanpipe_kill_sock_timer (unsigned long data);
static void wanpipe_kill_sock_irq (struct sock *); static void wanpipe_kill_sock_irq (struct sock *);
static void wanpipe_kill_sock_accept (struct sock *); static void wanpipe_kill_sock_accept (struct sock *);
static int wanpipe_do_bind(struct sock *, netdevice_t *, int); static int wanpipe_do_bind(struct sock *sk, struct net_device *dev,
int protocol);
struct sock * get_newsk_from_skb (struct sk_buff *); struct sock * get_newsk_from_skb (struct sk_buff *);
static int wanpipe_debug (struct sock *, void *); static int wanpipe_debug (struct sock *, void *);
static void wanpipe_delayed_transmit (unsigned long data); static void wanpipe_delayed_transmit (unsigned long data);
...@@ -225,7 +226,8 @@ static int check_driver_busy (struct sock *); ...@@ -225,7 +226,8 @@ static int check_driver_busy (struct sock *);
* WANPIPE driver private. * WANPIPE driver private.
*===========================================================*/ *===========================================================*/
static int wanpipe_rcv(struct sk_buff *skb, netdevice_t *dev, struct sock *sk) static int wanpipe_rcv(struct sk_buff *skb, struct net_device *dev,
struct sock *sk)
{ {
struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)skb->cb; struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)skb->cb;
wanpipe_common_t *chan = dev->priv; wanpipe_common_t *chan = dev->priv;
...@@ -323,7 +325,7 @@ static int wanpipe_listen_rcv (struct sk_buff *skb, struct sock *sk) ...@@ -323,7 +325,7 @@ static int wanpipe_listen_rcv (struct sk_buff *skb, struct sock *sk)
wanpipe_opt *wp = wp_sk(sk), *newwp; wanpipe_opt *wp = wp_sk(sk), *newwp;
struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)skb->cb; struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)skb->cb;
struct sock *newsk; struct sock *newsk;
netdevice_t *dev; struct net_device *dev;
sdla_t *card; sdla_t *card;
mbox_cmd_t *mbox_ptr; mbox_cmd_t *mbox_ptr;
wanpipe_common_t *chan; wanpipe_common_t *chan;
...@@ -539,7 +541,7 @@ static int wanpipe_sendmsg(struct kiocb *iocb, struct socket *sock, ...@@ -539,7 +541,7 @@ static int wanpipe_sendmsg(struct kiocb *iocb, struct socket *sock,
struct sock *sk = sock->sk; struct sock *sk = sock->sk;
struct wan_sockaddr_ll *saddr=(struct wan_sockaddr_ll *)msg->msg_name; struct wan_sockaddr_ll *saddr=(struct wan_sockaddr_ll *)msg->msg_name;
struct sk_buff *skb; struct sk_buff *skb;
netdevice_t *dev; struct net_device *dev;
unsigned short proto; unsigned short proto;
unsigned char *addr; unsigned char *addr;
int ifindex, err, reserve = 0; int ifindex, err, reserve = 0;
...@@ -664,7 +666,7 @@ static void wanpipe_delayed_transmit (unsigned long data) ...@@ -664,7 +666,7 @@ static void wanpipe_delayed_transmit (unsigned long data)
struct sock *sk=(struct sock *)data; struct sock *sk=(struct sock *)data;
struct sk_buff *skb; struct sk_buff *skb;
wanpipe_opt *wp = wp_sk(sk); wanpipe_opt *wp = wp_sk(sk);
netdevice_t *dev = wp->dev; struct net_device *dev = wp->dev;
sdla_t *card = (sdla_t*)wp->card; sdla_t *card = (sdla_t*)wp->card;
if (!card || !dev){ if (!card || !dev){
...@@ -756,7 +758,7 @@ static void wanpipe_delayed_transmit (unsigned long data) ...@@ -756,7 +758,7 @@ static void wanpipe_delayed_transmit (unsigned long data)
static int execute_command(struct sock *sk, unsigned char cmd, unsigned int flags) static int execute_command(struct sock *sk, unsigned char cmd, unsigned int flags)
{ {
wanpipe_opt *wp = wp_sk(sk); wanpipe_opt *wp = wp_sk(sk);
netdevice_t *dev; struct net_device *dev;
wanpipe_common_t *chan=NULL; wanpipe_common_t *chan=NULL;
int err=0; int err=0;
DECLARE_WAITQUEUE(wait, current); DECLARE_WAITQUEUE(wait, current);
...@@ -861,7 +863,7 @@ static void wanpipe_destroy_timer(unsigned long data) ...@@ -861,7 +863,7 @@ static void wanpipe_destroy_timer(unsigned long data)
*===========================================================*/ *===========================================================*/
static void wanpipe_unlink_driver (struct sock *sk) static void wanpipe_unlink_driver (struct sock *sk)
{ {
netdevice_t *dev; struct net_device *dev;
wanpipe_common_t *chan=NULL; wanpipe_common_t *chan=NULL;
sk->zapped=0; sk->zapped=0;
...@@ -901,7 +903,7 @@ static void wanpipe_unlink_driver (struct sock *sk) ...@@ -901,7 +903,7 @@ static void wanpipe_unlink_driver (struct sock *sk)
* data up the socket. * data up the socket.
*===========================================================*/ *===========================================================*/
static void wanpipe_link_driver (netdevice_t *dev, struct sock *sk) static void wanpipe_link_driver(struct net_device *dev, struct sock *sk)
{ {
wanpipe_opt *wp = wp_sk(sk); wanpipe_opt *wp = wp_sk(sk);
wanpipe_common_t *chan = dev->priv; wanpipe_common_t *chan = dev->priv;
...@@ -926,7 +928,7 @@ static void wanpipe_link_driver (netdevice_t *dev, struct sock *sk) ...@@ -926,7 +928,7 @@ static void wanpipe_link_driver (netdevice_t *dev, struct sock *sk)
*===========================================================*/ *===========================================================*/
static void release_device (netdevice_t *dev) static void release_device(struct net_device *dev)
{ {
wanpipe_common_t *chan=dev->priv; wanpipe_common_t *chan=dev->priv;
clear_bit(0,(void*)&chan->rw_bind); clear_bit(0,(void*)&chan->rw_bind);
...@@ -965,7 +967,7 @@ static int wanpipe_release(struct socket *sock) ...@@ -965,7 +967,7 @@ static int wanpipe_release(struct socket *sock)
if (wp->num == htons(X25_PROT) && if (wp->num == htons(X25_PROT) &&
sk->state != WANSOCK_DISCONNECTED && sk->zapped) { sk->state != WANSOCK_DISCONNECTED && sk->zapped) {
netdevice_t *dev = dev_get_by_index(sk->bound_dev_if); struct net_device *dev = dev_get_by_index(sk->bound_dev_if);
wanpipe_common_t *chan; wanpipe_common_t *chan;
if (dev){ if (dev){
chan=dev->priv; chan=dev->priv;
...@@ -1153,7 +1155,7 @@ static void wanpipe_kill_sock_timer (unsigned long data) ...@@ -1153,7 +1155,7 @@ static void wanpipe_kill_sock_timer (unsigned long data)
if (wp_sk(sk)->num == htons(X25_PROT) && if (wp_sk(sk)->num == htons(X25_PROT) &&
sk->state != WANSOCK_DISCONNECTED){ sk->state != WANSOCK_DISCONNECTED){
netdevice_t *dev = dev_get_by_index(sk->bound_dev_if); struct net_device *dev = dev_get_by_index(sk->bound_dev_if);
wanpipe_common_t *chan; wanpipe_common_t *chan;
if (dev){ if (dev){
chan=dev->priv; chan=dev->priv;
...@@ -1268,7 +1270,8 @@ static void wanpipe_kill_sock_irq (struct sock *sk) ...@@ -1268,7 +1270,8 @@ static void wanpipe_kill_sock_irq (struct sock *sk)
* sock to the driver. * sock to the driver.
*===========================================================*/ *===========================================================*/
static int wanpipe_do_bind(struct sock *sk, netdevice_t *dev, int protocol) static int wanpipe_do_bind(struct sock *sk, struct net_device *dev,
int protocol)
{ {
wanpipe_opt *wp = wp_sk(sk); wanpipe_opt *wp = wp_sk(sk);
wanpipe_common_t *chan=NULL; wanpipe_common_t *chan=NULL;
...@@ -1341,7 +1344,7 @@ static int wanpipe_bind(struct socket *sock, struct sockaddr *uaddr, int addr_le ...@@ -1341,7 +1344,7 @@ static int wanpipe_bind(struct socket *sock, struct sockaddr *uaddr, int addr_le
struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)uaddr; struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)uaddr;
struct sock *sk=sock->sk; struct sock *sk=sock->sk;
wanpipe_opt *wp = wp_sk(sk); wanpipe_opt *wp = wp_sk(sk);
netdevice_t *dev = NULL; struct net_device *dev = NULL;
sdla_t *card=NULL; sdla_t *card=NULL;
char name[15]; char name[15];
...@@ -1436,7 +1439,7 @@ static int wanpipe_bind(struct socket *sock, struct sockaddr *uaddr, int addr_le ...@@ -1436,7 +1439,7 @@ static int wanpipe_bind(struct socket *sock, struct sockaddr *uaddr, int addr_le
*===========================================================*/ *===========================================================*/
static inline int get_atomic_device (netdevice_t *dev) static inline int get_atomic_device(struct net_device *dev)
{ {
wanpipe_common_t *chan = dev->priv; wanpipe_common_t *chan = dev->priv;
if (!test_and_set_bit(0,(void *)&chan->rw_bind)){ if (!test_and_set_bit(0,(void *)&chan->rw_bind)){
...@@ -1451,11 +1454,12 @@ static inline int get_atomic_device (netdevice_t *dev) ...@@ -1451,11 +1454,12 @@ static inline int get_atomic_device (netdevice_t *dev)
* Check that device name belongs to a particular card. * Check that device name belongs to a particular card.
*===========================================================*/ *===========================================================*/
static int check_dev (netdevice_t *dev, sdla_t *card) static int check_dev(struct net_device *dev, sdla_t *card)
{ {
netdevice_t* tmp_dev; struct net_device* tmp_dev;
for (tmp_dev = card->wandev.dev; tmp_dev; tmp_dev=*((netdevice_t**)tmp_dev->priv)){ for (tmp_dev = card->wandev.dev; tmp_dev;
tmp_dev = *((struct net_device **)tmp_dev->priv)) {
if (tmp_dev->ifindex == dev->ifindex){ if (tmp_dev->ifindex == dev->ifindex){
return 0; return 0;
} }
...@@ -1471,16 +1475,17 @@ static int check_dev (netdevice_t *dev, sdla_t *card) ...@@ -1471,16 +1475,17 @@ static int check_dev (netdevice_t *dev, sdla_t *card)
* X25API Specific. * X25API Specific.
*===========================================================*/ *===========================================================*/
netdevice_t * wanpipe_find_free_dev (sdla_t *card) struct net_device *wanpipe_find_free_dev(sdla_t *card)
{ {
netdevice_t* dev; struct net_device* dev;
volatile wanpipe_common_t *chan; volatile wanpipe_common_t *chan;
if (test_and_set_bit(0,&find_free_critical)){ if (test_and_set_bit(0,&find_free_critical)){
printk(KERN_INFO "CRITICAL in Find Free\n"); printk(KERN_INFO "CRITICAL in Find Free\n");
} }
for (dev = card->wandev.dev; dev; dev=*((netdevice_t**)dev->priv)){ for (dev = card->wandev.dev; dev;
dev = *((struct net_device **)dev->priv)) {
chan = dev->priv; chan = dev->priv;
if (!chan) if (!chan)
continue; continue;
...@@ -1646,7 +1651,7 @@ static int wanpipe_recvmsg(struct kiocb *iocb, struct socket *sock, ...@@ -1646,7 +1651,7 @@ static int wanpipe_recvmsg(struct kiocb *iocb, struct socket *sock,
static void wanpipe_wakeup_driver(struct sock *sk) static void wanpipe_wakeup_driver(struct sock *sk)
{ {
netdevice_t *dev=NULL; struct net_device *dev = NULL;
wanpipe_common_t *chan=NULL; wanpipe_common_t *chan=NULL;
dev = dev_get_by_index(sk->bound_dev_if); dev = dev_get_by_index(sk->bound_dev_if);
...@@ -1680,7 +1685,7 @@ static void wanpipe_wakeup_driver(struct sock *sk) ...@@ -1680,7 +1685,7 @@ static void wanpipe_wakeup_driver(struct sock *sk)
static int wanpipe_getname(struct socket *sock, struct sockaddr *uaddr, static int wanpipe_getname(struct socket *sock, struct sockaddr *uaddr,
int *uaddr_len, int peer) int *uaddr_len, int peer)
{ {
netdevice_t *dev; struct net_device *dev;
struct sock *sk = sock->sk; struct sock *sk = sock->sk;
struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)uaddr; struct wan_sockaddr_ll *sll = (struct wan_sockaddr_ll*)uaddr;
...@@ -1718,7 +1723,7 @@ static int wanpipe_getname(struct socket *sock, struct sockaddr *uaddr, ...@@ -1718,7 +1723,7 @@ static int wanpipe_getname(struct socket *sock, struct sockaddr *uaddr,
static int wanpipe_notifier(struct notifier_block *this, unsigned long msg, void *data) static int wanpipe_notifier(struct notifier_block *this, unsigned long msg, void *data)
{ {
struct sock *sk; struct sock *sk;
netdevice_t *dev = (netdevice_t*)data; struct net_device *dev = (struct net_device *)data;
struct wanpipe_opt *po; struct wanpipe_opt *po;
for (sk = wanpipe_sklist; sk; sk = sk->next) { for (sk = wanpipe_sklist; sk; sk = sk->next) {
...@@ -1867,7 +1872,7 @@ static int wanpipe_ioctl(struct socket *sock, unsigned int cmd, unsigned long ar ...@@ -1867,7 +1872,7 @@ static int wanpipe_ioctl(struct socket *sock, unsigned int cmd, unsigned long ar
static int wanpipe_debug (struct sock *origsk, void *arg) static int wanpipe_debug (struct sock *origsk, void *arg)
{ {
struct sock *sk=NULL; struct sock *sk=NULL;
netdevice_t *dev=NULL; struct net_device *dev = NULL;
wanpipe_common_t *chan=NULL; wanpipe_common_t *chan=NULL;
int cnt=0, err=0; int cnt=0, err=0;
wan_debug_t *dbg_data = (wan_debug_t *)arg; wan_debug_t *dbg_data = (wan_debug_t *)arg;
...@@ -2010,7 +2015,7 @@ static int set_ioctl_cmd (struct sock *sk, void *arg) ...@@ -2010,7 +2015,7 @@ static int set_ioctl_cmd (struct sock *sk, void *arg)
if (!wp_sk(sk)->mbox) { if (!wp_sk(sk)->mbox) {
void *mbox_ptr; void *mbox_ptr;
netdevice_t *dev = dev_get_by_index(sk->bound_dev_if); struct net_device *dev = dev_get_by_index(sk->bound_dev_if);
if (!dev) if (!dev)
return -ENODEV; return -ENODEV;
...@@ -2351,7 +2356,7 @@ static int wanpipe_exec_cmd(struct sock *sk, int cmd, unsigned int flags) ...@@ -2351,7 +2356,7 @@ static int wanpipe_exec_cmd(struct sock *sk, int cmd, unsigned int flags)
static int check_driver_busy (struct sock *sk) static int check_driver_busy (struct sock *sk)
{ {
netdevice_t *dev = dev_get_by_index(sk->bound_dev_if); struct net_device *dev = dev_get_by_index(sk->bound_dev_if);
wanpipe_common_t *chan; wanpipe_common_t *chan;
if (!dev) if (!dev)
...@@ -2456,7 +2461,7 @@ static int wanpipe_accept(struct socket *sock, struct socket *newsock, int flags ...@@ -2456,7 +2461,7 @@ static int wanpipe_accept(struct socket *sock, struct socket *newsock, int flags
struct sock * get_newsk_from_skb (struct sk_buff *skb) struct sock * get_newsk_from_skb (struct sk_buff *skb)
{ {
netdevice_t *dev = skb->dev; struct net_device *dev = skb->dev;
wanpipe_common_t *chan; wanpipe_common_t *chan;
if (!dev){ if (!dev){
...@@ -2486,7 +2491,7 @@ static int wanpipe_connect(struct socket *sock, struct sockaddr *uaddr, int addr ...@@ -2486,7 +2491,7 @@ static int wanpipe_connect(struct socket *sock, struct sockaddr *uaddr, int addr
{ {
struct sock *sk = sock->sk; struct sock *sk = sock->sk;
struct wan_sockaddr_ll *addr = (struct wan_sockaddr_ll*)uaddr; struct wan_sockaddr_ll *addr = (struct wan_sockaddr_ll*)uaddr;
netdevice_t *dev; struct net_device *dev;
int err; int err;
if (wp_sk(sk)->num != htons(X25_PROT)) if (wp_sk(sk)->num != htons(X25_PROT))
......
...@@ -127,18 +127,18 @@ static void dbg_kfree(void * v, int line) { ...@@ -127,18 +127,18 @@ static void dbg_kfree(void * v, int line) {
* WAN device IOCTL handlers * WAN device IOCTL handlers
*/ */
static int device_setup(wan_device_t *wandev, wandev_conf_t *u_conf); static int device_setup(struct wan_device *wandev, wandev_conf_t *u_conf);
static int device_stat(wan_device_t *wandev, wandev_stat_t *u_stat); static int device_stat(struct wan_device *wandev, wandev_stat_t *u_stat);
static int device_shutdown(wan_device_t *wandev); static int device_shutdown(struct wan_device *wandev);
static int device_new_if(wan_device_t *wandev, wanif_conf_t *u_conf); static int device_new_if(struct wan_device *wandev, wanif_conf_t *u_conf);
static int device_del_if(wan_device_t *wandev, char *u_name); static int device_del_if(struct wan_device *wandev, char *u_name);
/* /*
* Miscellaneous * Miscellaneous
*/ */
static wan_device_t *find_device (char *name); static struct wan_device *find_device (char *name);
static int delete_interface (wan_device_t *wandev, char *name); static int delete_interface (struct wan_device *wandev, char *name);
void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags); void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags); void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
...@@ -148,11 +148,11 @@ void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags); ...@@ -148,11 +148,11 @@ void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
* Global Data * Global Data
*/ */
static char fullname[] = "Sangoma WANPIPE Router"; static char fullname[] = "Sangoma WANPIPE Router";
static char copyright[] = "(c) 1995-2000 Sangoma Technologies Inc."; static char copyright[] = "(c) 1995-2000 Sangoma Technologies Inc.";
static char modname[] = ROUTER_NAME; /* short module name */ static char modname[] = ROUTER_NAME; /* short module name */
wan_device_t* router_devlist = NULL; /* list of registered devices */ struct wan_device* router_devlist; /* list of registered devices */
static int devcnt = 0; static int devcnt;
/* /*
* Organize Unique Identifiers for encapsulation/decapsulation * Organize Unique Identifiers for encapsulation/decapsulation
...@@ -262,7 +262,7 @@ void cleanup_module (void) ...@@ -262,7 +262,7 @@ void cleanup_module (void)
*/ */
int register_wan_device(wan_device_t *wandev) int register_wan_device(struct wan_device *wandev)
{ {
int err, namelen; int err, namelen;
...@@ -322,7 +322,7 @@ int register_wan_device(wan_device_t *wandev) ...@@ -322,7 +322,7 @@ int register_wan_device(wan_device_t *wandev)
int unregister_wan_device(char *name) int unregister_wan_device(char *name)
{ {
wan_device_t *wandev, *prev; struct wan_device *wandev, *prev;
if (name == NULL) if (name == NULL)
return -EINVAL; return -EINVAL;
...@@ -363,8 +363,8 @@ int unregister_wan_device(char *name) ...@@ -363,8 +363,8 @@ int unregister_wan_device(char *name)
*/ */
int wanrouter_encapsulate (struct sk_buff *skb, netdevice_t *dev, int wanrouter_encapsulate(struct sk_buff *skb, struct net_device *dev,
unsigned short type) unsigned short type)
{ {
int hdr_len = 0; int hdr_len = 0;
...@@ -406,7 +406,7 @@ int wanrouter_encapsulate (struct sk_buff *skb, netdevice_t *dev, ...@@ -406,7 +406,7 @@ int wanrouter_encapsulate (struct sk_buff *skb, netdevice_t *dev,
*/ */
unsigned short wanrouter_type_trans (struct sk_buff *skb, netdevice_t *dev) unsigned short wanrouter_type_trans(struct sk_buff *skb, struct net_device *dev)
{ {
int cnt = skb->data[0] ? 0 : 1; /* there may be a pad present */ int cnt = skb->data[0] ? 0 : 1; /* there may be a pad present */
unsigned short ethertype; unsigned short ethertype;
...@@ -457,7 +457,7 @@ int wanrouter_ioctl(struct inode *inode, struct file *file, ...@@ -457,7 +457,7 @@ int wanrouter_ioctl(struct inode *inode, struct file *file,
{ {
int err = 0; int err = 0;
struct proc_dir_entry *dent; struct proc_dir_entry *dent;
wan_device_t *wandev; struct wan_device *wandev;
if (!capable(CAP_NET_ADMIN)) if (!capable(CAP_NET_ADMIN))
return -EPERM; return -EPERM;
...@@ -519,7 +519,7 @@ int wanrouter_ioctl(struct inode *inode, struct file *file, ...@@ -519,7 +519,7 @@ int wanrouter_ioctl(struct inode *inode, struct file *file,
* o call driver's setup() entry point * o call driver's setup() entry point
*/ */
static int device_setup (wan_device_t *wandev, wandev_conf_t *u_conf) static int device_setup(struct wan_device *wandev, wandev_conf_t *u_conf)
{ {
void *data = NULL; void *data = NULL;
wandev_conf_t *conf; wandev_conf_t *conf;
...@@ -595,9 +595,9 @@ static int device_setup (wan_device_t *wandev, wandev_conf_t *u_conf) ...@@ -595,9 +595,9 @@ static int device_setup (wan_device_t *wandev, wandev_conf_t *u_conf)
* o call driver's shutdown() entry point * o call driver's shutdown() entry point
*/ */
static int device_shutdown (wan_device_t *wandev) static int device_shutdown(struct wan_device *wandev)
{ {
netdevice_t *dev; struct net_device *dev;
int err=0; int err=0;
if (wandev->state == WAN_UNCONFIGURED) if (wandev->state == WAN_UNCONFIGURED)
...@@ -628,7 +628,7 @@ static int device_shutdown (wan_device_t *wandev) ...@@ -628,7 +628,7 @@ static int device_shutdown (wan_device_t *wandev)
* Get WAN device status & statistics. * Get WAN device status & statistics.
*/ */
static int device_stat (wan_device_t *wandev, wandev_stat_t *u_stat) static int device_stat(struct wan_device *wandev, wandev_stat_t *u_stat)
{ {
wandev_stat_t stat; wandev_stat_t stat;
...@@ -658,10 +658,10 @@ static int device_stat (wan_device_t *wandev, wandev_stat_t *u_stat) ...@@ -658,10 +658,10 @@ static int device_stat (wan_device_t *wandev, wandev_stat_t *u_stat)
* o register network interface * o register network interface
*/ */
static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) static int device_new_if(struct wan_device *wandev, wanif_conf_t *u_conf)
{ {
wanif_conf_t conf; wanif_conf_t conf;
netdevice_t *dev=NULL; struct net_device *dev = NULL;
#ifdef CONFIG_WANPIPE_MULTPPP #ifdef CONFIG_WANPIPE_MULTPPP
struct ppp_device *pppdev=NULL; struct ppp_device *pppdev=NULL;
#endif #endif
...@@ -682,13 +682,14 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) ...@@ -682,13 +682,14 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf)
if (pppdev == NULL) if (pppdev == NULL)
return -ENOBUFS; return -ENOBUFS;
memset(pppdev, 0, sizeof(struct ppp_device)); memset(pppdev, 0, sizeof(struct ppp_device));
pppdev->dev = kmalloc(sizeof(netdevice_t), GFP_KERNEL); pppdev->dev = kmalloc(sizeof(struct net_device), GFP_KERNEL);
if (pppdev->dev == NULL) { if (pppdev->dev == NULL) {
kfree(pppdev); kfree(pppdev);
return -ENOBUFS; return -ENOBUFS;
} }
memset(pppdev->dev, 0, sizeof(netdevice_t)); memset(pppdev->dev, 0, sizeof(struct net_device));
err = wandev->new_if(wandev, (netdevice_t *)pppdev, &conf); err = wandev->new_if(wandev,
(struct net_device *)pppdev, &conf);
dev = pppdev->dev; dev = pppdev->dev;
#else #else
printk(KERN_INFO "%s: Wanpipe Mulit-Port PPP support has not been compiled in!\n", printk(KERN_INFO "%s: Wanpipe Mulit-Port PPP support has not been compiled in!\n",
...@@ -696,10 +697,10 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) ...@@ -696,10 +697,10 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf)
return -EPROTONOSUPPORT; return -EPROTONOSUPPORT;
#endif #endif
} else { } else {
dev = kmalloc(sizeof(netdevice_t), GFP_KERNEL); dev = kmalloc(sizeof(struct net_device), GFP_KERNEL);
if (dev == NULL) if (dev == NULL)
return -ENOBUFS; return -ENOBUFS;
memset(dev, 0, sizeof(netdevice_t)); memset(dev, 0, sizeof(struct net_device));
err = wandev->new_if(wandev, dev, &conf); err = wandev->new_if(wandev, dev, &conf);
} }
...@@ -722,7 +723,7 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) ...@@ -722,7 +723,7 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf)
err = register_netdev(dev); err = register_netdev(dev);
if (!err) { if (!err) {
netdevice_t *slave=NULL; struct net_device *slave = NULL;
unsigned long smp_flags=0; unsigned long smp_flags=0;
lock_adapter_irq(&wandev->lock, &smp_flags); lock_adapter_irq(&wandev->lock, &smp_flags);
...@@ -731,10 +732,10 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) ...@@ -731,10 +732,10 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf)
wandev->dev = dev; wandev->dev = dev;
} else { } else {
for (slave=wandev->dev; for (slave=wandev->dev;
*((netdevice_t**)slave->priv); *((struct net_device **)slave->priv);
slave=*((netdevice_t**)slave->priv)); slave = *((struct net_device **)slave->priv));
*((netdevice_t**)slave->priv) = dev; *((struct net_device **)slave->priv) = dev;
} }
++wandev->ndev; ++wandev->ndev;
...@@ -774,7 +775,7 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf) ...@@ -774,7 +775,7 @@ static int device_new_if (wan_device_t *wandev, wanif_conf_t *u_conf)
* o copy configuration data to kernel address space * o copy configuration data to kernel address space
*/ */
static int device_del_if (wan_device_t *wandev, char *u_name) static int device_del_if(struct wan_device *wandev, char *u_name)
{ {
char name[WAN_IFNAME_SZ + 1]; char name[WAN_IFNAME_SZ + 1];
int err = 0; int err = 0;
...@@ -815,9 +816,9 @@ static int device_del_if (wan_device_t *wandev, char *u_name) ...@@ -815,9 +816,9 @@ static int device_del_if (wan_device_t *wandev, char *u_name)
* Return pointer to the WAN device data space or NULL if device not found. * Return pointer to the WAN device data space or NULL if device not found.
*/ */
static wan_device_t *find_device(char *name) static struct wan_device *find_device(char *name)
{ {
wan_device_t *wandev; struct wan_device *wandev;
for (wandev = router_devlist;wandev && strcmp(wandev->name, name); for (wandev = router_devlist;wandev && strcmp(wandev->name, name);
wandev = wandev->next); wandev = wandev->next);
...@@ -841,16 +842,16 @@ static wan_device_t *find_device(char *name) ...@@ -841,16 +842,16 @@ static wan_device_t *find_device(char *name)
* sure that opened interfaces are not removed! * sure that opened interfaces are not removed!
*/ */
static int delete_interface (wan_device_t *wandev, char *name) static int delete_interface(struct wan_device *wandev, char *name)
{ {
netdevice_t *dev=NULL, *prev=NULL; struct net_device *dev = NULL, *prev = NULL;
unsigned long smp_flags=0; unsigned long smp_flags=0;
lock_adapter_irq(&wandev->lock, &smp_flags); lock_adapter_irq(&wandev->lock, &smp_flags);
dev = wandev->dev; dev = wandev->dev;
prev = NULL; prev = NULL;
while (dev && strcmp(name, dev->name)) { while (dev && strcmp(name, dev->name)) {
netdevice_t **slave = dev->priv; struct net_device **slave = dev->priv;
prev = dev; prev = dev;
dev = *slave; dev = *slave;
} }
...@@ -867,12 +868,12 @@ static int delete_interface (wan_device_t *wandev, char *name) ...@@ -867,12 +868,12 @@ static int delete_interface (wan_device_t *wandev, char *name)
lock_adapter_irq(&wandev->lock, &smp_flags); lock_adapter_irq(&wandev->lock, &smp_flags);
if (prev) { if (prev) {
netdevice_t **prev_slave = prev->priv; struct net_device **prev_slave = prev->priv;
netdevice_t **slave = dev->priv; struct net_device **slave = dev->priv;
*prev_slave = *slave; *prev_slave = *slave;
} else { } else {
netdevice_t **slave = dev->priv; struct net_device **slave = dev->priv;
wandev->dev = *slave; wandev->dev = *slave;
} }
--wandev->ndev; --wandev->ndev;
......
...@@ -96,7 +96,7 @@ static struct proc_dir_entry *proc_router; ...@@ -96,7 +96,7 @@ static struct proc_dir_entry *proc_router;
*/ */
static void *r_start(struct seq_file *m, loff_t *pos) static void *r_start(struct seq_file *m, loff_t *pos)
{ {
wan_device_t *wandev; struct wan_device *wandev;
loff_t l = *pos; loff_t l = *pos;
lock_kernel(); lock_kernel();
...@@ -108,7 +108,7 @@ static void *r_start(struct seq_file *m, loff_t *pos) ...@@ -108,7 +108,7 @@ static void *r_start(struct seq_file *m, loff_t *pos)
} }
static void *r_next(struct seq_file *m, void *v, loff_t *pos) static void *r_next(struct seq_file *m, void *v, loff_t *pos)
{ {
wan_device_t *wandev = v; struct wan_device *wandev = v;
(*pos)++; (*pos)++;
return (v == (void *)1) ? router_devlist : wandev->next; return (v == (void *)1) ? router_devlist : wandev->next;
} }
...@@ -119,7 +119,7 @@ static void r_stop(struct seq_file *m, void *v) ...@@ -119,7 +119,7 @@ static void r_stop(struct seq_file *m, void *v)
static int config_show(struct seq_file *m, void *v) static int config_show(struct seq_file *m, void *v)
{ {
wan_device_t *p = v; struct wan_device *p = v;
if (v == (void *)1) { if (v == (void *)1) {
seq_puts(m, "Device name | port |IRQ|DMA| mem.addr |"); seq_puts(m, "Device name | port |IRQ|DMA| mem.addr |");
seq_puts(m, "mem.size|option1|option2|option3|option4\n"); seq_puts(m, "mem.size|option1|option2|option3|option4\n");
...@@ -135,7 +135,7 @@ static int config_show(struct seq_file *m, void *v) ...@@ -135,7 +135,7 @@ static int config_show(struct seq_file *m, void *v)
static int status_show(struct seq_file *m, void *v) static int status_show(struct seq_file *m, void *v)
{ {
wan_device_t *p = v; struct wan_device *p = v;
if (v == (void *)1) { if (v == (void *)1) {
seq_puts(m, "Device name |protocol|station|interface|"); seq_puts(m, "Device name |protocol|station|interface|");
seq_puts(m, "clocking|baud rate| MTU |ndev|link state\n"); seq_puts(m, "clocking|baud rate| MTU |ndev|link state\n");
...@@ -221,7 +221,7 @@ static struct file_operations status_fops = ...@@ -221,7 +221,7 @@ static struct file_operations status_fops =
static int wandev_show(struct seq_file *m, void *v) static int wandev_show(struct seq_file *m, void *v)
{ {
wan_device_t *wandev = v; struct wan_device *wandev = v;
if (wandev->magic != ROUTER_MAGIC) if (wandev->magic != ROUTER_MAGIC)
return 0; return 0;
...@@ -339,7 +339,7 @@ void wanrouter_proc_cleanup (void) ...@@ -339,7 +339,7 @@ void wanrouter_proc_cleanup (void)
* Add directory entry for WAN device. * Add directory entry for WAN device.
*/ */
int wanrouter_proc_add (wan_device_t* wandev) int wanrouter_proc_add(struct wan_device* wandev)
{ {
if (wandev->magic != ROUTER_MAGIC) if (wandev->magic != ROUTER_MAGIC)
return -EINVAL; return -EINVAL;
...@@ -356,7 +356,7 @@ int wanrouter_proc_add (wan_device_t* wandev) ...@@ -356,7 +356,7 @@ int wanrouter_proc_add (wan_device_t* wandev)
* Delete directory entry for WAN device. * Delete directory entry for WAN device.
*/ */
int wanrouter_proc_delete(wan_device_t* wandev) int wanrouter_proc_delete(struct wan_device* wandev)
{ {
if (wandev->magic != ROUTER_MAGIC) if (wandev->magic != ROUTER_MAGIC)
return -EINVAL; return -EINVAL;
...@@ -379,12 +379,12 @@ void wanrouter_proc_cleanup(void) ...@@ -379,12 +379,12 @@ void wanrouter_proc_cleanup(void)
{ {
} }
int wanrouter_proc_add(wan_device_t *wandev) int wanrouter_proc_add(struct wan_device *wandev)
{ {
return 0; return 0;
} }
int wanrouter_proc_delete(wan_device_t *wandev) int wanrouter_proc_delete(struct wan_device *wandev)
{ {
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment