| /kernel/linux/linux-6.6/drivers/net/ethernet/engleder/ |
| D | tsnep_main.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (C) 2021 Gerhard Engleder <gerhard@engleder-embedded.com> */ 6 * The TSN endpoint Ethernet MAC is a FPGA based network device for real-time 10 * It supports multiple TX/RX queue pairs. The first TX/RX queue pair is used 14 * - www.embedded-experts.at/tsn 15 * - www.engleder-embedded.com 36 #define TSNEP_MAX_RX_BUF_SIZE (PAGE_SIZE - TSNEP_HEADROOM - \ 38 /* XSK buffer shall store at least Q-in-Q frame */ 52 ECM_INT_DELAY_BASE_US + ECM_INT_DELAY_BASE_US - 1) 78 iowrite32(mask, adapter->addr + ECM_INT_ENABLE); in tsnep_enable_irq() [all …]
|
| D | tsnep_ethtool.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (C) 2021 Gerhard Engleder <gerhard@engleder-embedded.com> */ 83 strscpy(drvinfo->driver, TSNEP, sizeof(drvinfo->driver)); in tsnep_ethtool_get_drvinfo() 84 strscpy(drvinfo->bus_info, dev_name(&adapter->pdev->dev), in tsnep_ethtool_get_drvinfo() 85 sizeof(drvinfo->bus_info)); in tsnep_ethtool_get_drvinfo() 96 /* first queue pair is within TSNEP_MAC_SIZE, only queues additional to in tsnep_ethtool_get_regs_len() 97 * the first queue pair extend the register length by TSNEP_QUEUE_SIZE in tsnep_ethtool_get_regs_len() 100 max(adapter->num_tx_queues, adapter->num_rx_queues) - 1; in tsnep_ethtool_get_regs_len() 112 regs->version = 1; in tsnep_ethtool_get_regs() 114 memcpy_fromio(p, adapter->addr, regs->len); in tsnep_ethtool_get_regs() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ |
| D | xen-netfront.c | 4 * Copyright (c) 2002-2005, K A Fraser 81 #define NETFRONT_SKB_CB(skb) ((struct netfront_cb *)((skb)->cb)) 90 /* Minimum number of Rx slots (includes slot for GSO metadata). */ 93 /* Queue name is interface name with "-qNNN" appended */ 96 /* IRQ name is queue name with "-tx" or "-rx" appended */ 110 unsigned int id; /* Queue ID, 0-based */ 111 char name[QUEUE_NAME_SIZE]; /* DEVNAME-qN */ 124 char tx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-tx */ 125 char rx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-rx */ 132 * {tx,rx}_skbs store outstanding skbuffs. Free tx_skb entries [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ |
| D | xen-netfront.c | 4 * Copyright (c) 2002-2005, K A Fraser 81 #define NETFRONT_SKB_CB(skb) ((struct netfront_cb *)((skb)->cb)) 88 /* Minimum number of Rx slots (includes slot for GSO metadata). */ 91 /* Queue name is interface name with "-qNNN" appended */ 94 /* IRQ name is queue name with "-tx" or "-rx" appended */ 108 unsigned int id; /* Queue ID, 0-based */ 109 char name[QUEUE_NAME_SIZE]; /* DEVNAME-qN */ 122 char tx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-tx */ 123 char rx_irq_name[IRQ_NAME_SIZE]; /* DEVNAME-qN-rx */ 130 * {tx,rx}_skbs store outstanding skbuffs. Free tx_skb entries [all …]
|
| /kernel/linux/linux-5.10/drivers/net/xen-netback/ |
| D | rx.c | 3 * Copyright (c) 2002-2005, K A Fraser 38 * Note that any call sequence outside the RX thread calling this function 39 * needs to wake up the RX thread via a call of xenvif_kick_thread() 42 static void xenvif_update_needed_slots(struct xenvif_queue *queue, in xenvif_update_needed_slots() argument 48 needed = DIV_ROUND_UP(skb->len, XEN_PAGE_SIZE); in xenvif_update_needed_slots() 51 if (skb->sw_hash) in xenvif_update_needed_slots() 55 WRITE_ONCE(queue->rx_slots_needed, needed); in xenvif_update_needed_slots() 58 static bool xenvif_rx_ring_slots_available(struct xenvif_queue *queue) in xenvif_rx_ring_slots_available() argument 63 needed = READ_ONCE(queue->rx_slots_needed); in xenvif_rx_ring_slots_available() 68 prod = queue->rx.sring->req_prod; in xenvif_rx_ring_slots_available() [all …]
|
| /kernel/linux/linux-6.6/drivers/net/xen-netback/ |
| D | rx.c | 3 * Copyright (c) 2002-2005, K A Fraser 38 * Note that any call sequence outside the RX thread calling this function 39 * needs to wake up the RX thread via a call of xenvif_kick_thread() 42 static void xenvif_update_needed_slots(struct xenvif_queue *queue, in xenvif_update_needed_slots() argument 48 needed = DIV_ROUND_UP(skb->len, XEN_PAGE_SIZE); in xenvif_update_needed_slots() 51 if (skb->sw_hash) in xenvif_update_needed_slots() 55 WRITE_ONCE(queue->rx_slots_needed, needed); in xenvif_update_needed_slots() 58 static bool xenvif_rx_ring_slots_available(struct xenvif_queue *queue) in xenvif_rx_ring_slots_available() argument 63 needed = READ_ONCE(queue->rx_slots_needed); in xenvif_rx_ring_slots_available() 68 prod = queue->rx.sring->req_prod; in xenvif_rx_ring_slots_available() [all …]
|
| /kernel/linux/linux-6.6/Documentation/networking/device_drivers/ethernet/amazon/ |
| D | ena.rst | 1 .. SPDX-License-Identifier: GPL-2.0 15 through an Admin Queue. 17 The driver supports a range of ENA devices, is link-speed independent 21 Some ENA devices support SR-IOV. This driver is used for both the 22 SR-IOV Physical Function (PF) and Virtual Function (VF) devices. 25 processing by providing multiple Tx/Rx queue pairs (the maximum number 26 is advertised by the device via the Admin Queue), a dedicated MSI-X 27 interrupt vector per Tx/Rx queue pair, adaptive interrupt moderation, 31 checksum offload. Receive-side scaling (RSS) is supported for multi-core 39 Some of the ENA devices support a working mode called Low-latency [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/intel/ice/ |
| D | ice_base.c | 1 // SPDX-License-Identifier: GPL-2.0 10 * __ice_vsi_get_qs_contig - Assign a contiguous chunk of queues to VSI 11 * @qs_cfg: gathered variables needed for PF->VSI queues assignment 13 * Return 0 on success and -ENOMEM in case of no left space in PF queue bitmap 19 mutex_lock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig() 20 offset = bitmap_find_next_zero_area(qs_cfg->pf_map, qs_cfg->pf_map_size, in __ice_vsi_get_qs_contig() 21 0, qs_cfg->q_count, 0); in __ice_vsi_get_qs_contig() 22 if (offset >= qs_cfg->pf_map_size) { in __ice_vsi_get_qs_contig() 23 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig() 24 return -ENOMEM; in __ice_vsi_get_qs_contig() [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/marvell/octeon_ep/ |
| D | octep_rx.c | 1 // SPDX-License-Identifier: GPL-2.0 17 oq->host_read_idx = 0; in octep_oq_reset_indices() 18 oq->host_refill_idx = 0; in octep_oq_reset_indices() 19 oq->refill_count = 0; in octep_oq_reset_indices() 20 oq->last_pkt_count = 0; in octep_oq_reset_indices() 21 oq->pkts_pending = 0; in octep_oq_reset_indices() 25 * octep_oq_fill_ring_buffers() - fill initial receive buffers for Rx ring. 27 * @oq: Octeon Rx queue data structure. 30 * -1, if failed to allocate a buffer or failed to map for DMA. 34 struct octep_oq_desc_hw *desc_ring = oq->desc_ring; in octep_oq_fill_ring_buffers() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/ |
| D | intel,ixp4xx-ethernet.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/net/intel,ixp4xx-ethernet.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - $ref: ethernet-controller.yaml# 14 - Linus Walleij <linus.walleij@linaro.org> 18 Processing Engine) and the IXP4xx Queue Manager to process 24 const: intel,ixp4xx-ethernet 30 queue-rx: 31 $ref: /schemas/types.yaml#/definitions/phandle-array [all …]
|
| D | intel,ixp4xx-hss.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/net/intel,ixp4xx-hss.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Linus Walleij <linus.walleij@linaro.org> 15 Processing Engine) and the IXP4xx Queue Manager to process 20 const: intel,ixp4xx-hss 26 intel,npe-handle: 27 $ref: /schemas/types.yaml#/definitions/phandle-array 30 - description: phandle to the NPE this HSS instance is using [all …]
|
| D | keystone-netcp.txt | 6 switch sub-module to send and receive packets. NetCP also includes a packet 13 includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates 16 Keystone NetCP driver has a plug-in module architecture where each of the NetCP 17 sub-modules exist as a loadable kernel module which plug in to the netcp core. 18 These sub-modules are represented as "netcp-devices" in the dts bindings. It is 19 mandatory to have the ethernet switch sub-module for the ethernet interface to 20 be operational. Any other sub-module like the PA is optional. 24 ----------------------------- 26 ----------------------------- 28 |-> NetCP Devices -> | [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/netronome/nfp/ |
| D | nfp_net.h | 1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 2 /* Copyright (C) 2015-2018 Netronome Systems, Inc. */ 21 #include <linux/io-64-nonatomic-hi-lo.h> 32 if (__nn->dp.netdev) \ 33 netdev_printk(lvl, __nn->dp.netdev, fmt, ## args); \ 35 dev_printk(lvl, __nn->dp.dev, "ctrl: " fmt, ## args); \ 48 if (__dp->netdev) \ 49 netdev_warn(__dp->netdev, fmt, ## args); \ 51 dev_warn(__dp->dev, fmt, ## args); \ 78 /* Queue/Ring definitions */ [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/intel/ice/ |
| D | ice_base.c | 1 // SPDX-License-Identifier: GPL-2.0 11 * __ice_vsi_get_qs_contig - Assign a contiguous chunk of queues to VSI 12 * @qs_cfg: gathered variables needed for PF->VSI queues assignment 14 * Return 0 on success and -ENOMEM in case of no left space in PF queue bitmap 20 mutex_lock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig() 21 offset = bitmap_find_next_zero_area(qs_cfg->pf_map, qs_cfg->pf_map_size, in __ice_vsi_get_qs_contig() 22 0, qs_cfg->q_count, 0); in __ice_vsi_get_qs_contig() 23 if (offset >= qs_cfg->pf_map_size) { in __ice_vsi_get_qs_contig() 24 mutex_unlock(qs_cfg->qs_mutex); in __ice_vsi_get_qs_contig() 25 return -ENOMEM; in __ice_vsi_get_qs_contig() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/netronome/nfp/ |
| D | nfp_net.h | 1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ 2 /* Copyright (C) 2015-2018 Netronome Systems, Inc. */ 20 #include <linux/io-64-nonatomic-hi-lo.h> 31 if (__nn->dp.netdev) \ 32 netdev_printk(lvl, __nn->dp.netdev, fmt, ## args); \ 34 dev_printk(lvl, __nn->dp.dev, "ctrl: " fmt, ## args); \ 47 if (__dp->netdev) \ 48 netdev_warn(__dp->netdev, fmt, ## args); \ 50 dev_warn(__dp->dev, fmt, ## args); \ 80 /* Queue/Ring definitions */ [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/net/ |
| D | keystone-netcp.txt | 6 switch sub-module to send and receive packets. NetCP also includes a packet 13 includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates 16 Keystone NetCP driver has a plug-in module architecture where each of the NetCP 17 sub-modules exist as a loadable kernel module which plug in to the netcp core. 18 These sub-modules are represented as "netcp-devices" in the dts bindings. It is 19 mandatory to have the ethernet switch sub-module for the ethernet interface to 20 be operational. Any other sub-module like the PA is optional. 24 ----------------------------- 26 ----------------------------- 28 |-> NetCP Devices -> | [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/amazon/ |
| D | ena.rst | 1 .. SPDX-License-Identifier: GPL-2.0 15 through an Admin Queue. 17 The driver supports a range of ENA devices, is link-speed independent 21 Some ENA devices support SR-IOV. This driver is used for both the 22 SR-IOV Physical Function (PF) and Virtual Function (VF) devices. 25 processing by providing multiple Tx/Rx queue pairs (the maximum number 26 is advertised by the device via the Admin Queue), a dedicated MSI-X 27 interrupt vector per Tx/Rx queue pair, adaptive interrupt moderation, 32 Receive-side scaling (RSS) is supported for multi-core scaling. 39 Some of the ENA devices support a working mode called Low-latency [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/broadcom/bnx2x/ |
| D | bnx2x_mfw_req.h | 3 * Copyright (c) 2012-2013 Broadcom Corporation 94 u32 promiscuous_mode; /* Promiscuous Mode. non-zero true */ 95 u32 txq_size; /* TX Descriptors Queue Size */ 96 u32 rxq_size; /* RX Descriptors Queue Size */ 97 /* TX Descriptor Queue Avg Depth. % Avg Queue Depth since last poll */ 99 /* RX Descriptors Queue Avg Depth. % Avg Queue Depth since last poll */ 114 /* QoS Priority (per 802.1p). 0-7255 */ 116 u32 txq_size; /* FCoE TX Descriptors Queue Size. */ 117 u32 rxq_size; /* FCoE RX Descriptors Queue Size. */ 118 /* FCoE TX Descriptor Queue Avg Depth. */ [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/broadcom/bnx2x/ |
| D | bnx2x_mfw_req.h | 3 * Copyright (c) 2012-2013 Broadcom Corporation 94 u32 promiscuous_mode; /* Promiscuous Mode. non-zero true */ 95 u32 txq_size; /* TX Descriptors Queue Size */ 96 u32 rxq_size; /* RX Descriptors Queue Size */ 97 /* TX Descriptor Queue Avg Depth. % Avg Queue Depth since last poll */ 99 /* RX Descriptors Queue Avg Depth. % Avg Queue Depth since last poll */ 114 /* QoS Priority (per 802.1p). 0-7255 */ 116 u32 txq_size; /* FCoE TX Descriptors Queue Size. */ 117 u32 rxq_size; /* FCoE RX Descriptors Queue Size. */ 118 /* FCoE TX Descriptor Queue Avg Depth. */ [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/huawei/hinic/ |
| D | hinic_rx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 18 #include <linux/dma-mapping.h> 46 (HINIC_GET_RX_PKT_TYPE(be32_to_cpu((cqe)->offload_type)) == \ 50 * hinic_rxq_clean_stats - Clean the statistics of specific queue 51 * @rxq: Logical Rx Queue 55 struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; in hinic_rxq_clean_stats() 57 u64_stats_update_begin(&rxq_stats->syncp); in hinic_rxq_clean_stats() 58 rxq_stats->pkts = 0; in hinic_rxq_clean_stats() 59 rxq_stats->bytes = 0; in hinic_rxq_clean_stats() 60 rxq_stats->errors = 0; in hinic_rxq_clean_stats() [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/ |
| D | af_xdp.rst | 1 .. SPDX-License-Identifier: GPL-2.0 20 XDP programs to redirect frames to a memory buffer in a user-space 24 syscall. Associated with each XSK are two rings: the RX ring and the 25 TX ring. A socket can receive packets on the RX ring and it can send 28 to have at least one of these rings for each socket. An RX or TX 30 UMEM. RX and TX can share the same UMEM so that a packet does not have 31 to be copied between RX and TX. Moreover, if a packet needs to be kept 44 to fill in with RX packet data. References to these frames will then 45 appear in the RX ring once each packet has been received. The 48 space, for either TX or RX. Thus, the frame addrs appearing in the [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/huawei/hinic/ |
| D | hinic_rx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 18 #include <linux/dma-mapping.h> 46 (HINIC_GET_RX_PKT_TYPE(be32_to_cpu((cqe)->offload_type)) == \ 50 * hinic_rxq_clean_stats - Clean the statistics of specific queue 51 * @rxq: Logical Rx Queue 55 struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; in hinic_rxq_clean_stats() 57 u64_stats_update_begin(&rxq_stats->syncp); in hinic_rxq_clean_stats() 58 rxq_stats->pkts = 0; in hinic_rxq_clean_stats() 59 rxq_stats->bytes = 0; in hinic_rxq_clean_stats() 60 rxq_stats->errors = 0; in hinic_rxq_clean_stats() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/ralink/rt2x00/ |
| D | rt2x00queue.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 Copyright (C) 2004 - 2010 Ivo van Doorn <IvDoorn@gmail.com> 10 Abstract: rt2x00 queue datastructures and routines 33 * enum data_queue_qid: Queue identification 35 * @QID_AC_VO: AC VO queue 36 * @QID_AC_VI: AC VI queue 37 * @QID_AC_BE: AC BE queue 38 * @QID_AC_BK: AC BK queue 39 * @QID_HCCA: HCCA queue 40 * @QID_MGMT: MGMT queue (prio queue) [all …]
|
| /kernel/linux/linux-6.6/drivers/net/wireless/ralink/rt2x00/ |
| D | rt2x00queue.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 Copyright (C) 2004 - 2010 Ivo van Doorn <IvDoorn@gmail.com> 10 Abstract: rt2x00 queue datastructures and routines 33 * enum data_queue_qid: Queue identification 35 * @QID_AC_VO: AC VO queue 36 * @QID_AC_VI: AC VI queue 37 * @QID_AC_BE: AC BE queue 38 * @QID_AC_BK: AC BK queue 39 * @QID_HCCA: HCCA queue 40 * @QID_MGMT: MGMT queue (prio queue) [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/crypto/ |
| D | intel,ixp4xx-crypto.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/crypto/intel,ixp4xx-crypto.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Linus Walleij <linus.walleij@linaro.org> 21 const: intel,ixp4xx-crypto 23 intel,npe-handle: 24 $ref: /schemas/types.yaml#/definitions/phandle-array 26 - items: 27 - description: phandle to the NPE this crypto engine [all …]
|