Lines Matching refs:dev

62 static int ray_dev_close(struct net_device *dev);
63 static int ray_dev_config(struct net_device *dev, struct ifmap *map);
64 static struct net_device_stats *ray_get_stats(struct net_device *dev);
65 static int ray_dev_init(struct net_device *dev);
67 static int ray_open(struct net_device *dev);
69 struct net_device *dev);
70 static void set_multicast_list(struct net_device *dev);
71 static void ray_update_multi_list(struct net_device *dev, int all);
77 static iw_stats *ray_get_wireless_stats(struct net_device *dev);
88 static int ray_hw_xmit(unsigned char *data, int len, struct net_device *dev, UCHAR type);
89 static int ray_init(struct net_device *dev);
91 static void ray_reset(struct net_device *dev);
92 static void ray_update_parm(struct net_device *dev, UCHAR objid, UCHAR *value, int len);
101 static void ray_rx(struct net_device *dev, ray_dev_t *local, struct rcs __iomem *prcs);
105 static void rx_data(struct net_device *dev, struct rcs __iomem *prcs,
110 static int dl_startup_params(struct net_device *dev);
272 struct net_device *dev;
275 dev_dbg(&p_dev->dev, "ray_attach()\n");
278 dev = alloc_etherdev(sizeof(ray_dev_t));
279 if (!dev)
282 local = netdev_priv(dev);
293 p_dev->priv = dev;
299 dev_dbg(&p_dev->dev, "ray_attach p_dev = %p, dev = %p, local = %p, intr = %p\n",
300 p_dev, dev, local, &ray_interrupt);
303 dev->netdev_ops = &ray_netdev_ops;
304 dev->wireless_handlers = &ray_handler_def;
307 dev->wireless_data = &local->wireless_data;
311 dev_dbg(&p_dev->dev, "ray_cs ray_attach calling ether_setup.)\n");
312 netif_stop_queue(dev);
324 free_netdev(dev);
330 struct net_device *dev;
332 dev_dbg(&link->dev, "ray_detach\n");
335 dev = link->priv;
340 unregister_netdev(dev);
341 free_netdev(dev);
343 dev_dbg(&link->dev, "ray_cs ray_detach ending\n");
351 struct net_device *dev = (struct net_device *)link->priv;
352 ray_dev_t *local = netdev_priv(dev);
354 dev_dbg(&link->dev, "ray_config\n");
369 dev->irq = link->irq;
422 dev_dbg(&link->dev, "ray_config sram=%p\n", local->sram);
423 dev_dbg(&link->dev, "ray_config rmem=%p\n", local->rmem);
424 dev_dbg(&link->dev, "ray_config amem=%p\n", local->amem);
425 if (ray_init(dev) < 0) {
430 SET_NETDEV_DEV(dev, &link->dev);
431 i = register_netdev(dev);
439 dev->name, dev->irq, dev->dev_addr);
448 static inline struct ccs __iomem *ccs_base(ray_dev_t *dev)
450 return dev->sram + CCS_BASE;
453 static inline struct rcs __iomem *rcs_base(ray_dev_t *dev)
462 return dev->sram + CCS_BASE;
466 static int ray_init(struct net_device *dev)
470 ray_dev_t *local = netdev_priv(dev);
472 dev_dbg(&link->dev, "ray_init(0x%p)\n", dev);
474 dev_dbg(&link->dev, "ray_init - device not present\n");
496 dev_dbg(&link->dev, "ray_init firmware version %d.%d\n", local->fw_ver,
502 dev_dbg(&link->dev, "ray_init tib_length = 0x%02x\n", local->tib_length);
518 dev_dbg(&link->dev, "ray_init ending\n");
524 static int dl_startup_params(struct net_device *dev)
527 ray_dev_t *local = netdev_priv(dev);
531 dev_dbg(&link->dev, "dl_startup_params entered\n");
533 dev_dbg(&link->dev, "ray_cs dl_startup_params - device not present\n");
551 dev_dbg(&link->dev, "dl_startup_params start ccsindex = %d\n",
566 dev_dbg(&link->dev,
642 dev_dbg(&link->dev, "ray_cs verify_dl_startup - device not present\n");
683 dev_dbg(&link->dev, "ray_cs start_net - device not present\n");
694 dev_dbg(&link->dev, "ray start net failed - card not ready for intr\n");
712 dev_dbg(&link->dev, "ray_cs join_net - device not present\n");
724 dev_dbg(&link->dev, "ray join net failed - card not ready for intr\n");
734 struct net_device *dev = link->priv;
735 ray_dev_t *local = netdev_priv(dev);
737 dev_dbg(&link->dev, "ray_release\n");
749 dev_dbg(&link->dev, "ray_release ending\n");
754 struct net_device *dev = link->priv;
757 netif_device_detach(dev);
764 struct net_device *dev = link->priv;
767 ray_reset(dev);
768 netif_device_attach(dev);
775 static int ray_dev_init(struct net_device *dev)
780 ray_dev_t *local = netdev_priv(dev);
783 dev_dbg(&link->dev, "ray_dev_init(dev=%p)\n", dev);
785 dev_dbg(&link->dev, "ray_dev_init - device not present\n");
790 if ((i = dl_startup_params(dev)) < 0) {
799 dev_dbg(&link->dev,
805 eth_hw_addr_set(dev, local->sparm.b4.a_mac_addr);
806 eth_broadcast_addr(dev->broadcast);
808 dev_dbg(&link->dev, "ray_dev_init ending\n");
813 static int ray_dev_config(struct net_device *dev, struct ifmap *map)
815 ray_dev_t *local = netdev_priv(dev);
818 dev_dbg(&link->dev, "ray_dev_config(dev=%p,ifmap=%p)\n", dev, map);
820 dev_dbg(&link->dev, "ray_dev_config - device not present\n");
829 struct net_device *dev)
831 ray_dev_t *local = netdev_priv(dev);
836 dev_dbg(&link->dev, "ray_dev_start_xmit - device not present\n");
841 dev_dbg(&link->dev, "ray_dev_start_xmit(skb=%p, dev=%p)\n", skb, dev);
843 dev_dbg(&link->dev, "ray_cs Sending authentication request.\n");
846 netif_stop_queue(dev);
856 switch (ray_hw_xmit(skb->data, length, dev, DATA_TYPE)) {
859 netif_stop_queue(dev);
872 static int ray_hw_xmit(unsigned char *data, int len, struct net_device *dev,
875 ray_dev_t *local = netdev_priv(dev);
882 pr_debug("ray_hw_xmit(data=%p, len=%d, dev=%p)\n", data, len, dev);
896 netif_stop_queue(dev);
1027 static int ray_get_name(struct net_device *dev, struct iw_request_info *info,
1038 static int ray_set_freq(struct net_device *dev, struct iw_request_info *info,
1041 ray_dev_t *local = netdev_priv(dev);
1061 static int ray_get_freq(struct net_device *dev, struct iw_request_info *info,
1064 ray_dev_t *local = netdev_priv(dev);
1075 static int ray_set_essid(struct net_device *dev, struct iw_request_info *info,
1078 ray_dev_t *local = netdev_priv(dev);
1104 static int ray_get_essid(struct net_device *dev, struct iw_request_info *info,
1107 ray_dev_t *local = netdev_priv(dev);
1126 static int ray_get_wap(struct net_device *dev, struct iw_request_info *info,
1129 ray_dev_t *local = netdev_priv(dev);
1141 static int ray_set_rate(struct net_device *dev, struct iw_request_info *info,
1144 ray_dev_t *local = netdev_priv(dev);
1168 static int ray_get_rate(struct net_device *dev, struct iw_request_info *info,
1171 ray_dev_t *local = netdev_priv(dev);
1186 static int ray_set_rts(struct net_device *dev, struct iw_request_info *info,
1189 ray_dev_t *local = netdev_priv(dev);
1213 static int ray_get_rts(struct net_device *dev, struct iw_request_info *info,
1216 ray_dev_t *local = netdev_priv(dev);
1230 static int ray_set_frag(struct net_device *dev, struct iw_request_info *info,
1233 ray_dev_t *local = netdev_priv(dev);
1257 static int ray_get_frag(struct net_device *dev, struct iw_request_info *info,
1260 ray_dev_t *local = netdev_priv(dev);
1274 static int ray_set_mode(struct net_device *dev, struct iw_request_info *info,
1277 ray_dev_t *local = netdev_priv(dev);
1303 static int ray_get_mode(struct net_device *dev, struct iw_request_info *info,
1306 ray_dev_t *local = netdev_priv(dev);
1320 static int ray_get_range(struct net_device *dev, struct iw_request_info *info,
1351 static int ray_set_framing(struct net_device *dev, struct iw_request_info *info,
1363 static int ray_get_framing(struct net_device *dev, struct iw_request_info *info,
1375 static int ray_get_country(struct net_device *dev, struct iw_request_info *info,
1387 static int ray_commit(struct net_device *dev, struct iw_request_info *info,
1397 static iw_stats *ray_get_wireless_stats(struct net_device *dev)
1399 ray_dev_t *local = netdev_priv(dev);
1485 static int ray_open(struct net_device *dev)
1487 ray_dev_t *local = netdev_priv(dev);
1491 dev_dbg(&link->dev, "ray_open('%s')\n", dev->name);
1501 dev_dbg(&link->dev, "ray_open: doing init now !\n");
1504 if ((i = dl_startup_params(dev)) < 0) {
1513 netif_stop_queue(dev);
1515 netif_start_queue(dev);
1517 dev_dbg(&link->dev, "ray_open ending\n");
1522 static int ray_dev_close(struct net_device *dev)
1524 ray_dev_t *local = netdev_priv(dev);
1528 dev_dbg(&link->dev, "ray_dev_close('%s')\n", dev->name);
1531 netif_stop_queue(dev);
1542 static void ray_reset(struct net_device *dev)
1556 dev_dbg(&link->dev, "ray_cs interrupt_ecf - device not present\n");
1559 dev_dbg(&link->dev, "interrupt_ecf(local=%p, ccs = 0x%x\n", local, ccs);
1566 dev_dbg(&link->dev, "ray_cs interrupt_ecf card not ready for interrupt\n");
1585 dev_dbg(&link->dev, "ray_cs get_free_tx_ccs - device not present\n");
1590 dev_dbg(&link->dev, "ray_cs tx_ccs_lock busy\n");
1603 dev_dbg(&link->dev, "ray_cs ERROR no free tx CCS for raylink card\n");
1617 dev_dbg(&link->dev, "ray_cs get_free_ccs - device not present\n");
1621 dev_dbg(&link->dev, "ray_cs ccs_lock busy\n");
1634 dev_dbg(&link->dev, "ray_cs ERROR no free CCS for raylink card\n");
1682 static struct net_device_stats *ray_get_stats(struct net_device *dev)
1684 ray_dev_t *local = netdev_priv(dev);
1688 dev_dbg(&link->dev, "ray_cs net_device_stats - device not present\n");
1711 static void ray_update_parm(struct net_device *dev, UCHAR objid, UCHAR *value,
1714 ray_dev_t *local = netdev_priv(dev);
1721 dev_dbg(&link->dev, "ray_update_parm - device not present\n");
1726 dev_dbg(&link->dev, "ray_update_parm - No free ccs\n");
1739 dev_dbg(&link->dev, "ray_cs associate failed - ECF not ready for intr\n");
1745 static void ray_update_multi_list(struct net_device *dev, int all)
1749 ray_dev_t *local = netdev_priv(dev);
1754 dev_dbg(&link->dev, "ray_update_multi_list - device not present\n");
1757 dev_dbg(&link->dev, "ray_update_multi_list(%p)\n", dev);
1759 dev_dbg(&link->dev, "ray_update_multi - No free ccs\n");
1773 netdev_for_each_mc_addr(ha, dev) {
1775 dev_dbg(&link->dev, "ray_update_multi add addr %pm\n",
1783 dev_dbg(&link->dev, "ray_cs update_multi %d addresses in list\n", i);
1788 dev_dbg(&link->dev,
1795 static void set_multicast_list(struct net_device *dev)
1797 ray_dev_t *local = netdev_priv(dev);
1800 pr_debug("ray_cs set_multicast_list(%p)\n", dev);
1802 if (dev->flags & IFF_PROMISC) {
1807 ray_update_parm(dev, OBJID_promiscuous_mode,
1815 ray_update_parm(dev, OBJID_promiscuous_mode,
1820 if (dev->flags & IFF_ALLMULTI)
1821 ray_update_multi_list(dev, 1);
1823 if (local->num_multi != netdev_mc_count(dev))
1824 ray_update_multi_list(dev, 0);
1833 struct net_device *dev = (struct net_device *)dev_id;
1845 if (dev == NULL) /* Note that we want interrupts with dev->start == 0 */
1848 pr_debug("ray_cs: interrupt for *dev=%p\n", dev);
1850 local = netdev_priv(dev);
1860 dev_dbg(&link->dev, "ray_cs interrupt bad rcsindex = 0x%x\n", rcsindex);
1872 dev_dbg(&link->dev,
1875 dev_dbg(&link->dev,
1880 dev_dbg(&link->dev, "ray_cs interrupt update params done\n");
1885 dev_dbg(&link->dev,
1891 dev_dbg(&link->dev, "ray_cs interrupt report params done\n");
1894 dev_dbg(&link->dev,
1898 dev_dbg(&link->dev,
1911 dev_dbg(&link->dev,
1915 dev_dbg(&link->dev,
1942 dev_dbg(&link->dev,
1947 dev_dbg(&link->dev,
1958 dev_dbg(&link->dev, "ray_cs association successful\n");
1960 dev_dbg(&link->dev, "ray_cs association failed,\n");
1967 dev_dbg(&link->dev,
1970 dev_dbg(&link->dev,
1974 netif_start_queue(dev);
1975 netif_wake_queue(dev);
1978 dev_dbg(&link->dev, "ray_cs interrupt mem test done\n");
1981 dev_dbg(&link->dev,
1985 dev_dbg(&link->dev, "ray_cs interrupt dump memory done\n");
1988 dev_dbg(&link->dev,
1992 dev_dbg(&link->dev,
2003 ray_rx(dev, local, prcs);
2006 dev_dbg(&link->dev, "ray_cs interrupt rejoin net complete\n");
2011 netif_start_queue(dev);
2016 dev_dbg(&link->dev, "ray_cs new BSSID = %pm\n",
2023 dev_dbg(&link->dev, "ray_cs interrupt roaming initiated\n");
2024 netif_stop_queue(dev);
2028 dev_dbg(&link->dev, "ray_cs interrupt japan call sign rx\n");
2031 dev_dbg(&link->dev,
2044 static void ray_rx(struct net_device *dev, ray_dev_t *local,
2064 rx_data(dev, prcs, pkt_addr, rx_len);
2069 rx_data(dev, prcs, pkt_addr, rx_len);
2076 rx_data(dev, prcs, pkt_addr, rx_len);
2086 rx_data(dev, prcs, pkt_addr, rx_len);
2094 ray_get_stats(dev);
2105 static void rx_data(struct net_device *dev, struct rcs __iomem *prcs,
2110 ray_dev_t *local = netdev_priv(dev);
2124 (dev->mtu + RX_MAC_HEADER_LENGTH + ETH_HLEN +
2135 (dev->mtu + RX_MAC_HEADER_LENGTH + ETH_HLEN +
2244 skb->protocol = eth_type_trans(skb, dev);
2269 wireless_spy_update(dev, linksrcaddr, &wstats);
2407 dev_dbg(&link->dev, "ray_cs Starting authentication.\n");
2409 dev_dbg(&link->dev, "ray_cs authenticate - device not present\n");
2475 struct net_device *dev = link->priv;
2478 dev_dbg(&link->dev, "ray_cs associate - device not present\n");
2484 dev_dbg(&link->dev, "ray_cs associate - No free ccs\n");
2487 dev_dbg(&link->dev, "ray_cs Starting association with access point\n");
2493 dev_dbg(&link->dev, "ray_cs associate failed - ECF not ready for intr\n");
2504 netif_start_queue(dev);
2561 struct net_device *dev;
2570 dev = (struct net_device *)link->priv;
2571 if (!dev)
2573 local = netdev_priv(dev);