Lines Matching refs:dev
46 static int arcrimi_probe(struct net_device *dev);
47 static int arcrimi_found(struct net_device *dev);
48 static void arcrimi_command(struct net_device *dev, int command);
49 static int arcrimi_status(struct net_device *dev);
50 static void arcrimi_setmask(struct net_device *dev, int mask);
51 static int arcrimi_reset(struct net_device *dev, int really_reset);
52 static void arcrimi_copy_to_card(struct net_device *dev, int bufnum, int offset,
54 static void arcrimi_copy_from_card(struct net_device *dev, int bufnum,
67 static int __init arcrimi_probe(struct net_device *dev) in arcrimi_probe() argument
73 dev->dev_addr[0], dev->mem_start, dev->irq); in arcrimi_probe()
76 if (dev->mem_start <= 0 || dev->irq <= 0) { in arcrimi_probe()
81 if (dev->dev_addr[0] == 0) { in arcrimi_probe()
91 if (!request_mem_region(dev->mem_start, MIRROR_SIZE, "arcnet (90xx)")) { in arcrimi_probe()
96 return arcrimi_found(dev); in arcrimi_probe()
123 static int __init arcrimi_found(struct net_device *dev) in arcrimi_found() argument
131 p = ioremap(dev->mem_start, MIRROR_SIZE); in arcrimi_found()
133 release_mem_region(dev->mem_start, MIRROR_SIZE); in arcrimi_found()
134 arc_printk(D_NORMAL, dev, "Can't ioremap\n"); in arcrimi_found()
139 if (request_irq(dev->irq, arcnet_interrupt, 0, "arcnet (RIM I)", dev)) { in arcrimi_found()
141 release_mem_region(dev->mem_start, MIRROR_SIZE); in arcrimi_found()
142 arc_printk(D_NORMAL, dev, "Can't get IRQ %d!\n", dev->irq); in arcrimi_found()
146 shmem = dev->mem_start; in arcrimi_found()
173 dev->mem_start = first_mirror; in arcrimi_found()
174 dev->mem_end = last_mirror + MIRROR_SIZE - 1; in arcrimi_found()
178 lp = netdev_priv(dev); in arcrimi_found()
195 if (!request_mem_region(dev->mem_start, in arcrimi_found()
196 dev->mem_end - dev->mem_start + 1, in arcrimi_found()
198 arc_printk(D_NORMAL, dev, "Card memory already allocated\n"); in arcrimi_found()
202 lp->mem_start = ioremap(dev->mem_start, in arcrimi_found()
203 dev->mem_end - dev->mem_start + 1); in arcrimi_found()
205 arc_printk(D_NORMAL, dev, "Can't remap device memory!\n"); in arcrimi_found()
210 dev->dev_addr[0] = arcnet_readb(lp->mem_start, COM9026_REG_R_STATION); in arcrimi_found()
212 …arc_printk(D_NORMAL, dev, "ARCnet RIM I: station %02Xh found at IRQ %d, ShMem %lXh (%ld*%d bytes)\… in arcrimi_found()
213 dev->dev_addr[0], in arcrimi_found()
214 dev->irq, dev->mem_start, in arcrimi_found()
215 (dev->mem_end - dev->mem_start + 1) / mirror_size, in arcrimi_found()
218 err = register_netdev(dev); in arcrimi_found()
227 release_mem_region(dev->mem_start, dev->mem_end - dev->mem_start + 1); in arcrimi_found()
229 free_irq(dev->irq, dev); in arcrimi_found()
240 static int arcrimi_reset(struct net_device *dev, int really_reset) in arcrimi_reset() argument
242 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_reset()
245 arc_printk(D_INIT, dev, "Resetting %s (status=%02Xh)\n", in arcrimi_reset()
246 dev->name, arcnet_readb(ioaddr, COM9026_REG_R_STATUS)); in arcrimi_reset()
263 static void arcrimi_setmask(struct net_device *dev, int mask) in arcrimi_setmask() argument
265 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_setmask()
271 static int arcrimi_status(struct net_device *dev) in arcrimi_status() argument
273 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_status()
279 static void arcrimi_command(struct net_device *dev, int cmd) in arcrimi_command() argument
281 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_command()
287 static void arcrimi_copy_to_card(struct net_device *dev, int bufnum, int offset, in arcrimi_copy_to_card() argument
290 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_copy_to_card()
293 TIME(dev, "memcpy_toio", count, memcpy_toio(memaddr, buf, count)); in arcrimi_copy_to_card()
296 static void arcrimi_copy_from_card(struct net_device *dev, int bufnum, in arcrimi_copy_from_card() argument
299 struct arcnet_local *lp = netdev_priv(dev); in arcrimi_copy_from_card()
302 TIME(dev, "memcpy_fromio", count, memcpy_fromio(buf, memaddr, count)); in arcrimi_copy_from_card()
320 struct net_device *dev; in arc_rimi_init() local
322 dev = alloc_arcdev(device); in arc_rimi_init()
323 if (!dev) in arc_rimi_init()
327 dev->dev_addr[0] = node; in arc_rimi_init()
329 dev->mem_start = io; in arc_rimi_init()
330 dev->irq = irq; in arc_rimi_init()
331 if (dev->irq == 2) in arc_rimi_init()
332 dev->irq = 9; in arc_rimi_init()
334 if (arcrimi_probe(dev)) { in arc_rimi_init()
335 free_netdev(dev); in arc_rimi_init()
339 my_dev = dev; in arc_rimi_init()
345 struct net_device *dev = my_dev; in arc_rimi_exit() local
346 struct arcnet_local *lp = netdev_priv(dev); in arc_rimi_exit()
348 unregister_netdev(dev); in arc_rimi_exit()
350 release_mem_region(dev->mem_start, dev->mem_end - dev->mem_start + 1); in arc_rimi_exit()
351 free_irq(dev->irq, dev); in arc_rimi_exit()
352 free_netdev(dev); in arc_rimi_exit()