| /linux/drivers/dma/idxd/ |
| A D | init.c | 184 wq->idxd = idxd; in idxd_setup_wqs() 256 engine->idxd = idxd; in idxd_setup_engines() 303 group->idxd = idxd; in idxd_setup_groups() 484 idxd_set_max_batch_size(idxd->data->type, idxd, 1U << idxd->hw.gen_cap.max_batch_shift); in idxd_read_caps() 493 idxd->max_groups = idxd->hw.group_cap.num_groups; in idxd_read_caps() 495 idxd->max_rdbufs = idxd->hw.group_cap.total_rdbufs; in idxd_read_caps() 497 idxd->nr_rdbufs = idxd->max_rdbufs; in idxd_read_caps() 509 idxd->max_wq_size = idxd->hw.wq_cap.total_wq_size; in idxd_read_caps() 511 idxd->max_wqs = idxd->hw.wq_cap.num_wqs; in idxd_read_caps() 518 idxd->hw.opcap.bits[i] = ioread64(idxd->reg_base + in idxd_read_caps() [all …]
|
| A D | device.c | 110 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 …]
|
| A D | perfmon.c | 96 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 …]
|
| A D | sysfs.c | 36 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 …]
|
| A D | irq.c | 29 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 373 size = idxd->evl->size; in process_evl_entries() 409 idxd->sw_err.bits[i] = ioread64(idxd->reg_base + in idxd_misc_thread() 415 if (idxd->sw_err.valid && idxd->sw_err.wq_idx_valid) { in idxd_misc_thread() 448 revoke->idxd = idxd; in idxd_misc_thread() 497 queue_work(idxd->wq, &idxd->work); in idxd_misc_thread() [all …]
|
| A D | perfmon.h | 38 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 …]
|
| A D | debugfs.c | 18 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 …]
|
| A D | idxd.h | 103 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 381 return idxd->hw.gen_cap.evl_support ? in evl_ent_size() 387 return idxd->evl->size * evl_ent_size(idxd); in evl_size() 429 #define idxd_confdev(idxd) &idxd->idxd_dev.conf_dev argument 496 return (idx == 0) ? &idxd->ie : &idxd->wqs[idx - 1]->ie; in idxd_get_ie() 669 idxd->max_batch_size = 0; in idxd_set_max_batch_size() [all …]
|
| A D | cdev.c | 123 struct idxd_device *idxd = wq->idxd; in idxd_file_dev_release() local 233 idxd = wq->idxd; in idxd_cdev_open() 234 dev = &idxd->pdev->dev; in idxd_cdev_open() 335 struct idxd_device *idxd = wq->idxd; in idxd_cdev_evl_drain_pasid() local 365 struct idxd_device *idxd = wq->idxd; in idxd_cdev_release() local 396 struct idxd_device *idxd = wq->idxd; in idxd_cdev_mmap() local 498 struct idxd_device *idxd = wq->idxd; in idxd_cdev_poll() local 503 if (idxd->sw_err.valid) in idxd_cdev_poll() 526 struct idxd_device *idxd = wq->idxd; in idxd_wq_add_cdev() local 589 struct idxd_device *idxd = wq->idxd; in idxd_user_drv_probe() local [all …]
|
| A D | dma.c | 27 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 …]
|
| A D | defaults.c | 6 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()
|
| A D | submit.c | 14 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()
|
| A D | Makefile | 6 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/drivers/crypto/intel/iaa/ |
| A D | iaa_crypto_main.c | 538 iaa_device->idxd = idxd; in add_iaa_device() 662 struct idxd_device *idxd = wq->idxd; in iaa_wq_get() local 681 struct idxd_device *idxd = wq->idxd; in iaa_wq_put() local 753 if (iaa_device->idxd == wq->idxd) { in save_iaa_wq() 754 idxd = iaa_device->idxd; in save_iaa_wq() 842 idxd = iaa_device->idxd; in wq_table_add_wqs() 867 idxd = found_device->idxd; in wq_table_add_wqs() 1040 idxd = iaa_device->idxd; in iaa_desc_complete() 1145 idxd = iaa_device->idxd; in iaa_compress() 1297 idxd = iaa_device->idxd; in iaa_compress_verify() [all …]
|
| A D | Makefile | 6 ccflags-y += -I $(srctree)/drivers/dma/idxd -DDEFAULT_SYMBOL_NAMESPACE=IDXD
|
| A D | iaa_crypto.h | 69 struct idxd_device *idxd; member
|
| A D | iaa_crypto_stats.c | 154 seq_printf(m, " id: %d\n", iaa_device->idxd->id); in device_stats_show()
|
| /linux/Documentation/driver-api/crypto/iaa/ |
| A D | iaa-crypto.rst | 166 https://github.com/intel/idxd-config/#readme 465 # echo -n 'module idxd +p' > /sys/kernel/debug/dynamic_debug/control 589 …[ 60.752344] idxd 0000:f6:02.0: add_iaa_wq: added wq 000000004068d14d to iaa 00000000c9585ba2, n… 592 [ 60.752349] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0) 593 …[ 60.752350] idxd 0000:6a:02.0: request_iaa_wq: returning unused wq 00000000c8bb4452 (0) from ia… 596 [ 60.752355] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0) 600 [ 60.752360] idxd 0000:6a:02.0: request_iaa_wq: getting wq from iaa_device 0000000042d7bc52 (0) 801 The 'IAA device bind path' is /sys/bus/dsa/drivers/idxd/bind and is 807 Similarly /sys/bus/dsa/drivers/idxd/unbind and 823 # echo iax3 > /sys/bus/dsa/drivers/idxd/unbind [all …]
|
| /linux/drivers/dma/ |
| A D | Makefile | 50 obj-y += idxd/
|
| A D | Kconfig | 311 bool "Legacy behavior for idxd driver" 328 # support shared virtual memory for the devices supported by idxd.
|
| /linux/Documentation/admin-guide/ |
| A D | kernel-parameters.txt | 2011 idxd.sva= [HW] 2014 support for the idxd driver. By default it is set to 2017 idxd.tc_override= [HW]
|
| /linux/ |
| A D | MAINTAINERS | 11470 F: drivers/dma/idxd/* 11471 F: include/uapi/linux/idxd.h
|