drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.h

Source file repositories/reference/linux-study-clean/drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.h

File Facts

System
Linux kernel
Corpus path
drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.h
Extension
.h
Size
2679 bytes
Lines
78
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct mlx5e_bufferx_reg {
	u8   lossy;
	u8   epsb;
	u32  size;
	u32  xoff;
	u32  xon;
};

struct mlx5e_port_buffer {
	u32                       port_buffer_size;
	u32                       spare_buffer_size;
	u32                       headroom_size;	  /* Buffers 0-7 */
	u32                       internal_buffers_size;  /* Buffers 8-9 */
	struct mlx5e_bufferx_reg  buffer[MLX5E_MAX_NETWORK_BUFFER];
};

int mlx5e_port_manual_buffer_config(struct mlx5e_priv *priv,
				    u32 change, unsigned int mtu,
				    struct ieee_pfc *pfc,
				    u32 *buffer_size,
				    u8 *prio2buffer);

int mlx5e_port_query_buffer(struct mlx5e_priv *priv,
			    struct mlx5e_port_buffer *port_buffer);
#endif

Annotation

Implementation Notes