| /linux/drivers/net/xen-netback/ |
| H A 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 …]
|
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | r9a09g087.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 8 #include <dt-bindings/clock/renesas,r9a09g087-cpg-mssr.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #address-cells = <2>; 14 #size-cells = <2>; 15 interrupt-parent = <&gic>; 18 #address-cells = <1>; 19 #size-cells = <0>; 22 compatible = "arm,cortex-a55"; 25 next-level-cache = <&L3_CA55>; [all …]
|
| H A D | r9a09g077.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 8 #include <dt-bindings/clock/renesas,r9a09g077-cpg-mssr.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #address-cells = <2>; 14 #size-cells = <2>; 15 interrupt-parent = <&gic>; 18 #address-cells = <1>; 19 #size-cells = <0>; 22 compatible = "arm,cortex-a55"; 25 next-level-cache = <&L3_CA55>; [all …]
|
| /linux/drivers/net/ethernet/intel/idpf/ |
| H A D | idpf_txrx.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 21 /* Mailbox Queue */ 29 /* Number of descriptors in a queue should be a multiple of 32. RX queue 71 * given RX completion queue has descriptors. This includes _ALL_ buffer 73 * you have a total of 1024 buffers so your RX queue _must_ have at least that 74 * many descriptors. This macro divides a given number of RX descriptors by 75 * number of buffer queues to calculate how many descriptors each buffer queue 76 * can have without overrunning the RX queue. 88 #define IDPF_RX_BUFQ_WORKING_SET(rxq) ((rxq)->desc_count - 1) 92 if (unlikely(++(ntc) == (rxq)->desc_count)) { \ [all …]
|
| /linux/drivers/net/ethernet/engleder/ |
| H A 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 …]
|
| /linux/drivers/net/ethernet/netronome/nfp/ |
| H A 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 …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A 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 …]
|
| /linux/drivers/firmware/samsung/ |
| H A D | exynos-acpm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 #include <linux/firmware/samsung/exynos-acpm-protocol.h> 19 #include <linux/mailbox/exynos-message.h> 31 #include "exynos-acpm.h" 32 #include "exynos-acpm-dvfs.h" 33 #include "exynos-acpm-pmic.h" 43 * struct acpm_shmem - shared memory configuration information. 57 * struct acpm_chan_shmem - descriptor of a shared memory channel. 61 * @rx_rear: rear pointer of APM RX queue (TX for AP). 62 * @rx_front: front pointer of APM RX queue (TX for AP). [all …]
|
| /linux/drivers/net/ethernet/broadcom/bnx2x/ |
| H A 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 …]
|
| /linux/Documentation/networking/device_drivers/ethernet/amazon/ |
| H A 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 …]
|
| /linux/drivers/net/wireless/ralink/rt2x00/ |
| H A 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 …]
|
| /linux/drivers/net/ethernet/huawei/hinic/ |
| H A 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 …]
|
| /linux/drivers/net/ethernet/sfc/siena/ |
| H A D | net_driver.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 4 * Copyright 2005-2006 Fen Systems Ltd. 5 * Copyright 2005-2013 Solarflare Communications Inc. 61 /* Checksum generation is a per-queue option in hardware, so each 62 * queue visible to the networking core is backed by two hardware TX 68 #define EFX_TXQ_TYPE_HIGHPRI 4 /* High-priority (for TC) */ 70 /* HIGHPRI is Siena-only, and INNER_CSUM is EF10, so no need for both */ 83 /* Size of an RX scatter buffer. Small enough to pack 2 into a 4K page, 86 #define EFX_RX_USR_BUF_SIZE (2048 - 256) 89 * of every buffer. Otherwise, we just need to ensure 4-byte [all …]
|
| /linux/Documentation/networking/ |
| H A 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 …]
|
| /linux/drivers/net/ethernet/sfc/ |
| H A D | net_driver.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 4 * Copyright 2005-2006 Fen Systems Ltd. 5 * Copyright 2005-2013 Solarflare Communications Inc. 63 /* Checksum generation is a per-queue option in hardware, so each 64 * queue visible to the networking core is backed by two hardware TX 83 /* Size of an RX scatter buffer. Small enough to pack 2 into a 4K page, 86 #define EFX_RX_USR_BUF_SIZE (2048 - 256) 89 * of every buffer. Otherwise, we just need to ensure 4-byte 98 /* Non-standard XDP_PACKET_HEADROOM and tailroom to satisfy XDP_REDIRECT and 111 * struct efx_buffer - A general-purpose DMA buffer [all …]
|
| /linux/Documentation/networking/device_drivers/ethernet/aquantia/ |
| H A D | atlantic.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 For the aQuantia Multi-Gigabit PCI Express Family of Ethernet Adapters 12 - Identifying Your Adapter 13 - Configuration 14 - Supported ethtool options 15 - Command Line Parameters 16 - Config file parameters 17 - Support 18 - License 23 The driver in this release is compatible with AQC-100, AQC-107, AQC-108 [all …]
|
| /linux/drivers/net/ethernet/google/gve/ |
| H A D | gve.h | 1 /* SPDX-License-Identifier: (GPL-2.0 OR MIT) 4 * Copyright (C) 2015-2024 Google LLC 10 #include <linux/dma-mapping.h> 35 /* 1 for management, 1 for rx, 1 for tx */ 38 /* Numbers of gve tx/rx stats in stats report. */ 45 /* Numbers of NIC tx/rx stats in stats report. */ 51 #define GVE_DATA_SLOT_ADDR_PAGE_MASK (~(PAGE_SIZE - 1)) 71 (GVE_ADMINQ_BUFFER_SIZE / sizeof(((struct gve_adminq_queried_flow_rule *)0)->location)) 89 /* 2K buffers for DQO-QPL */ 95 * allocs and uses a non-qpl page on the receive path of DQO QPL to free [all …]
|
| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | netdev_rx.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 8 * This file contains HFI1 support for netdev RX functionality 20 static int hfi1_netdev_setup_ctxt(struct hfi1_netdev_rx *rx, in hfi1_netdev_setup_ctxt() argument 24 struct hfi1_devdata *dd = rx->dd; in hfi1_netdev_setup_ctxt() 27 uctxt->rhf_rcv_function_map = netdev_rhf_rcv_functions; in hfi1_netdev_setup_ctxt() 28 uctxt->do_interrupt = &handle_receive_interrupt_napi_sp; in hfi1_netdev_setup_ctxt() 30 /* Now allocate the RcvHdr queue and eager buffers. */ in hfi1_netdev_setup_ctxt() 44 if (!HFI1_CAP_KGET_MASK(uctxt->flags, MULTI_PKT_EGR)) in hfi1_netdev_setup_ctxt() 46 if (HFI1_CAP_KGET_MASK(uctxt->flags, NODROP_EGR_FULL)) in hfi1_netdev_setup_ctxt() 48 if (HFI1_CAP_KGET_MASK(uctxt->flags, NODROP_RHQ_FULL)) in hfi1_netdev_setup_ctxt() [all …]
|
| /linux/drivers/net/ethernet/stmicro/stmmac/ |
| H A D | stmmac_main.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 This is the driver for the ST MAC 10/100/1000 on-chip Ethernet controllers. 6 Copyright(C) 2007-2011 STMicroelectronics Ltd 29 #include <linux/dma-mapping.h> 59 * with fine resolution and binary rollover. This avoid non-monotonic behavior 65 #define TSO_MAX_BUFF_SIZE (SZ_16K - 1) 73 static int debug = -1; 75 MODULE_PARM_DESC(debug, "Message Level (-1: default, 0: no output, 16: all)"); 77 static int phyaddr = -1; 81 #define STMMAC_TX_THRESH(x) ((x)->dma_conf.dma_tx_size / 4) [all …]
|
| /linux/drivers/net/wireless/ath/ath5k/ |
| H A D | dma.c | 2 * Copyright (c) 2004-2008 Reyk Floeter <reyk@openbsd.org> 3 * Copyright (c) 2006-2008 Nick Kossifidis <mickflemm@gmail.com> 27 * handle queue setup for 5210 chipset (rest are handled on qcu.c). 44 * ath5k_hw_start_rx_dma() - Start DMA receive 55 * ath5k_hw_stop_rx_dma() - Stop DMA receive 70 i--) in ath5k_hw_stop_rx_dma() 75 "failed to stop RX DMA !\n"); in ath5k_hw_stop_rx_dma() 77 return i ? 0 : -EBUSY; in ath5k_hw_stop_rx_dma() 81 * ath5k_hw_get_rxdp() - Get RX Descriptor's address 91 * ath5k_hw_set_rxdp() - Set RX Descriptor's address [all …]
|
| /linux/arch/arm/boot/dts/ti/keystone/ |
| H A D | keystone-k2e-netcp.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - https://www.ti.com/ 9 compatible = "ti,keystone-navigator-qmss"; 10 dma-coherent; 11 #address-cells = <1>; 12 #size-cells = <1>; 15 queue-range = <0 0x2000>; 20 #address-cells = <1>; 21 #size-cells = <1>; 24 managed-queues = <0 0x2000>; [all …]
|
| H A D | keystone-k2l-netcp.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - https://www.ti.com/ 9 compatible = "ti,keystone-navigator-qmss"; 10 dma-coherent; 11 #address-cells = <1>; 12 #size-cells = <1>; 15 queue-range = <0 0x2000>; 20 #address-cells = <1>; 21 #size-cells = <1>; 24 managed-queues = <0 0x2000>; [all …]
|
| H A D | keystone-k2hk-netcp.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - https://www.ti.com/ 9 compatible = "ti,keystone-navigator-qmss"; 10 dma-coherent; 11 #address-cells = <1>; 12 #size-cells = <1>; 15 queue-range = <0 0x4000>; 20 #address-cells = <1>; 21 #size-cells = <1>; 24 managed-queues = <0 0x2000>; [all …]
|
| /linux/drivers/net/ethernet/marvell/octeon_ep_vf/ |
| H A D | octep_vf_config.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 15 /* Tx Queue: maximum descriptors per ring */ 19 /* Packet threshold for Tx queue interrupt */ 25 /* Rx Queue: maximum descriptors per ring */ 28 /* Rx buffer size: Use page size buffers. 31 * page buffers in consecutive Rx descriptors as fragments. 42 /* Tx Queue wake threshold 43 * wakeup a stopped Tx queue if minimum 2 descriptors are available. 44 * Even a skb with fragments consume only one Tx queue descriptor entry. 51 #define OCTEP_VF_MAX_MTU (10000 - (ETH_HLEN + ETH_FCS_LEN)) [all …]
|
| /linux/drivers/net/ethernet/freescale/fman/ |
| H A D | fman_port.h | 1 /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-or-later */ 3 * Copyright 2008 - 2015 Freescale Semiconductor Inc. 13 * an Rx port (MAC). 15 * The SW driver manages these ports as sub-modules of the FM,i.e. after an 21 * to the port's type) - always starting at 0. 26 /* Not for Rx-Port! Unsupported Format */ 28 /* Not for Rx-Port! Length Error */ 32 /* non Frame-Manager error; probably come from SEC that was chained to FM */ 36 /* IPR non-consistent-sp */ 40 /* Rx FIFO overflow, FCS error, code error, running disparity [all …]
|