Home
last modified time | relevance | path

Searched refs:dpa (Results 1 – 25 of 25) sorted by relevance

/linux/tools/testing/cxl/test/
H A Dcxl_translate.c131 * @dpa: device physical address
141 static int run_translation_test(u64 dpa, int pos, u8 r_eiw, u16 r_eig, in run_translation_test() argument
148 translated_spa = to_hpa(dpa, pos, r_eiw, r_eig, hb_ways, math); in run_translation_test()
157 if (reverse_dpa != dpa) { in run_translation_test()
159 dpa, reverse_dpa); in run_translation_test()
178 * dpa: device physical address
188 static int parse_test_vector(const char *entry, u64 *dpa, int *pos, u8 *r_eiw, in parse_test_vector() argument
195 parsed = sscanf(entry, "%llu %d %u %u %u %d %llu", dpa, pos, &tmp_r_eiw, in parse_test_vector()
250 u64 dpa, hpa, reverse_dpa; in test_random_params() local
255 /* Generate valid random parameters for eiw, eig, pos, dpa */ in test_random_params()
402 u64 dpa, expect_spa; cxl_translate_init() local
[all...]
H A Dmem.c1138 u64 dpa; member
1146 u64 dpa; in cxl_get_injected_po() local
1155 if (mock_poison_list[i].dpa < offset || in cxl_get_injected_po()
1156 mock_poison_list[i].dpa > offset + length - 1) in cxl_get_injected_po()
1159 dpa = mock_poison_list[i].dpa + CXL_POISON_SOURCE_INJECTED; in cxl_get_injected_po()
1160 po->record[nr_records].address = cpu_to_le64(dpa); in cxl_get_injected_po()
1204 static int mock_poison_add(struct cxl_dev_state *cxlds, u64 dpa) in mock_poison_add() argument
1217 mock_poison_list[i].dpa = dpa; in mock_poison_add()
1228 static bool mock_poison_found(struct cxl_dev_state *cxlds, u64 dpa) in mock_poison_found() argument
1232 mock_poison_list[i].dpa == dpa) in mock_poison_found()
[all …]
/linux/drivers/cxl/core/
H A Dmemdev.c251 ACQUIRE(rwsem_read_intr, dpa_rwsem)(&cxl_rwsem.dpa); in cxl_trigger_poison_list()
267 static int cxl_validate_poison_dpa(struct cxl_memdev *cxlmd, u64 dpa) in cxl_validate_poison_dpa() argument
278 if (!cxl_resource_contains_addr(&cxlds->dpa_res, dpa)) { in cxl_validate_poison_dpa()
280 dpa, &cxlds->dpa_res); in cxl_validate_poison_dpa()
283 if (!IS_ALIGNED(dpa, 64)) { in cxl_validate_poison_dpa()
284 dev_dbg(cxlds->dev, "dpa:0x%llx is not 64-byte aligned\n", dpa); in cxl_validate_poison_dpa()
291 int cxl_inject_poison_locked(struct cxl_memdev *cxlmd, u64 dpa) in cxl_inject_poison_locked() argument
303 lockdep_assert_held(&cxl_rwsem.dpa); in cxl_inject_poison_locked()
306 rc = cxl_validate_poison_dpa(cxlmd, dpa); in cxl_inject_poison_locked()
310 inject.address = cpu_to_le64(dpa); in cxl_inject_poison_locked()
[all …]
H A Dcore.h50 struct cxl_region *cxl_dpa_to_region(const struct cxl_memdev *cxlmd, u64 dpa);
52 u64 dpa);
59 const struct cxl_memdev *cxlmd, u64 dpa) in cxl_dpa_to_hpa() argument
64 struct cxl_region *cxl_dpa_to_region(const struct cxl_memdev *cxlmd, u64 dpa) in cxl_dpa_to_region() argument
137 struct rw_semaphore dpa; member
H A Dedac.c903 u64 dpa; member
925 rec = xa_load(&array_rec->rec_gen_media, attrbs->dpa); in cxl_find_rec_gen_media()
946 rec = xa_load(&array_rec->rec_dram, attrbs->dpa); in cxl_find_rec_dram()
1187 u64 dpa; member
1299 attrbs.dpa = ctx->dpa; in cxl_mem_get_rec_dram()
1347 ACQUIRE(rwsem_read_intr, dpa_rwsem)(&cxl_rwsem.dpa); in cxl_mem_perform_sparing()
1440 CXL_SPARING_GET_ATTR(dpa, u64) in CXL_SPARING_GET_ATTR()
1517 static int cxl_mem_sparing_set_dpa(struct device *dev, void *drv_data, u64 dpa) in cxl_mem_sparing_set_dpa() argument
1523 if (!cxl_resource_contains_addr(&cxlds->dpa_res, dpa)) in cxl_mem_sparing_set_dpa()
1526 ctx->dpa = dpa; in cxl_mem_sparing_set_dpa()
[all …]
H A Dhdm.c21 .dpa = __RWSEM_INITIALIZER(cxl_rwsem.dpa),
203 guard(rwsem_read)(&cxl_rwsem.dpa); in cxl_dpa_debug()
255 lockdep_assert_held_write(&cxl_rwsem.dpa); in __cxl_dpa_release()
270 guard(rwsem_write)(&cxl_rwsem.dpa); in cxl_dpa_release()
282 lockdep_assert_held_write(&cxl_rwsem.dpa); in devm_cxl_dpa_release()
350 lockdep_assert_held_write(&cxl_rwsem.dpa); in __cxl_dpa_reserve()
459 guard(rwsem_write)(&cxl_rwsem.dpa); in cxl_dpa_setup()
505 scoped_guard(rwsem_write, &cxl_rwsem.dpa) in devm_cxl_dpa_reserve()
517 guard(rwsem_read)(&cxl_rwsem.dpa); in cxl_dpa_size()
528 lockdep_assert_held(&cxl_rwsem.dpa); in cxl_dpa_resource_start()
[all …]
H A Dtrace.h468 __field(u64, dpa)
493 __entry->dpa = le64_to_cpu(rec->media_hdr.phys_addr);
494 __entry->dpa_flags = __entry->dpa & CXL_DPA_FLAGS_MASK;
496 __entry->dpa &= CXL_DPA_MASK;
531 __entry->dpa, show_dpa_flags(__entry->dpa_flags),
611 __field(u64, dpa)
642 __entry->dpa = le64_to_cpu(rec->media_hdr.phys_addr);
643 __entry->dpa_flags = __entry->dpa & CXL_DPA_FLAGS_MASK;
644 __entry->dpa &= CXL_DPA_MASK;
686 __entry->dpa, show_dpa_flags(__entry->dpa_flags),
[all …]
H A Dregion.c2376 guard(rwsem_read)(&cxl_rwsem.dpa); in __attach_target()
2380 guard(rwsem_read)(&cxl_rwsem.dpa); in __attach_target()
3011 u64 dpa; member
3019 u64 dpa = ctx->dpa; in __cxl_dpa_to_region() local
3028 if (!cxl_resource_contains_addr(cxled->dpa_res, dpa)) in __cxl_dpa_to_region()
3038 dev_dbg(dev, "dpa:0x%llx mapped in region:%s\n", dpa, in __cxl_dpa_to_region()
3041 dev_dbg(dev, "dpa:0x%llx mapped in endpoint:%s\n", dpa, in __cxl_dpa_to_region()
3049 struct cxl_region *cxl_dpa_to_region(const struct cxl_memdev *cxlmd, u64 dpa) in cxl_dpa_to_region() argument
3058 .dpa = dpa, in cxl_dpa_to_region()
3295 struct cxl_region_params *p, int pos, u64 dpa) in unaligned_dpa_to_hpa() argument
[all …]
H A Dcdat.c574 struct range dpa = { in dpa_perf_contains() local
579 return range_contains(&perf->dpa_range, &dpa); in dpa_perf_contains()
987 lockdep_assert_held(&cxl_rwsem.dpa); in cxl_region_shared_upstream_bandwidth_update()
1057 lockdep_assert_held(&cxl_rwsem.dpa); in cxl_region_perf_data_calculate()
H A Dmbox.c917 u64 dpa, hpa = ULLONG_MAX, hpa_alias = ULLONG_MAX; in cxl_event_trace_record() local
927 guard(rwsem_read)(&cxl_rwsem.dpa); in cxl_event_trace_record()
929 dpa = le64_to_cpu(evt->media_hdr.phys_addr) & CXL_DPA_MASK; in cxl_event_trace_record()
930 cxlr = cxl_dpa_to_region(cxlmd, dpa); in cxl_event_trace_record()
934 hpa = cxl_dpa_to_hpa(cxlr, cxlmd, dpa); in cxl_event_trace_record()
H A Dport.c242 guard(rwsem_read)(&cxl_rwsem.dpa); in dpa_resource_show()
/linux/drivers/nvdimm/
H A Ddimm.c47 ndd->dpa.name = dev_name(dev); in nvdimm_probe()
50 ndd->dpa.start = 0; in nvdimm_probe()
51 ndd->dpa.end = -1; in nvdimm_probe()
H A Dlabel.h91 __le64 dpa; member
128 __le64 dpa; member
168 __le64 dpa; member
H A Dregion_devs.c544 unsigned long val, dpa; in align_store() local
560 dpa = div_u64_rem(val, mappings, &remainder); in align_store()
561 if (!is_power_of_2(dpa) || dpa < PAGE_SIZE in align_store()
H A Ddimm_devs.c810 __release_region(&ndd->dpa, res->start, resource_size(res)); in nvdimm_free_dpa()
824 res = __request_region(&ndd->dpa, start, n, name, 0); in nvdimm_allocate_dpa()
H A Dlabel.c586 u64 dpa = nsl_get_dpa(ndd, nd_label); in nd_label_active_count() local
590 slot, label_slot, dpa, size); in nd_label_active_count()
/linux/drivers/video/fbdev/via/
H A Dvt1636.c179 struct VT1636_DPA_SETTING dpa = {0x00, 0x00}, dpa_16x12 = {0x0B, 0x03}, in viafb_vt1636_patch_skew_on_vt3324() local
195 pdpa = &dpa; in viafb_vt1636_patch_skew_on_vt3324()
204 struct VT1636_DPA_SETTING dpa = {0x00, 0x00}; in viafb_vt1636_patch_skew_on_vt3327() local
215 set_dpa_vt1636(plvds_setting_info, plvds_chip_info, &dpa); in viafb_vt1636_patch_skew_on_vt3327()
/linux/drivers/edac/
H A Dmem_repair.c85 MR_ATTR_SHOW(dpa, get_dpa, u64, "0x%llx\n")
123 MR_ATTR_STORE(dpa, set_dpa, u64, kstrtou64) in MR_ATTR_STORE()
296 [MR_DPA] = __ATTR_RW(dpa),
/linux/drivers/cxl/
H A Dcxlmem.h816 int cxl_inject_poison(struct cxl_memdev *cxlmd, u64 dpa);
817 int cxl_clear_poison(struct cxl_memdev *cxlmd, u64 dpa);
818 int cxl_inject_poison_locked(struct cxl_memdev *cxlmd, u64 dpa);
819 int cxl_clear_poison_locked(struct cxl_memdev *cxlmd, u64 dpa);
/linux/tools/testing/nvdimm/test/
H A Dnfit_test.h53 __u64 dpa; member
H A Dnfit.c674 u64 dpa; in nfit_test_search_spa() local
684 dpa = ctx.addr - nd_region->ndr_start; in nfit_test_search_spa()
698 spa->devices[0].dpa = dpa; in nfit_test_search_spa()
/linux/drivers/gpu/drm/xe/
H A Dxe_svm.c471 u64 dpa; in xe_page_to_dpa() local
477 dpa = vr->dpa_base + offset; in xe_page_to_dpa()
479 return dpa; in xe_page_to_dpa()
/linux/Documentation/ABI/testing/
H A Dsysfs-edac-memory-repair91 What: /sys/bus/edac/devices/<dev-name>/mem_repairX/dpa
/linux/arch/arm64/boot/dts/apple/
H A Dt8012-pmgr.dtsi462 label = "dpa";
H A Dt8011-pmgr.dtsi427 label = "dpa";