Lines Matching refs:mkc

59 static void set_mkc_access_pd_addr_fields(void *mkc, int acc, u64 start_addr,  in set_mkc_access_pd_addr_fields()  argument
64 MLX5_SET(mkc, mkc, a, !!(acc & IB_ACCESS_REMOTE_ATOMIC)); in set_mkc_access_pd_addr_fields()
65 MLX5_SET(mkc, mkc, rw, !!(acc & IB_ACCESS_REMOTE_WRITE)); in set_mkc_access_pd_addr_fields()
66 MLX5_SET(mkc, mkc, rr, !!(acc & IB_ACCESS_REMOTE_READ)); in set_mkc_access_pd_addr_fields()
67 MLX5_SET(mkc, mkc, lw, !!(acc & IB_ACCESS_LOCAL_WRITE)); in set_mkc_access_pd_addr_fields()
68 MLX5_SET(mkc, mkc, lr, 1); in set_mkc_access_pd_addr_fields()
72 MLX5_SET(mkc, mkc, relaxed_ordering_write, 1); in set_mkc_access_pd_addr_fields()
78 MLX5_SET(mkc, mkc, relaxed_ordering_read, 1); in set_mkc_access_pd_addr_fields()
81 MLX5_SET(mkc, mkc, pd, to_mpd(pd)->pdn); in set_mkc_access_pd_addr_fields()
82 MLX5_SET(mkc, mkc, qpn, 0xffffff); in set_mkc_access_pd_addr_fields()
83 MLX5_SET64(mkc, mkc, start_addr, start_addr); in set_mkc_access_pd_addr_fields()
89 void *mkc; in assign_mkey_variant() local
91 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in assign_mkey_variant()
92 MLX5_SET(mkc, mkc, mkey_7_0, key); in assign_mkey_variant()
302 static void set_cache_mkc(struct mlx5_cache_ent *ent, void *mkc) in set_cache_mkc() argument
304 set_mkc_access_pd_addr_fields(mkc, ent->rb_key.access_flags, 0, in set_cache_mkc()
306 MLX5_SET(mkc, mkc, free, 1); in set_cache_mkc()
307 MLX5_SET(mkc, mkc, umr_en, 1); in set_cache_mkc()
308 MLX5_SET(mkc, mkc, access_mode_1_0, ent->rb_key.access_mode & 0x3); in set_cache_mkc()
309 MLX5_SET(mkc, mkc, access_mode_4_2, in set_cache_mkc()
312 MLX5_SET(mkc, mkc, translations_octword_size, in set_cache_mkc()
315 MLX5_SET(mkc, mkc, log_page_size, PAGE_SHIFT); in set_cache_mkc()
322 void *mkc; in add_keys() local
331 mkc = MLX5_ADDR_OF(create_mkey_in, async_create->in, in add_keys()
333 set_cache_mkc(ent, mkc); in add_keys()
362 void *mkc; in create_cache_mkey() local
369 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in create_cache_mkey()
370 set_cache_mkc(ent, mkc); in create_cache_mkey()
1067 void *mkc; in mlx5_ib_get_dma_mr() local
1081 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in mlx5_ib_get_dma_mr()
1083 MLX5_SET(mkc, mkc, access_mode_1_0, MLX5_MKC_ACCESS_MODE_PA); in mlx5_ib_get_dma_mr()
1084 MLX5_SET(mkc, mkc, length64, 1); in mlx5_ib_get_dma_mr()
1085 set_mkc_access_pd_addr_fields(mkc, acc | IB_ACCESS_RELAXED_ORDERING, 0, in mlx5_ib_get_dma_mr()
1164 page_size = mlx5_umem_find_best_pgsz(umem, mkc, log_page_size, in alloc_cacheable_mr()
1210 void *mkc; in reg_create() local
1250 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in reg_create()
1251 set_mkc_access_pd_addr_fields(mkc, access_flags, iova, in reg_create()
1253 MLX5_SET(mkc, mkc, free, !populate); in reg_create()
1254 MLX5_SET(mkc, mkc, access_mode_1_0, MLX5_MKC_ACCESS_MODE_MTT); in reg_create()
1255 MLX5_SET(mkc, mkc, umr_en, 1); in reg_create()
1257 MLX5_SET64(mkc, mkc, len, umem->length); in reg_create()
1258 MLX5_SET(mkc, mkc, bsf_octword_size, 0); in reg_create()
1259 MLX5_SET(mkc, mkc, translations_octword_size, in reg_create()
1261 MLX5_SET(mkc, mkc, log_page_size, mr->page_shift); in reg_create()
1263 MLX5_SET(mkc, mkc, ma_translation_mode, 1); in reg_create()
1297 void *mkc; in mlx5_ib_get_dm_mr() local
1311 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in mlx5_ib_get_dm_mr()
1313 MLX5_SET(mkc, mkc, access_mode_1_0, mode & 0x3); in mlx5_ib_get_dm_mr()
1314 MLX5_SET(mkc, mkc, access_mode_4_2, (mode >> 2) & 0x7); in mlx5_ib_get_dm_mr()
1315 MLX5_SET64(mkc, mkc, len, length); in mlx5_ib_get_dm_mr()
1316 set_mkc_access_pd_addr_fields(mkc, acc, start_addr, pd); in mlx5_ib_get_dm_mr()
1399 umem, mkc, log_page_size, 0, iova); in create_real_mr()
1615 mlx5_umem_find_best_pgsz(new_umem, mkc, log_page_size, 0, iova); in can_use_umr_rereg_pas()
1938 void *mkc; in mlx5_set_umr_free_mkey() local
1940 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in mlx5_set_umr_free_mkey()
1943 set_mkc_access_pd_addr_fields(mkc, IB_ACCESS_RELAXED_ORDERING, 0, pd); in mlx5_set_umr_free_mkey()
1944 MLX5_SET(mkc, mkc, free, 1); in mlx5_set_umr_free_mkey()
1945 MLX5_SET(mkc, mkc, translations_octword_size, ndescs); in mlx5_set_umr_free_mkey()
1946 MLX5_SET(mkc, mkc, access_mode_1_0, access_mode & 0x3); in mlx5_set_umr_free_mkey()
1947 MLX5_SET(mkc, mkc, access_mode_4_2, (access_mode >> 2) & 0x7); in mlx5_set_umr_free_mkey()
1948 MLX5_SET(mkc, mkc, umr_en, 1); in mlx5_set_umr_free_mkey()
1949 MLX5_SET(mkc, mkc, log_page_size, page_shift); in mlx5_set_umr_free_mkey()
2049 void *mkc; in mlx5_alloc_integrity_descs() local
2084 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in mlx5_alloc_integrity_descs()
2085 MLX5_SET(mkc, mkc, bsf_en, 1); in mlx5_alloc_integrity_descs()
2086 MLX5_SET(mkc, mkc, bsf_octword_size, MLX5_MKEY_BSF_OCTO_SIZE); in mlx5_alloc_integrity_descs()
2195 void *mkc; in mlx5_ib_alloc_mw() local
2221 mkc = MLX5_ADDR_OF(create_mkey_in, in, memory_key_mkey_entry); in mlx5_ib_alloc_mw()
2223 MLX5_SET(mkc, mkc, free, 1); in mlx5_ib_alloc_mw()
2224 MLX5_SET(mkc, mkc, translations_octword_size, ndescs); in mlx5_ib_alloc_mw()
2225 MLX5_SET(mkc, mkc, pd, to_mpd(ibmw->pd)->pdn); in mlx5_ib_alloc_mw()
2226 MLX5_SET(mkc, mkc, umr_en, 1); in mlx5_ib_alloc_mw()
2227 MLX5_SET(mkc, mkc, lr, 1); in mlx5_ib_alloc_mw()
2228 MLX5_SET(mkc, mkc, access_mode_1_0, MLX5_MKC_ACCESS_MODE_KLMS); in mlx5_ib_alloc_mw()
2229 MLX5_SET(mkc, mkc, en_rinval, !!((ibmw->type == IB_MW_TYPE_2))); in mlx5_ib_alloc_mw()
2230 MLX5_SET(mkc, mkc, qpn, 0xffffff); in mlx5_ib_alloc_mw()