Skip to content

Commit

Permalink
fddi: convert to new network device ops
Browse files Browse the repository at this point in the history
Similar to ethernet. Convert infrastructure and the one lone FDDI
driver (for the one lone user of that hardware??). Compile tested only.

Signed-off-by: Stephen Hemminger <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Stephen Hemminger authored and davem330 committed Nov 21, 2008
1 parent 007c383 commit 145186a
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 9 deletions.
19 changes: 12 additions & 7 deletions drivers/net/skfp/skfddi.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,17 @@ static int num_boards; /* total number of adapters configured */
#define PRINTK(s, args...)
#endif // DRIVERDEBUG

static const struct net_device_ops skfp_netdev_ops = {
.ndo_open = skfp_open,
.ndo_stop = skfp_close,
.ndo_start_xmit = skfp_send_pkt,
.ndo_get_stats = skfp_ctl_get_stats,
.ndo_change_mtu = fddi_change_mtu,
.ndo_set_multicast_list = skfp_ctl_set_multicast_list,
.ndo_set_mac_address = skfp_ctl_set_mac_address,
.ndo_do_ioctl = skfp_ioctl,
};

/*
* =================
* = skfp_init_one =
Expand Down Expand Up @@ -253,13 +264,7 @@ static int skfp_init_one(struct pci_dev *pdev,
}

dev->irq = pdev->irq;
dev->get_stats = &skfp_ctl_get_stats;
dev->open = &skfp_open;
dev->stop = &skfp_close;
dev->hard_start_xmit = &skfp_send_pkt;
dev->set_multicast_list = &skfp_ctl_set_multicast_list;
dev->set_mac_address = &skfp_ctl_set_mac_address;
dev->do_ioctl = &skfp_ioctl;
dev->netdev_ops = &skfp_netdev_ops;

SET_NETDEV_DEV(dev, &pdev->dev);

Expand Down
1 change: 1 addition & 0 deletions include/linux/fddidevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#ifdef __KERNEL__
extern __be16 fddi_type_trans(struct sk_buff *skb,
struct net_device *dev);
extern int fddi_change_mtu(struct net_device *dev, int new_mtu);
extern struct net_device *alloc_fddidev(int sizeof_priv);
#endif

Expand Down
8 changes: 6 additions & 2 deletions net/802/fddi.c
Original file line number Diff line number Diff line change
Expand Up @@ -167,23 +167,27 @@ __be16 fddi_type_trans(struct sk_buff *skb, struct net_device *dev)

EXPORT_SYMBOL(fddi_type_trans);

static int fddi_change_mtu(struct net_device *dev, int new_mtu)
int fddi_change_mtu(struct net_device *dev, int new_mtu)
{
if ((new_mtu < FDDI_K_SNAP_HLEN) || (new_mtu > FDDI_K_SNAP_DLEN))
return(-EINVAL);
dev->mtu = new_mtu;
return(0);
}
EXPORT_SYMBOL(fddi_change_mtu);

static const struct header_ops fddi_header_ops = {
.create = fddi_header,
.rebuild = fddi_rebuild_header,
};


static void fddi_setup(struct net_device *dev)
{
dev->change_mtu = fddi_change_mtu;
dev->header_ops = &fddi_header_ops;
#ifdef CONFIG_COMPAT_NET_DEV_OPS
dev->change_mtu = fddi_change_mtu,
#endif

dev->type = ARPHRD_FDDI;
dev->hard_header_len = FDDI_K_SNAP_HLEN+3; /* Assume 802.2 SNAP hdr len + 3 pad bytes */
Expand Down

0 comments on commit 145186a

Please sign in to comment.