Lines Matching +full:frame +full:- +full:number

1 /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
2 /* Copyright 2014-2016 Freescale Semiconductor Inc.
3 * Copyright 2016-2020 NXP
16 #include <soc/fsl/dpaa2-io.h>
17 #include <soc/fsl/dpaa2-fd.h>
19 #include "dpni-cmd.h"
21 #include "dpaa2-eth-trace.h"
22 #include "dpaa2-eth-debugfs.h"
23 #include "dpaa2-mac.h"
29 /* Maximum number of scatter-gather entries in an ingress frame,
30 * considering the maximum receive frame size is 64K
35 * enforced Max Frame Length (currently 10k).
38 #define DPAA2_ETH_MAX_MTU (DPAA2_ETH_MFL - VLAN_ETH_HLEN)
43 * enough number of jumbo frames in the Rx queues (length of the current
44 * frame is not taken into account when making the taildrop decision)
51 /* Maximum number of Tx confirmation frames to be processed
56 /* Buffer qouta per channel. We want to keep in check number of ingress frames
59 * reasonable number of frames will be pending at any given time.
60 * Ingress frame drop due to buffer pool depletion should be a corner case only
64 (DPAA2_ETH_NUM_BUFS - DPAA2_ETH_BUFS_PER_CMD)
66 /* Congestion group taildrop threshold: number of frames allowed to accumulate
77 * When number of pending frames drops below exit threshold transmission of
85 /* Maximum number of buffers that can be acquired/released through a single
97 (DPAA2_ETH_RX_BUF_RAW_SIZE - DPAA2_ETH_RX_BUF_TAILROOM)
113 * in the frame's software annotation. The hardware
118 /* We store different information in the software annotation area of a Tx frame
119 * based on what type of frame it is
166 /* Frame annotation status */
174 /* Frame annotation status word is located in the first 8 bytes
185 /* Frame annotation parse results */
187 /* 64-bit word 1 */
191 /* 64-bit word 2 */
193 /* 64-bit word 3 */
202 /* 64-bit word 4 */
211 /* 64-bit word 5 */
218 /* 64-bit word 6 */
219 u8 reserved[5]; /* Soft-parsing context */
228 /* Frame annotation egress action descriptor */
255 tstamp->sec_lsb = sec & 0xFFFFFFFF; in ns_to_ptp_tstamp()
256 tstamp->sec_msb = (sec >> 32) & 0xFFFF; in ns_to_ptp_tstamp()
257 tstamp->nsec = nsec; in ns_to_ptp_tstamp()
286 /* Error and status bits in the frame annotation status word */
287 /* Debug frame, otherwise supposed to be discarded */
289 /* MACSEC frame */
292 /* Ethernet multicast frame */
294 /* Ethernet broadcast frame */
301 /* Frame length error */
303 /* Frame physical error */
335 /* Number of times to retry a frame enqueue before giving up.
336 * Value determined empirically, in order to minimize the number
341 /* Number of times to retry DPIO portal operations while waiting
350 * These are usually collected per-CPU and aggregated by ethtool.
366 /* Per-FQ statistics */
368 /* Number of frames received on this queue */
372 /* Per-channel statistics */
378 /* Number of CDANs; useful to estimate avg NAPI len */
389 /* Maximum number of queues associated with a DPNI */
559 /* The one-step timestamping configuration on hardware
560 * registers could only be done when no one-step
563 * one-step timestamping packet through TX confirmation
588 ((priv)->dpni_attrs.num_queues > 1)
600 if (priv->dpni_ver_major == ver_major) in dpaa2_eth_cmp_dpni_ver()
601 return priv->dpni_ver_minor - ver_minor; in dpaa2_eth_cmp_dpni_ver()
602 return priv->dpni_ver_major - ver_major; in dpaa2_eth_cmp_dpni_ver()
616 (!((priv)->dpni_attrs.options & DPNI_OPT_NO_FS))
619 ((priv)->dpni_attrs.options & DPNI_OPT_HAS_KEY_MASKING)
622 ((priv)->dpni_attrs.fs_entries)
625 ((priv)->dpni_attrs.num_tcs)
629 ((priv)->num_channels)
675 /* For non-linear skbs we have no headroom requirement, as we build a in dpaa2_eth_needed_headroom()
676 * SG frame with a newly allocated SGT buffer in dpaa2_eth_needed_headroom()
682 if (skb->cb[0]) in dpaa2_eth_needed_headroom()
693 return priv->tx_data_offset - DPAA2_ETH_RX_HWA_SIZE; in dpaa2_eth_rx_head_room()