diff options
author | Len Brown <len.brown@intel.com> | 2009-01-09 03:39:43 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-01-09 03:39:43 -0500 |
commit | b2576e1d4408e134e2188c967b1f28af39cd79d4 (patch) | |
tree | 004f3c82faab760f304ce031d6d2f572e7746a50 /drivers/net/hydra.c | |
parent | 3cc8a5f4ba91f67bbdb81a43a99281a26aab8d77 (diff) | |
parent | 2150edc6c5cf00f7adb54538b9ea2a3e9cedca3f (diff) |
Merge branch 'linus' into release
Diffstat (limited to 'drivers/net/hydra.c')
-rw-r--r-- | drivers/net/hydra.c | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/drivers/net/hydra.c b/drivers/net/hydra.c index b96cf2dcb109..9cb38a8d4387 100644 --- a/drivers/net/hydra.c +++ b/drivers/net/hydra.c | |||
@@ -94,6 +94,21 @@ static int __devinit hydra_init_one(struct zorro_dev *z, | |||
94 | return 0; | 94 | return 0; |
95 | } | 95 | } |
96 | 96 | ||
97 | static const struct net_device_ops hydra_netdev_ops = { | ||
98 | .ndo_open = hydra_open, | ||
99 | .ndo_stop = hydra_close, | ||
100 | |||
101 | .ndo_start_xmit = ei_start_xmit, | ||
102 | .ndo_tx_timeout = ei_tx_timeout, | ||
103 | .ndo_get_stats = ei_get_stats, | ||
104 | .ndo_set_multicast_list = ei_set_multicast_list, | ||
105 | .ndo_validate_addr = eth_validate_addr, | ||
106 | .ndo_change_mtu = eth_change_mtu, | ||
107 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
108 | .ndo_poll_controller = ei_poll, | ||
109 | #endif | ||
110 | }; | ||
111 | |||
97 | static int __devinit hydra_init(struct zorro_dev *z) | 112 | static int __devinit hydra_init(struct zorro_dev *z) |
98 | { | 113 | { |
99 | struct net_device *dev; | 114 | struct net_device *dev; |
@@ -103,14 +118,13 @@ static int __devinit hydra_init(struct zorro_dev *z) | |||
103 | int start_page, stop_page; | 118 | int start_page, stop_page; |
104 | int j; | 119 | int j; |
105 | int err; | 120 | int err; |
106 | DECLARE_MAC_BUF(mac); | ||
107 | 121 | ||
108 | static u32 hydra_offsets[16] = { | 122 | static u32 hydra_offsets[16] = { |
109 | 0x00, 0x02, 0x04, 0x06, 0x08, 0x0a, 0x0c, 0x0e, | 123 | 0x00, 0x02, 0x04, 0x06, 0x08, 0x0a, 0x0c, 0x0e, |
110 | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, | 124 | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1a, 0x1c, 0x1e, |
111 | }; | 125 | }; |
112 | 126 | ||
113 | dev = ____alloc_ei_netdev(0); | 127 | dev = alloc_ei_netdev(); |
114 | if (!dev) | 128 | if (!dev) |
115 | return -ENOMEM; | 129 | return -ENOMEM; |
116 | 130 | ||
@@ -145,12 +159,8 @@ static int __devinit hydra_init(struct zorro_dev *z) | |||
145 | ei_status.block_output = &hydra_block_output; | 159 | ei_status.block_output = &hydra_block_output; |
146 | ei_status.get_8390_hdr = &hydra_get_8390_hdr; | 160 | ei_status.get_8390_hdr = &hydra_get_8390_hdr; |
147 | ei_status.reg_offset = hydra_offsets; | 161 | ei_status.reg_offset = hydra_offsets; |
148 | dev->open = &hydra_open; | ||
149 | dev->stop = &hydra_close; | ||
150 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
151 | dev->poll_controller = __ei_poll; | ||
152 | #endif | ||
153 | 162 | ||
163 | dev->netdev_ops = &hydra_netdev_ops; | ||
154 | __NS8390_init(dev, 0); | 164 | __NS8390_init(dev, 0); |
155 | 165 | ||
156 | err = register_netdev(dev); | 166 | err = register_netdev(dev); |
@@ -163,8 +173,8 @@ static int __devinit hydra_init(struct zorro_dev *z) | |||
163 | zorro_set_drvdata(z, dev); | 173 | zorro_set_drvdata(z, dev); |
164 | 174 | ||
165 | printk(KERN_INFO "%s: Hydra at 0x%08lx, address " | 175 | printk(KERN_INFO "%s: Hydra at 0x%08lx, address " |
166 | "%s (hydra.c " HYDRA_VERSION ")\n", | 176 | "%pM (hydra.c " HYDRA_VERSION ")\n", |
167 | dev->name, z->resource.start, print_mac(mac, dev->dev_addr)); | 177 | dev->name, z->resource.start, dev->dev_addr); |
168 | 178 | ||
169 | return 0; | 179 | return 0; |
170 | } | 180 | } |