Home
last modified time | relevance | path

Searched refs:idxd (Results 1 – 22 of 22) sorted by relevance

/linux-6.15/drivers/dma/idxd/
H A Dinit.c205 wq->idxd = idxd; in idxd_setup_wqs()
304 engine->idxd = idxd; in idxd_setup_engines()
368 group->idxd = idxd; in idxd_setup_groups()
545 idxd_set_max_batch_size(idxd->data->type, idxd, 1U << idxd->hw.gen_cap.max_batch_shift); in idxd_read_caps()
554 idxd->max_groups = idxd->hw.group_cap.num_groups; in idxd_read_caps()
556 idxd->max_rdbufs = idxd->hw.group_cap.total_rdbufs; in idxd_read_caps()
558 idxd->nr_rdbufs = idxd->max_rdbufs; in idxd_read_caps()
570 idxd->max_wq_size = idxd->hw.wq_cap.total_wq_size; in idxd_read_caps()
572 idxd->max_wqs = idxd->hw.wq_cap.num_wqs; in idxd_read_caps()
774 idxd->major = idxd_cdev_get_major(idxd); in idxd_probe()
[all …]
H A Ddevice.c110 struct idxd_device *idxd = wq->idxd; in idxd_wq_alloc_resources() local
182 struct idxd_device *idxd = wq->idxd; in idxd_wq_enable() local
207 struct idxd_device *idxd = wq->idxd; in idxd_wq_disable() local
236 struct idxd_device *idxd = wq->idxd; in idxd_wq_drain() local
252 struct idxd_device *idxd = wq->idxd; in idxd_wq_reset() local
268 struct idxd_device *idxd = wq->idxd; in idxd_wq_map_portal() local
306 struct idxd_device *idxd = wq->idxd; in __idxd_wq_set_pasid_locked() local
339 struct idxd_device *idxd = wq->idxd; in idxd_wq_disable_pasid() local
365 struct idxd_device *idxd = wq->idxd; in idxd_wq_disable_cleanup() local
913 struct idxd_device *idxd = wq->idxd; in idxd_wq_config_write() local
[all …]
H A Dirq.c29 struct idxd_device *idxd; member
38 idxd_device_reset(idxd); in idxd_device_reinit()
74 struct idxd_device *idxd = wq->idxd; in idxd_int_handle_revoke_drain() local
134 struct idxd_device *idxd = revoke->idxd; in idxd_int_handle_revoke() local
226 struct idxd_device *idxd = wq->idxd; in idxd_evl_fault_work() local
414 queue_work(idxd->wq, &idxd->work); in idxd_halt()
421 queue_work(idxd->wq, &idxd->work); in idxd_halt()
459 idxd->sw_err.bits[i] = ioread64(idxd->reg_base + in idxd_misc_thread()
465 if (idxd->sw_err.valid && idxd->sw_err.wq_idx_valid) { in idxd_misc_thread()
497 revoke->idxd = idxd; in idxd_misc_thread()
[all …]
H A Dperfmon.c96 struct idxd_device *idxd = idxd_pmu->idxd; in perfmon_assign_hw_event() local
170 struct idxd_device *idxd; in perfmon_pmu_event_init() local
202 struct idxd_device *idxd; in perfmon_pmu_read_counter() local
296 struct idxd_device *idxd; in perfmon_pmu_event_start() local
356 idxd->idxd_pmu->event_list[i - 1] = idxd->idxd_pmu->event_list[i]; in perfmon_pmu_event_stop()
466 if (!idxd->idxd_pmu) in perfmon_pmu_remove()
470 kfree(idxd->idxd_pmu); in perfmon_pmu_remove()
471 idxd->idxd_pmu = NULL; in perfmon_pmu_remove()
491 idxd_pmu->idxd = idxd; in perfmon_pmu_init()
506 perfmon_reset(idxd); in perfmon_pmu_init()
[all …]
H A Dsysfs.c36 struct idxd_device *idxd = engine->idxd; in engine_group_id_store() local
137 struct idxd_device *idxd = group->idxd; in group_read_buffers_reserved_store() local
203 struct idxd_device *idxd = group->idxd; in group_read_buffers_allowed_store() local
266 struct idxd_device *idxd = group->idxd; in group_use_read_buffer_limit_store() local
632 struct idxd_device *idxd = wq->idxd; in wq_group_id_store() local
684 struct idxd_device *idxd = wq->idxd; in wq_mode_store() local
735 struct idxd_device *idxd = wq->idxd; in wq_size_store() local
772 struct idxd_device *idxd = wq->idxd; in wq_priority_store() local
808 struct idxd_device *idxd = wq->idxd; in wq_block_on_fault_store() local
854 struct idxd_device *idxd = wq->idxd; in wq_threshold_store() local
[all …]
H A Dperfmon.h38 return idxd_pmu->idxd; in event_to_idxd()
47 return idxd_pmu->idxd; in pmu_to_idxd()
88 (PERFMON_TABLE_OFFSET(idxd) + (offset))
90 #define PERFCAP_REG(idxd) (PERFMON_REG_OFFSET(idxd, IDXD_PERFCAP_OFFSET)) argument
91 #define PERFRST_REG(idxd) (PERFMON_REG_OFFSET(idxd, IDXD_PERFRST_OFFSET)) argument
92 #define OVFSTATUS_REG(idxd) (PERFMON_REG_OFFSET(idxd, IDXD_OVFSTATUS_OFFSET)) argument
93 #define PERFFRZ_REG(idxd) (PERFMON_REG_OFFSET(idxd, IDXD_PERFFRZ_OFFSET)) argument
98 #define CNTRCFG_REG(idxd, cntr) \ argument
100 #define CNTRDATA_REG(idxd, cntr) \ argument
102 #define CNTRCAP_REG(idxd, cntr) \ argument
[all …]
H A Ddebugfs.c18 struct idxd_evl *evl = idxd->evl; in dump_event_entry()
59 struct idxd_device *idxd = s->private; in debugfs_evl_show() local
60 struct idxd_evl *evl = idxd->evl; in debugfs_evl_show()
101 idxd->dbgfs_dir = debugfs_create_dir(dev_name(idxd_confdev(idxd)), idxd_debugfs_dir); in idxd_device_init_debugfs()
102 if (IS_ERR(idxd->dbgfs_dir)) in idxd_device_init_debugfs()
103 return PTR_ERR(idxd->dbgfs_dir); in idxd_device_init_debugfs()
105 if (idxd->evl) { in idxd_device_init_debugfs()
107 idxd->dbgfs_dir, idxd, in idxd_device_init_debugfs()
109 if (IS_ERR(idxd->dbgfs_evl_file)) { in idxd_device_init_debugfs()
111 idxd->dbgfs_dir = NULL; in idxd_device_init_debugfs()
[all …]
H A Didxd.h103 struct idxd_device *idxd; member
118 struct idxd_device *idxd; member
203 struct idxd_device *idxd; member
244 struct idxd_device *idxd; member
273 struct idxd_device *idxd; member
392 return idxd->hw.gen_cap.evl_support ? in evl_ent_size()
398 return idxd->evl->size * evl_ent_size(idxd); in evl_size()
440 #define idxd_confdev(idxd) &idxd->idxd_dev.conf_dev argument
507 return (idx == 0) ? &idxd->ie : &idxd->wqs[idx - 1]->ie; in idxd_get_ie()
680 idxd->max_batch_size = 0; in idxd_set_max_batch_size()
[all …]
H A Dcdev.c122 struct idxd_device *idxd = wq->idxd; in idxd_file_dev_release() local
230 idxd = wq->idxd; in idxd_cdev_open()
231 dev = &idxd->pdev->dev; in idxd_cdev_open()
330 struct idxd_device *idxd = wq->idxd; in idxd_cdev_evl_drain_pasid() local
360 struct idxd_device *idxd = wq->idxd; in idxd_cdev_release() local
391 struct idxd_device *idxd = wq->idxd; in idxd_cdev_mmap() local
499 struct idxd_device *idxd = wq->idxd; in idxd_cdev_poll() local
507 if (idxd->sw_err.valid) in idxd_cdev_poll()
530 struct idxd_device *idxd = wq->idxd; in idxd_wq_add_cdev() local
593 struct idxd_device *idxd = wq->idxd; in idxd_user_drv_probe() local
[all …]
H A Ddma.c27 struct idxd_device *idxd = desc->wq->idxd; in idxd_dma_complete_txd() local
112 struct idxd_device *idxd = wq->idxd; in idxd_dma_submit_memcpy() local
118 if (len > idxd->max_xfer_bytes) in idxd_dma_submit_memcpy()
201 struct device *dev = &idxd->pdev->dev; in idxd_register_dma_device()
234 idxd_dma->idxd = idxd; in idxd_register_dma_device()
239 idxd->idxd_dma = idxd_dma; in idxd_register_dma_device()
250 struct idxd_device *idxd = wq->idxd; in idxd_register_dma_channel() local
252 struct device *dev = &idxd->pdev->dev; in idxd_register_dma_channel()
302 struct idxd_device *idxd = wq->idxd; in idxd_dmaengine_drv_probe() local
305 if (idxd->state != IDXD_DEV_ENABLED) in idxd_dmaengine_drv_probe()
[all …]
H A Ddefaults.c6 int idxd_load_iaa_device_defaults(struct idxd_device *idxd) in idxd_load_iaa_device_defaults() argument
12 if (!test_bit(IDXD_FLAG_CONFIGURABLE, &idxd->flags)) in idxd_load_iaa_device_defaults()
15 wq = idxd->wqs[0]; in idxd_load_iaa_device_defaults()
25 wq->size = idxd->max_wq_size; in idxd_load_iaa_device_defaults()
34 group = idxd->groups[0]; in idxd_load_iaa_device_defaults()
46 engine = idxd->engines[0]; in idxd_load_iaa_device_defaults()
49 engine->group = idxd->groups[0]; in idxd_load_iaa_device_defaults()
H A Dsubmit.c14 struct idxd_device *idxd = wq->idxd; in __get_desc() local
18 memset(desc->completion, 0, idxd->data->compl_size); in __get_desc()
21 if (device_pasid_enabled(idxd)) in __get_desc()
22 desc->hw->pasid = idxd->pasid; in __get_desc()
30 struct idxd_device *idxd = wq->idxd; in idxd_alloc_desc() local
35 if (idxd->state != IDXD_DEV_ENABLED) in idxd_alloc_desc()
172 struct idxd_device *idxd = wq->idxd; in idxd_submit_desc() local
178 if (idxd->state != IDXD_DEV_ENABLED) in idxd_submit_desc()
H A DMakefile6 obj-$(CONFIG_INTEL_IDXD) += idxd.o
7 idxd-y := init.o irq.o device.o sysfs.o submit.o dma.o cdev.o debugfs.o defaults.o
9 idxd-$(CONFIG_INTEL_IDXD_PERFMON) += perfmon.o
/linux-6.15/drivers/crypto/intel/iaa/
H A Diaa_crypto_main.c536 iaa_device->idxd = idxd; in add_iaa_device()
660 struct idxd_device *idxd = wq->idxd; in iaa_wq_get() local
679 struct idxd_device *idxd = wq->idxd; in iaa_wq_put() local
751 if (iaa_device->idxd == wq->idxd) { in save_iaa_wq()
752 idxd = iaa_device->idxd; in save_iaa_wq()
840 idxd = iaa_device->idxd; in wq_table_add_wqs()
865 idxd = found_device->idxd; in wq_table_add_wqs()
1045 idxd = iaa_device->idxd; in iaa_desc_complete()
1149 idxd = iaa_device->idxd; in iaa_compress()
1301 idxd = iaa_device->idxd; in iaa_compress_verify()
[all …]
H A DMakefile6 ccflags-y += -I $(srctree)/drivers/dma/idxd -DDEFAULT_SYMBOL_NAMESPACE='"IDXD"'
H A Diaa_crypto.h69 struct idxd_device *idxd; member
H A Diaa_crypto_stats.c154 seq_printf(m, " id: %d\n", iaa_device->idxd->id); in device_stats_show()
/linux-6.15/Documentation/driver-api/crypto/iaa/
H A Diaa-crypto.rst166 https://github.com/intel/idxd-config/#readme
472 # echo -n 'module idxd +p' > /sys/kernel/debug/dynamic_debug/control
596 …[ 60.752344] idxd 0000:f6:02.0: add_iaa_wq: added wq 000000004068d14d to iaa 00000000c9585ba2, n…
599 [ 60.752349] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0)
600 …[ 60.752350] idxd 0000:6a:02.0: request_iaa_wq: returning unused wq 00000000c8bb4452 (0) from ia…
603 [ 60.752355] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0)
607 [ 60.752360] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0)
808 The 'IAA device bind path' is /sys/bus/dsa/drivers/idxd/bind and is
814 Similarly /sys/bus/dsa/drivers/idxd/unbind and
830 # echo iax3 > /sys/bus/dsa/drivers/idxd/unbind
[all …]
/linux-6.15/drivers/dma/
H A DMakefile49 obj-y += idxd/
H A DKconfig311 bool "Legacy behavior for idxd driver"
328 # support shared virtual memory for the devices supported by idxd.
/linux-6.15/Documentation/admin-guide/
H A Dkernel-parameters.txt2064 idxd.sva= [HW]
2067 support for the idxd driver. By default it is set to
2070 idxd.tc_override= [HW]
/linux-6.15/
H A DMAINTAINERS12001 F: drivers/dma/idxd/*
12002 F: include/uapi/linux/idxd.h