Lines Matching +full:rx +full:- +full:pcs +full:- +full:input

1 /* SPDX-License-Identifier: GPL-2.0 */
45 * enum ethtool_phys_id_state - indicator state for physical identification
61 ETH_RSS_HASH_TOP_BIT, /* Configurable RSS hash function - Toeplitz */
62 ETH_RSS_HASH_XOR_BIT, /* Configurable RSS hash function - Xor */
63 ETH_RSS_HASH_CRC32_BIT, /* Configurable RSS hash function - Crc32 */
73 * struct kernel_ethtool_ringparam - RX/TX ring configuration
74 * @rx_buf_len: Current length of buffers on the rx ring.
77 * @rx_push: The flag of rx push mode
78 * @cqe_size: Size of TX/RX completion queue event
93 * enum ethtool_supported_ring_param - indicator caps for setting ring params
139 * In a simpler world it should be equal to netdev->carrier_down_count
141 * actually take the physical link down, not to mention NC-SI which,
152 * ethtool_rxfh_indir_default - get default value for RX flow hash indirection
153 * @index: Index in RX flow hash indirection table
154 * @n_rx_rings: Number of RX rings to use
156 * This function provides the default policy for RX flow hash indirection.
164 * struct ethtool_rxfh_context - a custom RSS context configuration
169 * @input_xfrm: Defines how the input data is transformed. Valid values are one
191 return ctx->data; in ethtool_rxfh_context_priv()
196 return (u32 *)(ctx->data + ALIGN(ctx->priv_size, sizeof(u32))); in ethtool_rxfh_context_indir()
201 return &ctx->data[ctx->key_off]; in ethtool_rxfh_context_key()
224 * ethtool_link_ksettings_zero_link_mode - clear link_ksettings link mode mask
229 bitmap_zero((ptr)->link_modes.name, __ETHTOOL_LINK_MODE_MASK_NBITS)
232 * ethtool_link_ksettings_add_link_mode - set bit in link_ksettings
240 __set_bit(ETHTOOL_LINK_MODE_ ## mode ## _BIT, (ptr)->link_modes.name)
243 * ethtool_link_ksettings_del_link_mode - clear bit in link_ksettings
251 __clear_bit(ETHTOOL_LINK_MODE_ ## mode ## _BIT, (ptr)->link_modes.name)
254 * ethtool_link_ksettings_test_link_mode - test bit in ksettings link mode mask
263 test_bit(ETHTOOL_LINK_MODE_ ## mode ## _BIT, (ptr)->link_modes.name)
288 * ethtool_intersect_link_masks - Given two link masks, AND them together
370 while (n--) in ethtool_stats_init()
428 * struct ethtool_pause_stats - statistics for IEEE 802.3x pause frames
429 * @src: input field denoting whether stats should be queried from the eMAC or
454 * struct ethtool_fec_stats - statistics for IEEE 802.3 FEC
467 * not entire FEC data blocks. This is a non-standard statistic.
472 * - @lanes: per-lane/PCS-instance counts as defined by the standard
473 * - @total: error counts for the entire port, for drivers incapable of reporting
474 * per-lane stats
476 * Drivers should fill in either only total or per-lane statistics, core
487 * struct ethtool_rmon_hist_range - byte range for histogram statistics
499 * struct ethtool_rmon_stats - selected RMON (RFC 2819) statistics
500 * @src: input field denoting whether stats should be queried from the eMAC or
511 * APIs, primarily the packet-length-based counters.
530 * struct ethtool_ts_stats - HW timestamping statistics
553 * struct ethtool_module_eeprom - plug-in module EEPROM read / write parameters
554 * @offset: When @offset is 0-127, it is used as an address to the Lower Memory
574 * struct ethtool_module_power_mode_params - module power mode parameters
575 * @policy: The power mode policy enforced by the host for the plug-in module.
576 * @mode: The operational power mode of the plug-in module. Should be filled by
585 * struct ethtool_mm_state - 802.3 MAC merge layer state
606 * set if the Verify function of the MM layer (which sends SMD-V
611 * respond to received SMD-V requests as long as @pmac_enabled is set.
613 * the minimum size of non-final mPacket fragments that the link partner
617 * to the formula 64 * (1 + addFragSize) - 4), a value in a continuous and
620 * the minimum size of non-final mPacket fragments that this device
636 * struct ethtool_mm_cfg - 802.3 MAC merge layer configuration
652 * struct ethtool_mm_stats - 802.3 MAC merge layer statistics
660 * number of additional correct SMD-C mPackets received due to preemption
677 * struct ethtool_rxfh_param - RXFH (RSS) parameters
690 * traffic; other contexts can be referenced as the destination for RX flow
694 * @rss_delete: Set to non-ZERO to remove the @rss_context context.
695 * @input_xfrm: Defines how the input data is transformed. Valid values are one
710 * struct kernel_ethtool_ts_info - kernel copy of struct ethtool_ts_info
713 * @phc_index: device index of the associated PHC, or -1 if there is none
726 * struct ethtool_ops - optional netdev operations
732 * @cap_rss_sym_xor_supported: indicates if the driver supports symmetric-xor
755 * @get_wol: Report whether Wake-on-Lan is enabled
756 * @set_wol: Turn Wake-on-Lan on or off. Returns a negative error code
769 * and link_ext_substate are unknown, return -ENODATA. If not implemented,
771 * @get_link_ext_stats: Read extra link-related counters.
797 * @self_test: Run specified self-tests
818 * @get_priv_flags: Report driver-specific feature flags.
819 * @set_priv_flags: Set driver-specific feature flags. Returns a negative
822 * @get_rxnfc: Get RX flow classification rules. Returns a negative
824 * @set_rxnfc: Set RX flow classification rules. Returns a negative
831 * @get_rxfh_key_size: Get the size of the RX flow hash key.
833 * @get_rxfh_indir_size: Get the size of the RX flow hash indirection table.
835 * @get_rxfh: Get the contents of the RX flow hash indirection table, hash key
838 * @set_rxfh: Set the contents of the RX flow hash indirection table, hash
843 * @create_rxfh_context: Create a new RSS context with the specified RX flow
858 * the contents of the RX flow hash indirection table, hash key, and/or
884 * a plug-in module.
885 * @get_module_eeprom: Get the eeprom information from the plug-in module
886 * @get_eee: Get Energy-Efficient (EEE) supported and status.
891 * It must check that the given queue number is valid. If neither a RX nor
892 * a TX queue has this number, return -EINVAL. If only a RX queue or a TX
896 * It must check that the given queue number is valid. If neither a RX nor
897 * a TX queue has this number, return -EINVAL. If only a RX queue or a TX
912 * Core will sum up per-lane stats to get the total.
923 * @get_module_eeprom_by_page: Get a region of plug-in module EEPROM data from
926 * @set_module_eeprom_by_page: Write to a region of plug-in module EEPROM,
932 * Set %ranges to a pointer to zero-terminated array of byte ranges.
933 * @get_module_power_mode: Get the power mode policy for the plug-in module
935 * plugged-in.
936 * @set_module_power_mode: Set the power mode policy for the plug-in module
947 * Note that for all operations using a structure ending with a zero-
1116 ethtool_rx_flow_rule_create(const struct ethtool_rx_flow_spec_input *input);
1125 * struct ethtool_netdev_state - per-netdevice state for ethtool features
1129 * @wol_enabled: Wake-on-LAN is enabled
1145 * struct ethtool_phy_ops - Optional PHY device options
1178 * ethtool_set_ethtool_phy_ops - Set the ethtool_phy_ops singleton
1184 * ethtool_params_from_link_mode - Derive link parameters from a given link mode
1193 * ethtool_get_phc_vclocks - Derive phc vclocks information, and caller
1208 * ethtool_mm_frag_size_add_to_min - Translate (standard) additional fragment
1215 return (ETH_ZLEN + ETH_FCS_LEN) * (1 + val_add) - ETH_FCS_LEN; in ethtool_mm_frag_size_add_to_min()
1219 * ethtool_mm_frag_size_min_to_add - Translate (absolute) minimum fragment size
1227 * application of the 802.3 formula 64 * (1 + addFragSize) - 4. To be called
1245 return -EINVAL; in ethtool_mm_frag_size_min_to_add()
1249 * ethtool_get_ts_info_by_layer - Obtains time stamping capabilities from the MAC or PHY layer.
1252 * Returns zero on success, non-zero otherwise.
1258 * ethtool_sprintf - Write formatted string to ethtool string data
1268 * ethtool_puts - Write string to ethtool string data