Lines Matching defs:builder

23 	struct mlx5e_tir_builder *builder;
25 builder = kvzalloc(sizeof(*builder), GFP_KERNEL);
26 builder->modify = modify;
28 return builder;
31 void mlx5e_tir_builder_free(struct mlx5e_tir_builder *builder)
33 kvfree(builder);
36 void mlx5e_tir_builder_clear(struct mlx5e_tir_builder *builder)
38 memset(builder->in, 0, sizeof(builder->in));
41 static void *mlx5e_tir_builder_get_tirc(struct mlx5e_tir_builder *builder)
43 if (builder->modify)
44 return MLX5_ADDR_OF(modify_tir_in, builder->in, ctx);
45 return MLX5_ADDR_OF(create_tir_in, builder->in, ctx);
48 void mlx5e_tir_builder_build_inline(struct mlx5e_tir_builder *builder, u32 tdn, u32 rqn)
50 void *tirc = mlx5e_tir_builder_get_tirc(builder);
52 WARN_ON(builder->modify);
60 void mlx5e_tir_builder_build_rqt(struct mlx5e_tir_builder *builder, u32 tdn,
63 void *tirc = mlx5e_tir_builder_get_tirc(builder);
65 WARN_ON(builder->modify);
73 void mlx5e_tir_builder_build_packet_merge(struct mlx5e_tir_builder *builder,
76 void *tirc = mlx5e_tir_builder_get_tirc(builder);
79 if (builder->modify)
80 MLX5_SET(modify_tir_in, builder->in, bitmask.packet_merge, 1);
108 void mlx5e_tir_builder_build_rss(struct mlx5e_tir_builder *builder,
113 void *tirc = mlx5e_tir_builder_get_tirc(builder);
116 if (builder->modify)
117 MLX5_SET(modify_tir_in, builder->in, bitmask.hash, 1);
137 void mlx5e_tir_builder_build_direct(struct mlx5e_tir_builder *builder)
139 void *tirc = mlx5e_tir_builder_get_tirc(builder);
141 WARN_ON(builder->modify);
146 void mlx5e_tir_builder_build_tls(struct mlx5e_tir_builder *builder)
148 void *tirc = mlx5e_tir_builder_get_tirc(builder);
150 WARN_ON(builder->modify);
158 int mlx5e_tir_init(struct mlx5e_tir *tir, struct mlx5e_tir_builder *builder,
165 err = mlx5_core_create_tir(tir->mdev, builder->in, &tir->tirn);
200 int mlx5e_tir_modify(struct mlx5e_tir *tir, struct mlx5e_tir_builder *builder)
202 return mlx5_core_modify_tir(tir->mdev, tir->tirn, builder->in);