netcp 59 drivers/net/ethernet/ti/netcp.h struct netcp_intf *netcp; netcp 134 drivers/net/ethernet/ti/netcp.h struct netcp_intf *netcp; netcp 70 drivers/net/ethernet/ti/netcp_core.c #define for_each_module(netcp, intf_modpriv) \ netcp 71 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry(intf_modpriv, &netcp->module_head, intf_list) netcp 221 drivers/net/ethernet/ti/netcp_core.c static int netcp_register_interface(struct netcp_intf *netcp) netcp 225 drivers/net/ethernet/ti/netcp_core.c ret = register_netdev(netcp->ndev); netcp 227 drivers/net/ethernet/ti/netcp_core.c netcp->netdev_registered = true; netcp 578 drivers/net/ethernet/ti/netcp_core.c static void netcp_free_rx_desc_chain(struct netcp_intf *netcp, netcp 590 drivers/net/ethernet/ti/netcp_core.c ndesc = knav_pool_desc_unmap(netcp->rx_pool, dma_desc, dma_sz); netcp 592 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Rx desc\n"); netcp 601 drivers/net/ethernet/ti/netcp_core.c dma_unmap_page(netcp->dev, dma_buf, PAGE_SIZE, DMA_FROM_DEVICE); netcp 603 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 613 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 616 drivers/net/ethernet/ti/netcp_core.c static void netcp_empty_rx_queue(struct netcp_intf *netcp) netcp 618 drivers/net/ethernet/ti/netcp_core.c struct netcp_stats *rx_stats = &netcp->stats; netcp 624 drivers/net/ethernet/ti/netcp_core.c dma = knav_queue_pop(netcp->rx_queue, &dma_sz); netcp 628 drivers/net/ethernet/ti/netcp_core.c desc = knav_pool_desc_unmap(netcp->rx_pool, dma, dma_sz); netcp 630 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "%s: failed to unmap Rx desc\n", netcp 635 drivers/net/ethernet/ti/netcp_core.c netcp_free_rx_desc_chain(netcp, desc); netcp 640 drivers/net/ethernet/ti/netcp_core.c static int netcp_process_one_rx_packet(struct netcp_intf *netcp) netcp 642 drivers/net/ethernet/ti/netcp_core.c struct netcp_stats *rx_stats = &netcp->stats; netcp 653 drivers/net/ethernet/ti/netcp_core.c dma_desc = knav_queue_pop(netcp->rx_queue, &dma_sz); netcp 657 drivers/net/ethernet/ti/netcp_core.c desc = knav_pool_desc_unmap(netcp->rx_pool, dma_desc, dma_sz); netcp 659 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Rx desc\n"); netcp 671 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "NULL bufptr in desc\n"); netcp 677 drivers/net/ethernet/ti/netcp_core.c dma_unmap_single(netcp->dev, dma_buff, buf_len, DMA_FROM_DEVICE); netcp 682 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "build_skb() failed\n"); netcp 694 drivers/net/ethernet/ti/netcp_core.c ndesc = knav_pool_desc_unmap(netcp->rx_pool, dma_desc, dma_sz); netcp 696 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Rx desc\n"); netcp 707 drivers/net/ethernet/ti/netcp_core.c dma_unmap_page(netcp->dev, dma_buff, PAGE_SIZE, netcp 710 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Bad Rx desc dma_buff(%pad), len(%d), page(%p)\n", netcp 720 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, ndesc); netcp 725 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "mismatch in packet size(%d) & sum of fragments(%d)\n", netcp 732 drivers/net/ethernet/ti/netcp_core.c if (!(netcp->hw_cap & ETH_SW_CAN_REMOVE_ETH_FCS)) netcp 737 drivers/net/ethernet/ti/netcp_core.c skb->dev = netcp->ndev; netcp 744 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry(rx_hook, &netcp->rxhook_list_head, list) { netcp 750 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "RX hook %d failed: %d\n", netcp 754 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 760 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 768 drivers/net/ethernet/ti/netcp_core.c skb->protocol = eth_type_trans(skb, netcp->ndev); netcp 773 drivers/net/ethernet/ti/netcp_core.c netcp_free_rx_desc_chain(netcp, desc); netcp 778 drivers/net/ethernet/ti/netcp_core.c static int netcp_process_rx_packets(struct netcp_intf *netcp, netcp 783 drivers/net/ethernet/ti/netcp_core.c for (i = 0; (i < budget) && !netcp_process_one_rx_packet(netcp); i++) netcp 789 drivers/net/ethernet/ti/netcp_core.c static void netcp_free_rx_buf(struct netcp_intf *netcp, int fdq) netcp 797 drivers/net/ethernet/ti/netcp_core.c while ((dma = knav_queue_pop(netcp->rx_fdq[fdq], &dma_sz))) { netcp 798 drivers/net/ethernet/ti/netcp_core.c desc = knav_pool_desc_unmap(netcp->rx_pool, dma, dma_sz); netcp 800 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Rx desc\n"); netcp 811 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "NULL orig_buff in desc\n"); netcp 812 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 817 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "NULL bufptr in desc\n"); netcp 818 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 823 drivers/net/ethernet/ti/netcp_core.c dma_unmap_single(netcp->dev, dma, buf_len, netcp 827 drivers/net/ethernet/ti/netcp_core.c dma_unmap_page(netcp->dev, dma, buf_len, netcp 832 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, desc); netcp 836 drivers/net/ethernet/ti/netcp_core.c static void netcp_rxpool_free(struct netcp_intf *netcp) netcp 841 drivers/net/ethernet/ti/netcp_core.c !IS_ERR_OR_NULL(netcp->rx_fdq[i]); i++) netcp 842 drivers/net/ethernet/ti/netcp_core.c netcp_free_rx_buf(netcp, i); netcp 844 drivers/net/ethernet/ti/netcp_core.c if (knav_pool_count(netcp->rx_pool) != netcp->rx_pool_size) netcp 845 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Lost Rx (%d) descriptors\n", netcp 846 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool_size - knav_pool_count(netcp->rx_pool)); netcp 848 drivers/net/ethernet/ti/netcp_core.c knav_pool_destroy(netcp->rx_pool); netcp 849 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool = NULL; netcp 852 drivers/net/ethernet/ti/netcp_core.c static int netcp_allocate_rx_buf(struct netcp_intf *netcp, int fdq) netcp 863 drivers/net/ethernet/ti/netcp_core.c hwdesc = knav_pool_desc_get(netcp->rx_pool); netcp 865 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "out of rx pool desc\n"); netcp 880 drivers/net/ethernet/ti/netcp_core.c dev_warn_ratelimited(netcp->ndev_dev, netcp 884 drivers/net/ethernet/ti/netcp_core.c dma = dma_map_single(netcp->dev, bufptr, buf_len, netcp 886 drivers/net/ethernet/ti/netcp_core.c if (unlikely(dma_mapping_error(netcp->dev, dma))) netcp 897 drivers/net/ethernet/ti/netcp_core.c dev_warn_ratelimited(netcp->ndev_dev, "Secondary page alloc failed\n"); netcp 901 drivers/net/ethernet/ti/netcp_core.c dma = dma_map_page(netcp->dev, page, 0, buf_len, DMA_TO_DEVICE); netcp 913 drivers/net/ethernet/ti/netcp_core.c pkt_info |= (netcp->rx_queue_id & KNAV_DMA_DESC_RETQ_MASK) << netcp 921 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_map(netcp->rx_pool, hwdesc, sizeof(*hwdesc), &dma, netcp 923 drivers/net/ethernet/ti/netcp_core.c knav_queue_push(netcp->rx_fdq[fdq], dma, sizeof(*hwdesc), 0); netcp 927 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->rx_pool, hwdesc); netcp 932 drivers/net/ethernet/ti/netcp_core.c static void netcp_rxpool_refill(struct netcp_intf *netcp) netcp 938 drivers/net/ethernet/ti/netcp_core.c for (i = 0; i < KNAV_DMA_FDQ_PER_CHAN && netcp->rx_fdq[i]; i++) { netcp 939 drivers/net/ethernet/ti/netcp_core.c fdq_deficit[i] = netcp->rx_queue_depths[i] - netcp 940 drivers/net/ethernet/ti/netcp_core.c knav_queue_get_count(netcp->rx_fdq[i]); netcp 943 drivers/net/ethernet/ti/netcp_core.c ret = netcp_allocate_rx_buf(netcp, i); netcp 950 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = container_of(napi, struct netcp_intf, netcp 954 drivers/net/ethernet/ti/netcp_core.c packets = netcp_process_rx_packets(netcp, budget); netcp 956 drivers/net/ethernet/ti/netcp_core.c netcp_rxpool_refill(netcp); netcp 958 drivers/net/ethernet/ti/netcp_core.c napi_complete_done(&netcp->rx_napi, packets); netcp 959 drivers/net/ethernet/ti/netcp_core.c knav_queue_enable_notify(netcp->rx_queue); netcp 967 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = arg; netcp 969 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->rx_queue); netcp 970 drivers/net/ethernet/ti/netcp_core.c napi_schedule(&netcp->rx_napi); netcp 973 drivers/net/ethernet/ti/netcp_core.c static void netcp_free_tx_desc_chain(struct netcp_intf *netcp, netcp 985 drivers/net/ethernet/ti/netcp_core.c dma_unmap_single(netcp->dev, dma_buf, buf_len, netcp 988 drivers/net/ethernet/ti/netcp_core.c dev_warn(netcp->ndev_dev, "bad Tx desc buf(%pad), len(%d)\n", netcp 991 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_put(netcp->tx_pool, ndesc); netcp 994 drivers/net/ethernet/ti/netcp_core.c ndesc = knav_pool_desc_unmap(netcp->tx_pool, dma_desc, netcp 997 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Tx desc\n"); netcp 1002 drivers/net/ethernet/ti/netcp_core.c static int netcp_process_tx_compl_packets(struct netcp_intf *netcp, netcp 1005 drivers/net/ethernet/ti/netcp_core.c struct netcp_stats *tx_stats = &netcp->stats; netcp 1014 drivers/net/ethernet/ti/netcp_core.c dma = knav_queue_pop(netcp->tx_compl_q, &dma_sz); netcp 1017 drivers/net/ethernet/ti/netcp_core.c desc = knav_pool_desc_unmap(netcp->tx_pool, dma, dma_sz); netcp 1019 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed to unmap Tx desc\n"); netcp 1028 drivers/net/ethernet/ti/netcp_core.c netcp_free_tx_desc_chain(netcp, desc, dma_sz); netcp 1030 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "No skb in Tx desc\n"); netcp 1039 drivers/net/ethernet/ti/netcp_core.c if (netif_subqueue_stopped(netcp->ndev, skb) && netcp 1040 drivers/net/ethernet/ti/netcp_core.c netif_running(netcp->ndev) && netcp 1041 drivers/net/ethernet/ti/netcp_core.c (knav_pool_count(netcp->tx_pool) > netcp 1042 drivers/net/ethernet/ti/netcp_core.c netcp->tx_resume_threshold)) { netcp 1045 drivers/net/ethernet/ti/netcp_core.c netif_wake_subqueue(netcp->ndev, subqueue); netcp 1061 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = container_of(napi, struct netcp_intf, netcp 1064 drivers/net/ethernet/ti/netcp_core.c packets = netcp_process_tx_compl_packets(netcp, budget); netcp 1066 drivers/net/ethernet/ti/netcp_core.c napi_complete(&netcp->tx_napi); netcp 1067 drivers/net/ethernet/ti/netcp_core.c knav_queue_enable_notify(netcp->tx_compl_q); netcp 1075 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = arg; netcp 1077 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->tx_compl_q); netcp 1078 drivers/net/ethernet/ti/netcp_core.c napi_schedule(&netcp->tx_napi); netcp 1082 drivers/net/ethernet/ti/netcp_core.c netcp_tx_map_skb(struct sk_buff *skb, struct netcp_intf *netcp) netcp 1086 drivers/net/ethernet/ti/netcp_core.c struct device *dev = netcp->dev; netcp 1094 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Failed to map skb buffer\n"); netcp 1098 drivers/net/ethernet/ti/netcp_core.c desc = knav_pool_desc_get(netcp->tx_pool); netcp 1100 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "out of TX desc\n"); netcp 1127 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Failed to map skb page\n"); netcp 1131 drivers/net/ethernet/ti/netcp_core.c ndesc = knav_pool_desc_get(netcp->tx_pool); netcp 1133 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "out of TX desc for frags\n"); netcp 1138 drivers/net/ethernet/ti/netcp_core.c desc_dma = knav_pool_desc_virt_to_dma(netcp->tx_pool, ndesc); netcp 1144 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_map(netcp->tx_pool, pdesc, netcp 1149 drivers/net/ethernet/ti/netcp_core.c knav_pool_desc_map(netcp->tx_pool, pdesc, sizeof(*pdesc), netcp 1154 drivers/net/ethernet/ti/netcp_core.c dev_err_ratelimited(netcp->ndev_dev, "NETIF_F_FRAGLIST not supported\n"); netcp 1166 drivers/net/ethernet/ti/netcp_core.c netcp_free_tx_desc_chain(netcp, desc, sizeof(*desc)); netcp 1170 drivers/net/ethernet/ti/netcp_core.c static int netcp_tx_submit_skb(struct netcp_intf *netcp, netcp 1183 drivers/net/ethernet/ti/netcp_core.c p_info.netcp = netcp; netcp 1194 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry(tx_hook, &netcp->txhook_list_head, list) { netcp 1198 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "TX hook %d rejected the packet with reason(%d)\n", netcp 1208 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "No TX hook claimed the packet!\n"); netcp 1230 drivers/net/ethernet/ti/netcp_core.c ((netcp->tx_compl_qid & KNAV_DMA_DESC_RETQ_MASK) << netcp 1250 drivers/net/ethernet/ti/netcp_core.c ret = knav_pool_desc_map(netcp->tx_pool, desc, sizeof(*desc), &dma, netcp 1253 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "%s() failed to map desc\n", __func__); netcp 1267 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1268 drivers/net/ethernet/ti/netcp_core.c struct netcp_stats *tx_stats = &netcp->stats; netcp 1282 drivers/net/ethernet/ti/netcp_core.c dev_warn(netcp->ndev_dev, "padding failed (%d), packet dropped\n", netcp 1290 drivers/net/ethernet/ti/netcp_core.c desc = netcp_tx_map_skb(skb, netcp); netcp 1297 drivers/net/ethernet/ti/netcp_core.c ret = netcp_tx_submit_skb(netcp, skb, desc); netcp 1302 drivers/net/ethernet/ti/netcp_core.c desc_count = knav_pool_count(netcp->tx_pool); netcp 1303 drivers/net/ethernet/ti/netcp_core.c if (desc_count < netcp->tx_pause_threshold) { netcp 1304 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "pausing tx, count(%d)\n", desc_count); netcp 1312 drivers/net/ethernet/ti/netcp_core.c netcp_free_tx_desc_chain(netcp, desc, sizeof(*desc)); netcp 1382 drivers/net/ethernet/ti/netcp_core.c static struct netcp_addr *netcp_addr_find(struct netcp_intf *netcp, netcp 1388 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry(naddr, &netcp->addr_list, node) { netcp 1399 drivers/net/ethernet/ti/netcp_core.c static struct netcp_addr *netcp_addr_add(struct netcp_intf *netcp, netcp 1405 drivers/net/ethernet/ti/netcp_core.c naddr = devm_kmalloc(netcp->dev, sizeof(*naddr), GFP_ATOMIC); netcp 1411 drivers/net/ethernet/ti/netcp_core.c naddr->netcp = netcp; netcp 1416 drivers/net/ethernet/ti/netcp_core.c list_add_tail(&naddr->node, &netcp->addr_list); netcp 1421 drivers/net/ethernet/ti/netcp_core.c static void netcp_addr_del(struct netcp_intf *netcp, struct netcp_addr *naddr) netcp 1424 drivers/net/ethernet/ti/netcp_core.c devm_kfree(netcp->dev, naddr); netcp 1427 drivers/net/ethernet/ti/netcp_core.c static void netcp_addr_clear_mark(struct netcp_intf *netcp) netcp 1431 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry(naddr, &netcp->addr_list, node) netcp 1435 drivers/net/ethernet/ti/netcp_core.c static void netcp_addr_add_mark(struct netcp_intf *netcp, const u8 *addr, netcp 1440 drivers/net/ethernet/ti/netcp_core.c naddr = netcp_addr_find(netcp, addr, type); netcp 1446 drivers/net/ethernet/ti/netcp_core.c naddr = netcp_addr_add(netcp, addr, type); netcp 1451 drivers/net/ethernet/ti/netcp_core.c static void netcp_addr_sweep_del(struct netcp_intf *netcp) netcp 1458 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry_safe(naddr, tmp, &netcp->addr_list, node) { netcp 1461 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "deleting address %pM, type %x\n", netcp 1463 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, priv) { netcp 1471 drivers/net/ethernet/ti/netcp_core.c netcp_addr_del(netcp, naddr); netcp 1475 drivers/net/ethernet/ti/netcp_core.c static void netcp_addr_sweep_add(struct netcp_intf *netcp) netcp 1482 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry_safe(naddr, tmp, &netcp->addr_list, node) { netcp 1485 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "adding address %pM, type %x\n", netcp 1488 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, priv) { netcp 1498 drivers/net/ethernet/ti/netcp_core.c static int netcp_set_promiscuous(struct netcp_intf *netcp, bool promisc) netcp 1504 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, priv) { netcp 1518 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1526 drivers/net/ethernet/ti/netcp_core.c spin_lock(&netcp->lock); netcp 1528 drivers/net/ethernet/ti/netcp_core.c netcp_addr_clear_mark(netcp); netcp 1531 drivers/net/ethernet/ti/netcp_core.c netcp_addr_add_mark(netcp, ndev->broadcast, ADDR_BCAST); netcp 1533 drivers/net/ethernet/ti/netcp_core.c netcp_addr_add_mark(netcp, ndev_addr->addr, ADDR_DEV); netcp 1535 drivers/net/ethernet/ti/netcp_core.c netcp_addr_add_mark(netcp, ndev_addr->addr, ADDR_UCAST); netcp 1537 drivers/net/ethernet/ti/netcp_core.c netcp_addr_add_mark(netcp, ndev_addr->addr, ADDR_MCAST); netcp 1540 drivers/net/ethernet/ti/netcp_core.c netcp_addr_add_mark(netcp, NULL, ADDR_ANY); netcp 1543 drivers/net/ethernet/ti/netcp_core.c netcp_addr_sweep_del(netcp); netcp 1544 drivers/net/ethernet/ti/netcp_core.c netcp_addr_sweep_add(netcp); netcp 1545 drivers/net/ethernet/ti/netcp_core.c netcp_set_promiscuous(netcp, promisc); netcp 1546 drivers/net/ethernet/ti/netcp_core.c spin_unlock(&netcp->lock); netcp 1549 drivers/net/ethernet/ti/netcp_core.c static void netcp_free_navigator_resources(struct netcp_intf *netcp) netcp 1553 drivers/net/ethernet/ti/netcp_core.c if (netcp->rx_channel) { netcp 1554 drivers/net/ethernet/ti/netcp_core.c knav_dma_close_channel(netcp->rx_channel); netcp 1555 drivers/net/ethernet/ti/netcp_core.c netcp->rx_channel = NULL; netcp 1558 drivers/net/ethernet/ti/netcp_core.c if (!IS_ERR_OR_NULL(netcp->rx_pool)) netcp 1559 drivers/net/ethernet/ti/netcp_core.c netcp_rxpool_free(netcp); netcp 1561 drivers/net/ethernet/ti/netcp_core.c if (!IS_ERR_OR_NULL(netcp->rx_queue)) { netcp 1562 drivers/net/ethernet/ti/netcp_core.c knav_queue_close(netcp->rx_queue); netcp 1563 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue = NULL; netcp 1567 drivers/net/ethernet/ti/netcp_core.c !IS_ERR_OR_NULL(netcp->rx_fdq[i]) ; ++i) { netcp 1568 drivers/net/ethernet/ti/netcp_core.c knav_queue_close(netcp->rx_fdq[i]); netcp 1569 drivers/net/ethernet/ti/netcp_core.c netcp->rx_fdq[i] = NULL; netcp 1572 drivers/net/ethernet/ti/netcp_core.c if (!IS_ERR_OR_NULL(netcp->tx_compl_q)) { netcp 1573 drivers/net/ethernet/ti/netcp_core.c knav_queue_close(netcp->tx_compl_q); netcp 1574 drivers/net/ethernet/ti/netcp_core.c netcp->tx_compl_q = NULL; netcp 1577 drivers/net/ethernet/ti/netcp_core.c if (!IS_ERR_OR_NULL(netcp->tx_pool)) { netcp 1578 drivers/net/ethernet/ti/netcp_core.c knav_pool_destroy(netcp->tx_pool); netcp 1579 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool = NULL; netcp 1585 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1595 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool = knav_pool_create(name, netcp->rx_pool_size, netcp 1596 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool_region_id); netcp 1597 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR_OR_NULL(netcp->rx_pool)) { netcp 1598 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Couldn't create rx pool\n"); netcp 1599 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->rx_pool); netcp 1604 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool = knav_pool_create(name, netcp->tx_pool_size, netcp 1605 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool_region_id); netcp 1606 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR_OR_NULL(netcp->tx_pool)) { netcp 1607 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Couldn't create tx pool\n"); netcp 1608 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->tx_pool); netcp 1614 drivers/net/ethernet/ti/netcp_core.c netcp->tx_compl_q = knav_queue_open(name, netcp->tx_compl_qid, 0); netcp 1615 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR(netcp->tx_compl_q)) { netcp 1616 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->tx_compl_q); netcp 1619 drivers/net/ethernet/ti/netcp_core.c netcp->tx_compl_qid = knav_queue_get_id(netcp->tx_compl_q); netcp 1623 drivers/net/ethernet/ti/netcp_core.c notify_cfg.fn_arg = netcp; netcp 1624 drivers/net/ethernet/ti/netcp_core.c ret = knav_queue_device_control(netcp->tx_compl_q, netcp 1630 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->tx_compl_q); netcp 1634 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue = knav_queue_open(name, netcp->rx_queue_id, 0); netcp 1635 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR(netcp->rx_queue)) { netcp 1636 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->rx_queue); netcp 1639 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue_id = knav_queue_get_id(netcp->rx_queue); netcp 1643 drivers/net/ethernet/ti/netcp_core.c notify_cfg.fn_arg = netcp; netcp 1644 drivers/net/ethernet/ti/netcp_core.c ret = knav_queue_device_control(netcp->rx_queue, netcp 1650 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->rx_queue); netcp 1653 drivers/net/ethernet/ti/netcp_core.c for (i = 0; i < KNAV_DMA_FDQ_PER_CHAN && netcp->rx_queue_depths[i]; netcp 1656 drivers/net/ethernet/ti/netcp_core.c netcp->rx_fdq[i] = knav_queue_open(name, KNAV_QUEUE_GP, 0); netcp 1657 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR(netcp->rx_fdq[i])) { netcp 1658 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->rx_fdq[i]); netcp 1671 drivers/net/ethernet/ti/netcp_core.c config.u.rx.dst_q = netcp->rx_queue_id; netcp 1675 drivers/net/ethernet/ti/netcp_core.c if (netcp->rx_fdq[i]) netcp 1676 drivers/net/ethernet/ti/netcp_core.c last_fdq = knav_queue_get_id(netcp->rx_fdq[i]); netcp 1680 drivers/net/ethernet/ti/netcp_core.c netcp->rx_channel = knav_dma_open_channel(netcp->netcp_device->device, netcp 1681 drivers/net/ethernet/ti/netcp_core.c netcp->dma_chan_name, &config); netcp 1682 drivers/net/ethernet/ti/netcp_core.c if (IS_ERR(netcp->rx_channel)) { netcp 1683 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "failed opening rx chan(%s\n", netcp 1684 drivers/net/ethernet/ti/netcp_core.c netcp->dma_chan_name); netcp 1685 drivers/net/ethernet/ti/netcp_core.c ret = PTR_ERR(netcp->rx_channel); netcp 1689 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "opened RX channel: %p\n", netcp->rx_channel); netcp 1693 drivers/net/ethernet/ti/netcp_core.c netcp_free_navigator_resources(netcp); netcp 1700 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1708 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Failed to setup navigator resources\n"); netcp 1712 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1717 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "module open failed\n"); netcp 1723 drivers/net/ethernet/ti/netcp_core.c napi_enable(&netcp->rx_napi); netcp 1724 drivers/net/ethernet/ti/netcp_core.c napi_enable(&netcp->tx_napi); netcp 1725 drivers/net/ethernet/ti/netcp_core.c knav_queue_enable_notify(netcp->tx_compl_q); netcp 1726 drivers/net/ethernet/ti/netcp_core.c knav_queue_enable_notify(netcp->rx_queue); netcp 1727 drivers/net/ethernet/ti/netcp_core.c netcp_rxpool_refill(netcp); netcp 1729 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "netcp device %s opened\n", ndev->name); netcp 1733 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1740 drivers/net/ethernet/ti/netcp_core.c netcp_free_navigator_resources(netcp); netcp 1747 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1754 drivers/net/ethernet/ti/netcp_core.c netcp_addr_clear_mark(netcp); netcp 1755 drivers/net/ethernet/ti/netcp_core.c netcp_addr_sweep_del(netcp); netcp 1756 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->rx_queue); netcp 1757 drivers/net/ethernet/ti/netcp_core.c knav_queue_disable_notify(netcp->tx_compl_q); netcp 1758 drivers/net/ethernet/ti/netcp_core.c napi_disable(&netcp->rx_napi); netcp 1759 drivers/net/ethernet/ti/netcp_core.c napi_disable(&netcp->tx_napi); netcp 1761 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1766 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Close failed\n"); netcp 1771 drivers/net/ethernet/ti/netcp_core.c netcp_empty_rx_queue(netcp); netcp 1774 drivers/net/ethernet/ti/netcp_core.c netcp_process_tx_compl_packets(netcp, netcp->tx_pool_size); netcp 1776 drivers/net/ethernet/ti/netcp_core.c if (knav_pool_count(netcp->tx_pool) != netcp->tx_pool_size) netcp 1777 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Lost (%d) Tx descs\n", netcp 1778 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool_size - knav_pool_count(netcp->tx_pool)); netcp 1780 drivers/net/ethernet/ti/netcp_core.c netcp_free_navigator_resources(netcp); netcp 1781 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "netcp device %s stopped\n", ndev->name); netcp 1788 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1796 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1816 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1817 drivers/net/ethernet/ti/netcp_core.c unsigned int descs = knav_pool_count(netcp->tx_pool); netcp 1819 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "transmit timed out tx descs(%d)\n", descs); netcp 1820 drivers/net/ethernet/ti/netcp_core.c netcp_process_tx_compl_packets(netcp, netcp->tx_pool_size); netcp 1827 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1833 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "adding rx vlan id: %d\n", vid); netcp 1835 drivers/net/ethernet/ti/netcp_core.c spin_lock_irqsave(&netcp->lock, flags); netcp 1836 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1841 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Could not add vlan id = %d\n", netcp 1847 drivers/net/ethernet/ti/netcp_core.c spin_unlock_irqrestore(&netcp->lock, flags); netcp 1854 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1860 drivers/net/ethernet/ti/netcp_core.c dev_dbg(netcp->ndev_dev, "removing rx vlan id: %d\n", vid); netcp 1862 drivers/net/ethernet/ti/netcp_core.c spin_lock_irqsave(&netcp->lock, flags); netcp 1863 drivers/net/ethernet/ti/netcp_core.c for_each_module(netcp, intf_modpriv) { netcp 1868 drivers/net/ethernet/ti/netcp_core.c dev_err(netcp->ndev_dev, "Could not delete vlan id = %d\n", netcp 1874 drivers/net/ethernet/ti/netcp_core.c spin_unlock_irqrestore(&netcp->lock, flags); netcp 1914 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1915 drivers/net/ethernet/ti/netcp_core.c struct netcp_stats *p = &netcp->stats; netcp 1963 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp; netcp 1974 drivers/net/ethernet/ti/netcp_core.c ndev = alloc_etherdev_mqs(sizeof(*netcp), 1, 1); netcp 1989 drivers/net/ethernet/ti/netcp_core.c netcp = netdev_priv(ndev); netcp 1990 drivers/net/ethernet/ti/netcp_core.c spin_lock_init(&netcp->lock); netcp 1991 drivers/net/ethernet/ti/netcp_core.c INIT_LIST_HEAD(&netcp->module_head); netcp 1992 drivers/net/ethernet/ti/netcp_core.c INIT_LIST_HEAD(&netcp->txhook_list_head); netcp 1993 drivers/net/ethernet/ti/netcp_core.c INIT_LIST_HEAD(&netcp->rxhook_list_head); netcp 1994 drivers/net/ethernet/ti/netcp_core.c INIT_LIST_HEAD(&netcp->addr_list); netcp 1995 drivers/net/ethernet/ti/netcp_core.c u64_stats_init(&netcp->stats.syncp_rx); netcp 1996 drivers/net/ethernet/ti/netcp_core.c u64_stats_init(&netcp->stats.syncp_tx); netcp 1997 drivers/net/ethernet/ti/netcp_core.c netcp->netcp_device = netcp_device; netcp 1998 drivers/net/ethernet/ti/netcp_core.c netcp->dev = netcp_device->device; netcp 1999 drivers/net/ethernet/ti/netcp_core.c netcp->ndev = ndev; netcp 2000 drivers/net/ethernet/ti/netcp_core.c netcp->ndev_dev = &ndev->dev; netcp 2001 drivers/net/ethernet/ti/netcp_core.c netcp->msg_enable = netif_msg_init(netcp_debug_level, NETCP_DEBUG); netcp 2002 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pause_threshold = MAX_SKB_FRAGS; netcp 2003 drivers/net/ethernet/ti/netcp_core.c netcp->tx_resume_threshold = netcp->tx_pause_threshold; netcp 2004 drivers/net/ethernet/ti/netcp_core.c netcp->node_interface = node_interface; netcp 2047 drivers/net/ethernet/ti/netcp_core.c &netcp->dma_chan_name); netcp 2055 drivers/net/ethernet/ti/netcp_core.c &netcp->rx_queue_id); netcp 2058 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue_id = KNAV_QUEUE_QPEND; netcp 2062 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue_depths, netcp 2066 drivers/net/ethernet/ti/netcp_core.c netcp->rx_queue_depths[0] = 128; netcp 2075 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool_size = temp[0]; netcp 2076 drivers/net/ethernet/ti/netcp_core.c netcp->rx_pool_region_id = temp[1]; netcp 2084 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool_size = temp[0]; netcp 2085 drivers/net/ethernet/ti/netcp_core.c netcp->tx_pool_region_id = temp[1]; netcp 2087 drivers/net/ethernet/ti/netcp_core.c if (netcp->tx_pool_size < MAX_SKB_FRAGS) { netcp 2095 drivers/net/ethernet/ti/netcp_core.c &netcp->tx_compl_qid); netcp 2098 drivers/net/ethernet/ti/netcp_core.c netcp->tx_compl_qid = KNAV_QUEUE_QPEND; netcp 2102 drivers/net/ethernet/ti/netcp_core.c netif_napi_add(ndev, &netcp->rx_napi, netcp_rx_poll, NETCP_NAPI_WEIGHT); netcp 2103 drivers/net/ethernet/ti/netcp_core.c netif_tx_napi_add(ndev, &netcp->tx_napi, netcp_tx_poll, NETCP_NAPI_WEIGHT); netcp 2111 drivers/net/ethernet/ti/netcp_core.c list_add_tail(&netcp->interface_list, &netcp_device->interface_head); netcp 2123 drivers/net/ethernet/ti/netcp_core.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2130 drivers/net/ethernet/ti/netcp_core.c list_for_each_entry_safe(intf_modpriv, tmp, &netcp->module_head, netcp 2139 drivers/net/ethernet/ti/netcp_core.c WARN(!list_empty(&netcp->module_head), "%s interface module list is not empty!\n", netcp 2142 drivers/net/ethernet/ti/netcp_core.c list_del(&netcp->interface_list); netcp 2144 drivers/net/ethernet/ti/netcp_core.c of_node_put(netcp->node_interface); netcp 1747 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1749 drivers/net/ethernet/ti/netcp_ethss.c return netcp->msg_enable; netcp 1754 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1756 drivers/net/ethernet/ti/netcp_ethss.c netcp->msg_enable = value; netcp 1759 drivers/net/ethernet/ti/netcp_ethss.c static struct gbe_intf *keystone_get_intf_data(struct netcp_intf *netcp) netcp 1763 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = netcp_module_get_intf_data(&gbe_module, netcp); netcp 1765 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = netcp_module_get_intf_data(&xgbe_module, netcp); netcp 1773 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1778 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = keystone_get_intf_data(netcp); netcp 1798 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1802 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = keystone_get_intf_data(netcp); netcp 1916 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1920 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = keystone_get_intf_data(netcp); netcp 1936 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1943 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = keystone_get_intf_data(netcp); netcp 1959 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 1975 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = keystone_get_intf_data(netcp); netcp 2007 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2010 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = netcp_module_get_intf_data(&gbe_module, netcp); netcp 2165 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2168 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = netcp_module_get_intf_data(&xgbe_module, netcp); netcp 2178 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2181 drivers/net/ethernet/ti/netcp_ethss.c gbe_intf = netcp_module_get_intf_data(&gbe_module, netcp); netcp 2900 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2936 drivers/net/ethernet/ti/netcp_ethss.c netcp->hw_cap = ETH_SW_CAN_REMOVE_ETH_FCS; netcp 2948 drivers/net/ethernet/ti/netcp_ethss.c netcp_register_txhook(netcp, GBE_TXHOOK_ORDER, gbe_txhook, gbe_intf); netcp 2949 drivers/net/ethernet/ti/netcp_ethss.c netcp_register_rxhook(netcp, GBE_RXHOOK_ORDER, gbe_rxhook, gbe_intf); netcp 2966 drivers/net/ethernet/ti/netcp_ethss.c struct netcp_intf *netcp = netdev_priv(ndev); netcp 2973 drivers/net/ethernet/ti/netcp_ethss.c netcp_unregister_rxhook(netcp, GBE_RXHOOK_ORDER, gbe_rxhook, gbe_intf); netcp 2974 drivers/net/ethernet/ti/netcp_ethss.c netcp_unregister_txhook(netcp, GBE_TXHOOK_ORDER, gbe_txhook, gbe_intf);