|
@@ -298,6 +298,19 @@ static char hop_pattern_length[] = { 1,
|
|
static char rcsid[] =
|
|
static char rcsid[] =
|
|
"Raylink/WebGear wireless LAN - Corey <Thomas corey@world.std.com>";
|
|
"Raylink/WebGear wireless LAN - Corey <Thomas corey@world.std.com>";
|
|
|
|
|
|
|
|
+static const struct net_device_ops ray_netdev_ops = {
|
|
|
|
+ .ndo_init = ray_dev_init,
|
|
|
|
+ .ndo_open = ray_open,
|
|
|
|
+ .ndo_stop = ray_dev_close,
|
|
|
|
+ .ndo_start_xmit = ray_dev_start_xmit,
|
|
|
|
+ .ndo_set_config = ray_dev_config,
|
|
|
|
+ .ndo_get_stats = ray_get_stats,
|
|
|
|
+ .ndo_set_multicast_list = set_multicast_list,
|
|
|
|
+ .ndo_change_mtu = eth_change_mtu,
|
|
|
|
+ .ndo_set_mac_address = eth_mac_addr,
|
|
|
|
+ .ndo_validate_addr = eth_validate_addr,
|
|
|
|
+};
|
|
|
|
+
|
|
/*=============================================================================
|
|
/*=============================================================================
|
|
ray_attach() creates an "instance" of the driver, allocating
|
|
ray_attach() creates an "instance" of the driver, allocating
|
|
local data structures for one device. The device is registered
|
|
local data structures for one device. The device is registered
|
|
@@ -347,9 +360,7 @@ static int ray_probe(struct pcmcia_device *p_dev)
|
|
p_dev, dev, local, &ray_interrupt);
|
|
p_dev, dev, local, &ray_interrupt);
|
|
|
|
|
|
/* Raylink entries in the device structure */
|
|
/* Raylink entries in the device structure */
|
|
- dev->hard_start_xmit = &ray_dev_start_xmit;
|
|
|
|
- dev->set_config = &ray_dev_config;
|
|
|
|
- dev->get_stats = &ray_get_stats;
|
|
|
|
|
|
+ dev->netdev_ops = &ray_netdev_ops;
|
|
SET_ETHTOOL_OPS(dev, &netdev_ethtool_ops);
|
|
SET_ETHTOOL_OPS(dev, &netdev_ethtool_ops);
|
|
dev->wireless_handlers = &ray_handler_def;
|
|
dev->wireless_handlers = &ray_handler_def;
|
|
#ifdef WIRELESS_SPY
|
|
#ifdef WIRELESS_SPY
|
|
@@ -357,12 +368,8 @@ static int ray_probe(struct pcmcia_device *p_dev)
|
|
dev->wireless_data = &local->wireless_data;
|
|
dev->wireless_data = &local->wireless_data;
|
|
#endif /* WIRELESS_SPY */
|
|
#endif /* WIRELESS_SPY */
|
|
|
|
|
|
- dev->set_multicast_list = &set_multicast_list;
|
|
|
|
|
|
|
|
DEBUG(2, "ray_cs ray_attach calling ether_setup.)\n");
|
|
DEBUG(2, "ray_cs ray_attach calling ether_setup.)\n");
|
|
- dev->init = &ray_dev_init;
|
|
|
|
- dev->open = &ray_open;
|
|
|
|
- dev->stop = &ray_dev_close;
|
|
|
|
netif_stop_queue(dev);
|
|
netif_stop_queue(dev);
|
|
|
|
|
|
init_timer(&local->timer);
|
|
init_timer(&local->timer);
|