| /linux/tools/testing/cxl/test/ |
| H A D | cxl_translate.c | 255 /* Generate valid random parameters for eiw, eig, pos, dpa */ in test_random_params() 257 u16 eig = valid_eigs[get_random_u32() % ARRAY_SIZE(valid_eigs)]; in test_random_params() local 266 hpa = cxl_calculate_hpa_offset(dpa, pos, eiw, eig); in test_random_params() 268 reverse_dpa = cxl_calculate_dpa_offset(hpa, eiw, eig); in test_random_params() 269 reverse_pos = cxl_calculate_position(hpa, eiw, eig); in test_random_params() 274 pr_err("test random iter %d FAIL hpa=%llu, dpa=%llu reverse_dpa=%llu, pos=%d reverse_pos=%d eiw=%u eig=%u\n", in test_random_params() 275 i, hpa, dpa, reverse_dpa, pos, reverse_pos, eiw, eig); in test_random_params() 292 u16 eig; member 299 { 0x0, 0, 0, true, "1-way, min eig=0, pos=0" }, 300 { 0x0, 3, 0, true, "1-way, mid eig [all...] |
| /linux/drivers/cxl/ |
| H A D | cxl.h | 94 static inline int eig_to_granularity(u16 eig, int *granularity) in eig_to_granularity() argument 96 if (eig > CXL_DECODER_MAX_ENCODED_IG) in eig_to_granularity() 98 *granularity = CXL_DECODER_MIN_GRANULARITY << eig; in eig_to_granularity() 119 static inline int granularity_to_eig(int granularity, u16 *eig) in granularity_to_eig() argument 121 *eig = 0; in granularity_to_eig() 125 *eig = ilog2(granularity) - 8; in granularity_to_eig() 702 int cxl_validate_translation_params(u8 eiw, u16 eig, int pos); 703 u64 cxl_calculate_hpa_offset(u64 dpa_offset, int pos, u8 eiw, u16 eig); 704 u64 cxl_calculate_dpa_offset(u64 hpa_offset, u8 eiw, u16 eig); 705 int cxl_calculate_position(u64 hpa_offset, u8 eiw, u16 eig); [all...] |
| /linux/drivers/cxl/core/ |
| H A D | region.c | 1399 u16 eig; in check_interleave_cap() 1407 * DPAOFFSET[51: eig + 8] = HPAOFFSET[51: eig + 8 + eiw] in check_interleave_cap() 1408 * DPAOFFSET[eig + 7: 0] = HPAOFFSET[eig + 7: 0] in check_interleave_cap() 1414 * DPAOFFSET[51: eig + 8] = HPAOFFSET[51: eig + eiw] / 3 in check_interleave_cap() 1415 * DPAOFFSET[eig + 7: 0] = HPAOFFSET[eig + 7: 0] in check_interleave_cap() 1424 granularity_to_eig(ig, &eig); in check_interleave_cap() 1388 u16 eig; check_interleave_cap() local 1440 u16 eig, peig; cxl_port_setup_targets() local 3050 cxl_validate_translation_params(u8 eiw,u16 eig,int pos) cxl_validate_translation_params() argument 3072 cxl_calculate_dpa_offset(u64 hpa_offset,u8 eiw,u16 eig) cxl_calculate_dpa_offset() argument 3107 cxl_calculate_position(u64 hpa_offset,u8 eiw,u16 eig) cxl_calculate_position() argument 3144 cxl_calculate_hpa_offset(u64 dpa_offset,int pos,u8 eiw,u16 eig) cxl_calculate_hpa_offset() argument 3321 u16 eig = 0; cxl_dpa_to_hpa() local 3450 u16 eig = 0; region_offset_to_dpa_result() local [all...] |
| H A D | hdm.c | 684 u16 eig; in cxld_set_interleave() local 694 if (WARN_ONCE(granularity_to_eig(cxld->interleave_granularity, &eig), in cxld_set_interleave() 699 u32p_replace_bits(ctrl, eig, CXL_HDM_DECODER0_CTRL_IG_MASK); in cxld_set_interleave()
|