diff options
Diffstat (limited to 'include/linux/ethtool.h')
| -rw-r--r-- | include/linux/ethtool.h | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h index 0a114d05f68d..e658229fee39 100644 --- a/include/linux/ethtool.h +++ b/include/linux/ethtool.h | |||
| @@ -154,13 +154,20 @@ static inline u32 ethtool_rxfh_indir_default(u32 index, u32 n_rx_rings) | |||
| 154 | * @reset: Reset (part of) the device, as specified by a bitmask of | 154 | * @reset: Reset (part of) the device, as specified by a bitmask of |
| 155 | * flags from &enum ethtool_reset_flags. Returns a negative | 155 | * flags from &enum ethtool_reset_flags. Returns a negative |
| 156 | * error code or zero. | 156 | * error code or zero. |
| 157 | * @get_rxfh_key_size: Get the size of the RX flow hash key. | ||
| 158 | * Returns zero if not supported for this specific device. | ||
| 157 | * @get_rxfh_indir_size: Get the size of the RX flow hash indirection table. | 159 | * @get_rxfh_indir_size: Get the size of the RX flow hash indirection table. |
| 158 | * Returns zero if not supported for this specific device. | 160 | * Returns zero if not supported for this specific device. |
| 159 | * @get_rxfh_indir: Get the contents of the RX flow hash indirection table. | 161 | * @get_rxfh: Get the contents of the RX flow hash indirection table and hash |
| 160 | * Will not be called if @get_rxfh_indir_size returns zero. | 162 | * key. |
| 163 | * Will only be called if one or both of @get_rxfh_indir_size and | ||
| 164 | * @get_rxfh_key_size are implemented and return non-zero. | ||
| 161 | * Returns a negative error code or zero. | 165 | * Returns a negative error code or zero. |
| 162 | * @set_rxfh_indir: Set the contents of the RX flow hash indirection table. | 166 | * @set_rxfh: Set the contents of the RX flow hash indirection table and/or |
| 163 | * Will not be called if @get_rxfh_indir_size returns zero. | 167 | * hash key. In case only the indirection table or hash key is to be |
| 168 | * changed, the other argument will be %NULL. | ||
| 169 | * Will only be called if one or both of @get_rxfh_indir_size and | ||
| 170 | * @get_rxfh_key_size are implemented and return non-zero. | ||
| 164 | * Returns a negative error code or zero. | 171 | * Returns a negative error code or zero. |
| 165 | * @get_channels: Get number of channels. | 172 | * @get_channels: Get number of channels. |
| 166 | * @set_channels: Set number of channels. Returns a negative error code or | 173 | * @set_channels: Set number of channels. Returns a negative error code or |
| @@ -232,9 +239,11 @@ struct ethtool_ops { | |||
| 232 | int (*set_rxnfc)(struct net_device *, struct ethtool_rxnfc *); | 239 | int (*set_rxnfc)(struct net_device *, struct ethtool_rxnfc *); |
| 233 | int (*flash_device)(struct net_device *, struct ethtool_flash *); | 240 | int (*flash_device)(struct net_device *, struct ethtool_flash *); |
| 234 | int (*reset)(struct net_device *, u32 *); | 241 | int (*reset)(struct net_device *, u32 *); |
| 242 | u32 (*get_rxfh_key_size)(struct net_device *); | ||
| 235 | u32 (*get_rxfh_indir_size)(struct net_device *); | 243 | u32 (*get_rxfh_indir_size)(struct net_device *); |
| 236 | int (*get_rxfh_indir)(struct net_device *, u32 *); | 244 | int (*get_rxfh)(struct net_device *, u32 *indir, u8 *key); |
| 237 | int (*set_rxfh_indir)(struct net_device *, const u32 *); | 245 | int (*set_rxfh)(struct net_device *, const u32 *indir, |
| 246 | const u8 *key); | ||
| 238 | void (*get_channels)(struct net_device *, struct ethtool_channels *); | 247 | void (*get_channels)(struct net_device *, struct ethtool_channels *); |
| 239 | int (*set_channels)(struct net_device *, struct ethtool_channels *); | 248 | int (*set_channels)(struct net_device *, struct ethtool_channels *); |
| 240 | int (*get_dump_flag)(struct net_device *, struct ethtool_dump *); | 249 | int (*get_dump_flag)(struct net_device *, struct ethtool_dump *); |
