Lines Matching refs:lio

177 	struct lio *lio;  member
618 static inline int ifstate_check(struct lio *lio, int state_flag) in ifstate_check() argument
620 return atomic_read(&lio->ifstate) & state_flag; in ifstate_check()
628 static inline void ifstate_set(struct lio *lio, int state_flag) in ifstate_set() argument
630 atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) | state_flag)); in ifstate_set()
638 static inline void ifstate_reset(struct lio *lio, int state_flag) in ifstate_reset() argument
640 atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) & ~(state_flag))); in ifstate_reset()
706 struct lio *lio = GET_LIO(netdev); in start_txq() local
708 if (lio->linfo.link.s.status) { in start_txq()
745 static inline int check_txq_status(struct lio *lio) in check_txq_status() argument
749 if (netif_is_multiqueue(lio->netdev)) { in check_txq_status()
750 int numqs = lio->netdev->num_tx_queues; in check_txq_status()
755 iq = lio->linfo.txpciq[q & (lio->linfo.num_txpciq - 1)]; in check_txq_status()
756 if (octnet_iq_is_full(lio->oct_dev, iq)) in check_txq_status()
758 wake_q(lio->netdev, q); in check_txq_status()
762 if (octnet_iq_is_full(lio->oct_dev, lio->txq)) in check_txq_status()
764 wake_q(lio->netdev, lio->txq); in check_txq_status()
793 static void delete_glist(struct lio *lio) in delete_glist() argument
799 list_delete_head(&lio->glist); in delete_glist()
813 static int setup_glist(struct lio *lio) in setup_glist() argument
818 INIT_LIST_HEAD(&lio->glist); in setup_glist()
820 for (i = 0; i < lio->tx_qsize; i++) { in setup_glist()
840 list_add_tail(&g->list, &lio->glist); in setup_glist()
843 if (i == lio->tx_qsize) in setup_glist()
846 delete_glist(lio); in setup_glist()
856 struct lio *lio = GET_LIO(netdev); in print_link_info() local
858 if (atomic_read(&lio->ifstate) & LIO_IFSTATE_REGISTERED) { in print_link_info()
859 struct oct_link_info *linfo = &lio->linfo; in print_link_info()
862 netif_info(lio, link, lio->netdev, "%d Mbps %s Duplex UP\n", in print_link_info()
866 netif_info(lio, link, lio->netdev, "Link Down\n"); in print_link_info()
882 struct lio *lio = GET_LIO(netdev); in update_link_status() local
884 if ((lio->intf_open) && (lio->linfo.link.u64 != ls->u64)) { in update_link_status()
885 lio->linfo.link.u64 = ls->u64; in update_link_status()
889 if (lio->linfo.link.s.status) { in update_link_status()
1159 static void send_rx_ctrl_cmd(struct lio *lio, int start_stop) in send_rx_ctrl_cmd() argument
1167 nctrl.ncmd.s.param1 = lio->linfo.ifidx; in send_rx_ctrl_cmd()
1169 nctrl.netpndev = (u64)lio->netdev; in send_rx_ctrl_cmd()
1173 if (octnet_send_nic_ctrl_pkt(lio->oct_dev, &nctrl, nparams) < 0) in send_rx_ctrl_cmd()
1174 netif_info(lio, rx_err, lio->netdev, "Failed to send RX Control message\n"); in send_rx_ctrl_cmd()
1188 struct lio *lio; in liquidio_destroy_nic_device() local
1196 lio = GET_LIO(netdev); in liquidio_destroy_nic_device()
1200 send_rx_ctrl_cmd(lio, 0); in liquidio_destroy_nic_device()
1202 if (atomic_read(&lio->ifstate) & LIO_IFSTATE_RUNNING) in liquidio_destroy_nic_device()
1205 if (atomic_read(&lio->ifstate) & LIO_IFSTATE_REGISTERED) in liquidio_destroy_nic_device()
1208 delete_glist(lio); in liquidio_destroy_nic_device()
1222 struct lio *lio; in liquidio_stop_nic_module() local
1231 lio = GET_LIO(oct->props[i].netdev); in liquidio_stop_nic_module()
1232 for (j = 0; j < lio->linfo.num_rxpciq; j++) in liquidio_stop_nic_module()
1233 octeon_unregister_droq_ops(oct, lio->linfo.rxpciq[j]); in liquidio_stop_nic_module()
1334 static inline int check_txq_state(struct lio *lio, struct sk_buff *skb) in check_txq_state() argument
1338 if (netif_is_multiqueue(lio->netdev)) { in check_txq_state()
1340 iq = lio->linfo.txpciq[(q & (lio->linfo.num_txpciq - 1))]; in check_txq_state()
1342 iq = lio->txq; in check_txq_state()
1345 if (octnet_iq_is_full(lio->oct_dev, iq)) in check_txq_state()
1347 wake_q(lio->netdev, q); in check_txq_state()
1359 struct lio *lio; in free_netbuf() local
1363 lio = finfo->lio; in free_netbuf()
1365 dma_unmap_single(&lio->oct_dev->pci_dev->dev, finfo->dptr, skb->len, in free_netbuf()
1368 check_txq_state(lio, skb); in free_netbuf()
1381 struct lio *lio; in free_netsgbuf() local
1387 lio = finfo->lio; in free_netsgbuf()
1391 dma_unmap_single(&lio->oct_dev->pci_dev->dev, in free_netsgbuf()
1399 pci_unmap_page((lio->oct_dev)->pci_dev, in free_netsgbuf()
1405 dma_unmap_single(&lio->oct_dev->pci_dev->dev, in free_netsgbuf()
1409 spin_lock(&lio->lock); in free_netsgbuf()
1410 list_add_tail(&g->list, &lio->glist); in free_netsgbuf()
1411 spin_unlock(&lio->lock); in free_netsgbuf()
1413 check_txq_state(lio, skb); /* mq support: sub-queue state check */ in free_netsgbuf()
1427 struct lio *lio; in free_netsgbuf_with_resp() local
1435 lio = finfo->lio; in free_netsgbuf_with_resp()
1439 dma_unmap_single(&lio->oct_dev->pci_dev->dev, in free_netsgbuf_with_resp()
1447 pci_unmap_page((lio->oct_dev)->pci_dev, in free_netsgbuf_with_resp()
1453 dma_unmap_single(&lio->oct_dev->pci_dev->dev, in free_netsgbuf_with_resp()
1457 spin_lock(&lio->lock); in free_netsgbuf_with_resp()
1458 list_add_tail(&g->list, &lio->glist); in free_netsgbuf_with_resp()
1459 spin_unlock(&lio->lock); in free_netsgbuf_with_resp()
1463 check_txq_state(lio, skb); in free_netsgbuf_with_resp()
1473 struct lio *lio = container_of(ptp, struct lio, ptp_info); in liquidio_ptp_adjfreq() local
1474 struct octeon_device *oct = (struct octeon_device *)lio->oct_dev; in liquidio_ptp_adjfreq()
1491 spin_lock_irqsave(&lio->ptp_lock, flags); in liquidio_ptp_adjfreq()
1498 spin_unlock_irqrestore(&lio->ptp_lock, flags); in liquidio_ptp_adjfreq()
1511 struct lio *lio = container_of(ptp, struct lio, ptp_info); in liquidio_ptp_adjtime() local
1513 spin_lock_irqsave(&lio->ptp_lock, flags); in liquidio_ptp_adjtime()
1514 lio->ptp_adjust += delta; in liquidio_ptp_adjtime()
1515 spin_unlock_irqrestore(&lio->ptp_lock, flags); in liquidio_ptp_adjtime()
1531 struct lio *lio = container_of(ptp, struct lio, ptp_info); in liquidio_ptp_gettime() local
1532 struct octeon_device *oct = (struct octeon_device *)lio->oct_dev; in liquidio_ptp_gettime()
1534 spin_lock_irqsave(&lio->ptp_lock, flags); in liquidio_ptp_gettime()
1536 ns += lio->ptp_adjust; in liquidio_ptp_gettime()
1537 spin_unlock_irqrestore(&lio->ptp_lock, flags); in liquidio_ptp_gettime()
1555 struct lio *lio = container_of(ptp, struct lio, ptp_info); in liquidio_ptp_settime() local
1556 struct octeon_device *oct = (struct octeon_device *)lio->oct_dev; in liquidio_ptp_settime()
1560 spin_lock_irqsave(&lio->ptp_lock, flags); in liquidio_ptp_settime()
1562 lio->ptp_adjust = 0; in liquidio_ptp_settime()
1563 spin_unlock_irqrestore(&lio->ptp_lock, flags); in liquidio_ptp_settime()
1586 struct lio *lio = GET_LIO(netdev); in oct_ptp_open() local
1587 struct octeon_device *oct = (struct octeon_device *)lio->oct_dev; in oct_ptp_open()
1589 spin_lock_init(&lio->ptp_lock); in oct_ptp_open()
1591 snprintf(lio->ptp_info.name, 16, "%s", netdev->name); in oct_ptp_open()
1592 lio->ptp_info.owner = THIS_MODULE; in oct_ptp_open()
1593 lio->ptp_info.max_adj = 250000000; in oct_ptp_open()
1594 lio->ptp_info.n_alarm = 0; in oct_ptp_open()
1595 lio->ptp_info.n_ext_ts = 0; in oct_ptp_open()
1596 lio->ptp_info.n_per_out = 0; in oct_ptp_open()
1597 lio->ptp_info.pps = 0; in oct_ptp_open()
1598 lio->ptp_info.adjfreq = liquidio_ptp_adjfreq; in oct_ptp_open()
1599 lio->ptp_info.adjtime = liquidio_ptp_adjtime; in oct_ptp_open()
1600 lio->ptp_info.gettime64 = liquidio_ptp_gettime; in oct_ptp_open()
1601 lio->ptp_info.settime64 = liquidio_ptp_settime; in oct_ptp_open()
1602 lio->ptp_info.enable = liquidio_ptp_enable; in oct_ptp_open()
1604 lio->ptp_adjust = 0; in oct_ptp_open()
1606 lio->ptp_clock = ptp_clock_register(&lio->ptp_info, in oct_ptp_open()
1609 if (IS_ERR(lio->ptp_clock)) in oct_ptp_open()
1610 lio->ptp_clock = NULL; in oct_ptp_open()
1749 struct lio *lio; in select_q() local
1751 lio = GET_LIO(dev); in select_q()
1755 return (u16)(qindex & (lio->linfo.num_txpciq - 1)); in select_q()
1783 struct lio *lio = GET_LIO(netdev); in liquidio_push_packet() local
1786 if (!ifstate_check(lio, LIO_IFSTATE_RUNNING)) { in liquidio_push_packet()
1798 if (ifstate_check(lio, in liquidio_push_packet()
1806 ns_to_ktime(ns + lio->ptp_adjust); in liquidio_push_packet()
1828 netif_info(lio, rx_err, lio->netdev, in liquidio_push_packet()
1881 struct lio *lio = GET_LIO(droq->napi.dev); in liquidio_napi_do_rx() local
1882 struct octeon_device *oct = lio->oct_dev; in liquidio_napi_do_rx()
1888 netif_info(lio, rx_err, lio->netdev, in liquidio_napi_do_rx()
1949 struct lio *lio; in setup_io_queues() local
1952 lio = GET_LIO(net_device); in setup_io_queues()
1966 for (q = 0; q < lio->linfo.num_rxpciq; q++) { in setup_io_queues()
1967 q_no = lio->linfo.rxpciq[q]; in setup_io_queues()
1972 lio->ifidx), in setup_io_queues()
1975 lio->ifidx), NULL); in setup_io_queues()
1997 for (q = 0; q < lio->linfo.num_txpciq; q++) { in setup_io_queues()
2000 lio->ifidx); in setup_io_queues()
2001 retval = octeon_setup_iq(octeon_dev, lio->linfo.txpciq[q], in setup_io_queues()
2022 struct lio *lio = (struct lio *)wk->ctxptr; in octnet_poll_check_txq_status() local
2024 if (!ifstate_check(lio, LIO_IFSTATE_RUNNING)) in octnet_poll_check_txq_status()
2027 check_txq_status(lio); in octnet_poll_check_txq_status()
2028 queue_delayed_work(lio->txq_status_wq.wq, in octnet_poll_check_txq_status()
2029 &lio->txq_status_wq.wk.work, msecs_to_jiffies(1)); in octnet_poll_check_txq_status()
2038 struct lio *lio = GET_LIO(netdev); in setup_tx_poll_fn() local
2039 struct octeon_device *oct = lio->oct_dev; in setup_tx_poll_fn()
2041 lio->txq_status_wq.wq = create_workqueue("txq-status"); in setup_tx_poll_fn()
2042 if (!lio->txq_status_wq.wq) { in setup_tx_poll_fn()
2046 INIT_DELAYED_WORK(&lio->txq_status_wq.wk.work, in setup_tx_poll_fn()
2048 lio->txq_status_wq.wk.ctxptr = lio; in setup_tx_poll_fn()
2049 queue_delayed_work(lio->txq_status_wq.wq, in setup_tx_poll_fn()
2050 &lio->txq_status_wq.wk.work, msecs_to_jiffies(1)); in setup_tx_poll_fn()
2059 struct lio *lio = GET_LIO(netdev); in liquidio_open() local
2060 struct octeon_device *oct = lio->oct_dev; in liquidio_open()
2068 ifstate_set(lio, LIO_IFSTATE_RUNNING); in liquidio_open()
2072 netif_info(lio, ifup, lio->netdev, "Interface Open, ready for traffic\n"); in liquidio_open()
2076 send_rx_ctrl_cmd(lio, 1); in liquidio_open()
2079 lio->intf_open = 1; in liquidio_open()
2094 struct lio *lio = GET_LIO(netdev); in liquidio_stop() local
2095 struct octeon_device *oct = lio->oct_dev; in liquidio_stop()
2097 netif_info(lio, ifdown, lio->netdev, "Stopping interface!\n"); in liquidio_stop()
2099 lio->intf_open = 0; in liquidio_stop()
2100 lio->linfo.link.s.status = 0; in liquidio_stop()
2105 send_rx_ctrl_cmd(lio, 0); in liquidio_stop()
2107 cancel_delayed_work_sync(&lio->txq_status_wq.wk.work); in liquidio_stop()
2108 flush_workqueue(lio->txq_status_wq.wq); in liquidio_stop()
2109 destroy_workqueue(lio->txq_status_wq.wq); in liquidio_stop()
2111 if (lio->ptp_clock) { in liquidio_stop()
2112 ptp_clock_unregister(lio->ptp_clock); in liquidio_stop()
2113 lio->ptp_clock = NULL; in liquidio_stop()
2116 ifstate_reset(lio, LIO_IFSTATE_RUNNING); in liquidio_stop()
2119 set_bit(__LINK_STATE_START, &lio->netdev->state); in liquidio_stop()
2136 struct lio *lio = GET_LIO(netdev); in liquidio_link_ctrl_cmd_completion() local
2137 struct octeon_device *oct = lio->oct_dev; in liquidio_link_ctrl_cmd_completion()
2146 netif_info(lio, probe, lio->netdev, " MACAddr changed to 0x%llx\n", in liquidio_link_ctrl_cmd_completion()
2155 netif_info(lio, probe, lio->netdev, " MTU Changed from %d to %d\n", in liquidio_link_ctrl_cmd_completion()
2164 netif_info(lio, probe, lio->netdev, "LED Flashing visual identification\n"); in liquidio_link_ctrl_cmd_completion()
2237 struct lio *lio = GET_LIO(netdev); in liquidio_set_mcast_list() local
2238 struct octeon_device *oct = lio->oct_dev; in liquidio_set_mcast_list()
2251 nctrl.ncmd.s.param1 = lio->linfo.ifidx; in liquidio_set_mcast_list()
2277 ret = octnet_send_nic_ctrl_pkt(lio->oct_dev, &nctrl, nparams); in liquidio_set_mcast_list()
2291 struct lio *lio = GET_LIO(netdev); in liquidio_set_mac() local
2292 struct octeon_device *oct = lio->oct_dev; in liquidio_set_mac()
2298 (ifstate_check(lio, LIO_IFSTATE_RUNNING))) in liquidio_set_mac()
2305 nctrl.ncmd.s.param1 = lio->linfo.ifidx; in liquidio_set_mac()
2318 ret = octnet_send_nic_ctrl_pkt(lio->oct_dev, &nctrl, nparams); in liquidio_set_mac()
2324 memcpy(((u8 *)&lio->linfo.hw_addr) + 2, addr->sa_data, ETH_ALEN); in liquidio_set_mac()
2335 struct lio *lio = GET_LIO(netdev); in liquidio_get_stats() local
2343 oct = lio->oct_dev; in liquidio_get_stats()
2345 for (i = 0; i < lio->linfo.num_txpciq; i++) { in liquidio_get_stats()
2346 iq_no = lio->linfo.txpciq[i]; in liquidio_get_stats()
2361 for (i = 0; i < lio->linfo.num_rxpciq; i++) { in liquidio_get_stats()
2362 oq_no = lio->linfo.rxpciq[i]; in liquidio_get_stats()
2385 struct lio *lio = GET_LIO(netdev); in liquidio_change_mtu() local
2386 struct octeon_device *oct = lio->oct_dev; in liquidio_change_mtu()
2408 nctrl.ncmd.s.param1 = lio->linfo.ifidx; in liquidio_change_mtu()
2416 ret = octnet_send_nic_ctrl_pkt(lio->oct_dev, &nctrl, nparams); in liquidio_change_mtu()
2422 lio->mtu = new_mtu; in liquidio_change_mtu()
2436 struct lio *lio = GET_LIO(netdev); in hwtstamp_ioctl() local
2476 ifstate_set(lio, LIO_IFSTATE_RX_TIMESTAMP_ENABLED); in hwtstamp_ioctl()
2479 ifstate_reset(lio, LIO_IFSTATE_RX_TIMESTAMP_ENABLED); in hwtstamp_ioctl()
2512 struct lio *lio; in handle_timestamp() local
2516 lio = finfo->lio; in handle_timestamp()
2518 oct = lio->oct_dev; in handle_timestamp()
2533 netif_info(lio, tx_done, lio->netdev, in handle_timestamp()
2536 ts.hwtstamp = ns_to_ktime(ns + lio->ptp_adjust); in handle_timestamp()
2558 struct lio *lio; in send_nic_timestamp_pkt() local
2561 lio = finfo->lio; in send_nic_timestamp_pkt()
2593 netif_info(lio, tx_queued, lio->netdev, "Queued timestamp packet\n"); in send_nic_timestamp_pkt()
2669 struct lio *lio; in liquidio_xmit() local
2680 lio = GET_LIO(netdev); in liquidio_xmit()
2681 oct = lio->oct_dev; in liquidio_xmit()
2685 q_idx = (cpu & (lio->linfo.num_txpciq - 1)); in liquidio_xmit()
2686 iq_no = lio->linfo.txpciq[q_idx]; in liquidio_xmit()
2688 iq_no = lio->txq; in liquidio_xmit()
2696 if (!(atomic_read(&lio->ifstate) & LIO_IFSTATE_RUNNING) || in liquidio_xmit()
2697 (!lio->linfo.link.s.status) || in liquidio_xmit()
2699 netif_info(lio, tx_err, lio->netdev, in liquidio_xmit()
2701 lio->linfo.link.s.status); in liquidio_xmit()
2709 finfo->lio = lio; in liquidio_xmit()
2723 netif_info(lio, tx_err, lio->netdev, "Transmit failed iq:%d full\n", in liquidio_xmit()
2729 if (octnet_iq_is_full(oct, lio->txq)) { in liquidio_xmit()
2732 netif_info(lio, tx_err, lio->netdev, "Transmit failed iq:%d full\n", in liquidio_xmit()
2744 cmdsetup.s.ifidx = lio->linfo.ifidx; in liquidio_xmit()
2819 spin_lock(&lio->lock); in liquidio_xmit()
2820 g = (struct octnic_gather *)list_delete_head(&lio->glist); in liquidio_xmit()
2821 spin_unlock(&lio->lock); in liquidio_xmit()
2824 netif_info(lio, tx_err, lio->netdev, in liquidio_xmit()
2899 netif_info(lio, tx_queued, lio->netdev, "Transmit queued successfully\n"); in liquidio_xmit()
2902 stop_q(lio->netdev, q_idx); in liquidio_xmit()
2913 netif_info(lio, tx_err, lio->netdev, "IQ%d Transmit dropped:%llu\n", in liquidio_xmit()
2926 struct lio *lio; in liquidio_tx_timeout() local
2928 lio = GET_LIO(netdev); in liquidio_tx_timeout()
2930 netif_info(lio, tx_err, lio->netdev, in liquidio_tx_timeout()
2939 struct lio *lio = GET_LIO(netdev); in liquidio_set_feature() local
2940 struct octeon_device *oct = lio->oct_dev; in liquidio_set_feature()
2949 nctrl.ncmd.s.param1 = lio->linfo.ifidx; in liquidio_set_feature()
2957 ret = octnet_send_nic_ctrl_pkt(lio->oct_dev, &nctrl, nparams); in liquidio_set_feature()
2973 struct lio *lio = netdev_priv(netdev); in liquidio_fix_features() local
2976 !(lio->dev_capability & NETIF_F_RXCSUM)) in liquidio_fix_features()
2980 !(lio->dev_capability & NETIF_F_HW_CSUM)) in liquidio_fix_features()
2983 if ((request & NETIF_F_TSO) && !(lio->dev_capability & NETIF_F_TSO)) in liquidio_fix_features()
2986 if ((request & NETIF_F_TSO6) && !(lio->dev_capability & NETIF_F_TSO6)) in liquidio_fix_features()
2989 if ((request & NETIF_F_LRO) && !(lio->dev_capability & NETIF_F_LRO)) in liquidio_fix_features()
2994 (lio->dev_capability & NETIF_F_LRO)) in liquidio_fix_features()
3007 struct lio *lio = netdev_priv(netdev); in liquidio_set_features() local
3012 if ((features & NETIF_F_LRO) && (lio->dev_capability & NETIF_F_LRO)) in liquidio_set_features()
3015 (lio->dev_capability & NETIF_F_LRO)) in liquidio_set_features()
3123 struct lio *lio = NULL; in setup_nic_devices() local
3250 lio = GET_LIO(netdev); in setup_nic_devices()
3252 memset(lio, 0, sizeof(struct lio)); in setup_nic_devices()
3254 lio->linfo.ifidx = resp->cfg_info.ifidx; in setup_nic_devices()
3255 lio->ifidx = resp->cfg_info.ifidx; in setup_nic_devices()
3257 lio->linfo.num_rxpciq = num_oqueues; in setup_nic_devices()
3258 lio->linfo.num_txpciq = num_iqueues; in setup_nic_devices()
3264 lio->linfo.rxpciq[j] = q_no; in setup_nic_devices()
3270 lio->linfo.txpciq[j] = q_no; in setup_nic_devices()
3272 lio->linfo.hw_addr = resp->cfg_info.linfo.hw_addr; in setup_nic_devices()
3273 lio->linfo.gmxport = resp->cfg_info.linfo.gmxport; in setup_nic_devices()
3274 lio->linfo.link.u64 = resp->cfg_info.linfo.link.u64; in setup_nic_devices()
3276 lio->msg_enable = netif_msg_init(debug, DEFAULT_MSG_ENABLE); in setup_nic_devices()
3278 lio->dev_capability = NETIF_F_HIGHDMA in setup_nic_devices()
3285 netdev->features = lio->dev_capability; in setup_nic_devices()
3286 netdev->vlan_features = lio->dev_capability; in setup_nic_devices()
3288 netdev->hw_features = lio->dev_capability; in setup_nic_devices()
3293 lio->oct_dev = octeon_dev; in setup_nic_devices()
3294 lio->octprops = props; in setup_nic_devices()
3295 lio->netdev = netdev; in setup_nic_devices()
3296 spin_lock_init(&lio->lock); in setup_nic_devices()
3300 lio->linfo.gmxport, CVM_CAST64(lio->linfo.hw_addr)); in setup_nic_devices()
3303 octeon_swap_8B_data(&lio->linfo.hw_addr, 1); in setup_nic_devices()
3305 mac[j] = *((u8 *)(((u8 *)&lio->linfo.hw_addr) + 2 + j)); in setup_nic_devices()
3316 ifstate_set(lio, LIO_IFSTATE_DROQ_OPS); in setup_nic_devices()
3321 lio->txq = lio->linfo.txpciq[0]; in setup_nic_devices()
3322 lio->rxq = lio->linfo.rxpciq[0]; in setup_nic_devices()
3324 lio->tx_qsize = octeon_get_tx_qsize(octeon_dev, lio->txq); in setup_nic_devices()
3325 lio->rx_qsize = octeon_get_rx_qsize(octeon_dev, lio->rxq); in setup_nic_devices()
3327 if (setup_glist(lio)) { in setup_nic_devices()
3352 if (lio->linfo.link.s.status) { in setup_nic_devices()
3359 ifstate_set(lio, LIO_IFSTATE_REGISTERED); in setup_nic_devices()