Home
last modified time | relevance | path

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

12

/linux-6.3-rc2/drivers/misc/cxl/
A Dnative.c45 if (!cxl_ops->link_ok(afu->adapter, afu)) { in afu_control()
122 if (!cxl_ops->link_ok(afu->adapter, afu)) { in native_afu_check_and_enable()
150 if (!cxl_ops->link_ok(afu->adapter, afu)) { in cxl_psl_purge()
172 if (!cxl_ops->link_ok(afu->adapter, afu)) { in cxl_psl_purge()
251 1<<afu->native->spa_order, afu->native->spa_max_procs, afu->num_procs); in cxl_alloc_spa()
891 struct cxl_afu *afu = ctx->afu; in cxl_update_dedicated_ivtes_psl8() local
907 struct cxl_afu *afu = ctx->afu; in cxl_attach_dedicated_process_psl9() local
935 struct cxl_afu *afu = ctx->afu; in cxl_attach_dedicated_process_psl8() local
1090 if (!cxl_ops->link_ok(afu->adapter, afu)) in native_get_irq_info()
1401 cxl_unmap_irq(afu->serr_virq, afu); in cxl_native_release_serr_irq()
[all …]
A Dguest.c183 if (!afu) in afu_read_error_state()
274 if ((afu = adapter->afu[i])) { in guest_reset()
283 if (!rc && (afu = adapter->afu[i])) { in guest_reset()
362 if (!(afu->serr_virq = cxl_map_irq(afu->adapter, afu->serr_hwirq, in guest_register_serr_irq()
374 cxl_unmap_irq(afu->serr_virq, afu); in guest_release_serr_irq()
743 afu->num_procs = afu->max_procs_virtualised; in activate_afu_directed()
813 if (!(afu->p2n_mmio = ioremap(afu->guest->p2n_phys, afu->guest->p2n_size))) { in guest_map_slice_regs()
989 adapter->afu[afu->slice] = afu; in cxl_guest_init_afu()
997 afu->guest->parent = afu; in cxl_guest_init_afu()
1027 if (!afu) in cxl_guest_remove_afu()
[all …]
A Dpci.c872 afu->eb_offset = AFUD_READ_EB_OFF(afu); in cxl_read_afu_descriptor()
894 (afu->native->pp_offset + afu->pp_size*afu->max_procs_virtualised)) { in cxl_afu_descriptor_looks_ok()
1173 adapter->afu[afu->slice] = afu; in pci_init_afu()
1208 afu->adapter->afu[afu->slice] = NULL; in cxl_pci_remove_afu()
1793 afu = adapter->afu[i]; in cxl_remove()
1811 if (afu == NULL || afu->phb == NULL) in cxl_vphb_error_detected()
1854 afu = adapter->afu[i]; in cxl_pci_error_detected()
1948 afu = adapter->afu[i]; in cxl_pci_error_detected()
2002 afu = adapter->afu[i]; in cxl_pci_slot_reset()
2085 afu = adapter->afu[i]; in cxl_pci_resume()
[all …]
A Dvphb.c31 struct cxl_afu *afu; in cxl_pci_enable_device_hook() local
37 if (!cxl_ops->link_ok(afu->adapter, afu)) { in cxl_pci_enable_device_hook()
114 struct cxl_afu *afu; in cxl_pcie_read_config() local
121 if (afu == NULL || !cxl_afu_configured_get(afu)) in cxl_pcie_read_config()
154 struct cxl_afu *afu; in cxl_pcie_write_config() local
158 if (afu == NULL || !cxl_afu_configured_get(afu)) in cxl_pcie_write_config()
216 if (!afu->crs_num) in cxl_pci_vphb_add()
263 afu->phb = phb; in cxl_pci_vphb_add()
273 if (!afu || !afu->phb) in cxl_pci_vphb_remove()
276 phb = afu->phb; in cxl_pci_vphb_remove()
[all …]
A Dfile.c28 #define CXL_AFU_MINOR_D(afu) (CXL_CARD_MINOR(afu->adapter) + 1 + (3 * afu->slice)) argument
29 #define CXL_AFU_MINOR_M(afu) (CXL_AFU_MINOR_D(afu) + 1) argument
30 #define CXL_AFU_MINOR_S(afu) (CXL_AFU_MINOR_D(afu) + 2) argument
61 if (!(afu = adapter->afu[slice])) { in __afu_open()
317 if (!cxl_ops->link_ok(ctx->afu->adapter, ctx->afu)) in afu_ioctl()
347 if (!cxl_ops->link_ok(ctx->afu->adapter, ctx->afu)) in afu_mmap()
434 if (!cxl_ops->link_ok(ctx->afu->adapter, ctx->afu)) in afu_read()
578 dev = device_create(cxl_class, &afu->dev, devt, afu, in cxl_add_chardev()
596 return cxl_add_chardev(afu, CXL_AFU_MKDEV_D(afu), &afu->afu_cdev_d, in cxl_chardev_d_afu_add()
603 return cxl_add_chardev(afu, CXL_AFU_MKDEV_M(afu), &afu->afu_cdev_m, in cxl_chardev_m_afu_add()
[all …]
A Dsysfs.c242 if (afu->pp_size) in mmio_size_show()
312 afu->irqs_max = irqs_max; in irqs_max_store()
416 afu->current_mode = 0; in mode_store()
417 afu->num_procs = 0; in mode_store()
656 if (afu->eb_len) in cxl_sysfs_afu_remove()
657 device_remove_bin_file(&afu->dev, &afu->attr_eb); in cxl_sysfs_afu_remove()
690 if (afu->eb_len) { in cxl_sysfs_afu_add()
695 afu->attr_eb.size = afu->eb_len; in cxl_sysfs_afu_add()
698 rc = device_create_bin_file(&afu->dev, &afu->attr_eb); in cxl_sysfs_afu_add()
700 dev_err(&afu->dev, in cxl_sysfs_afu_add()
[all …]
A Dtrace.h76 __entry->afu = ctx->afu->slice;
105 __entry->afu = ctx->afu->slice;
145 __entry->afu = ctx->afu->slice;
178 __entry->afu = ctx->afu->slice;
212 __entry->afu = ctx->afu->slice;
243 __entry->afu = ctx->afu->slice;
270 __entry->afu = ctx->afu->slice;
299 __entry->afu = ctx->afu->slice;
331 __entry->afu = ctx->afu->slice;
416 __entry->afu = afu->slice;
[all …]
A Dof.c172 afu->psa = false; in cxl_of_read_afu_properties()
174 afu->psa = true; in cxl_of_read_afu_properties()
191 afu->irqs_max = afu->guest->max_ints; in cxl_of_read_afu_properties()
199 afu->pp_irqs--; in cxl_of_read_afu_properties()
208 afu->eb_offset = 0; in cxl_of_read_afu_properties()
271 afu->guest->p2n_phys, afu->guest->p2n_size); in cxl_of_read_afu_properties()
273 afu->psn_phys, afu->adapter->ps_size); in cxl_of_read_afu_properties()
277 afu->irqs_max); in cxl_of_read_afu_properties()
437 int afu; in cxl_of_remove() local
440 for (afu = 0; afu < adapter->slices; afu++) in cxl_of_remove()
[all …]
A Ddebugfs.c80 void cxl_debugfs_add_afu_regs_psl9(struct cxl_afu *afu, struct dentry *dir) in cxl_debugfs_add_afu_regs_psl9() argument
85 void cxl_debugfs_add_afu_regs_psl8(struct cxl_afu *afu, struct dentry *dir) in cxl_debugfs_add_afu_regs_psl8() argument
96 void cxl_debugfs_afu_add(struct cxl_afu *afu) in cxl_debugfs_afu_add() argument
101 if (!afu->adapter->debugfs) in cxl_debugfs_afu_add()
104 snprintf(buf, 32, "psl%i.%i", afu->adapter->adapter_num, afu->slice); in cxl_debugfs_afu_add()
105 dir = debugfs_create_dir(buf, afu->adapter->debugfs); in cxl_debugfs_afu_add()
106 afu->debugfs = dir; in cxl_debugfs_afu_add()
114 if (afu->adapter->native->sl_ops->debugfs_add_afu_regs) in cxl_debugfs_afu_add()
115 afu->adapter->native->sl_ops->debugfs_add_afu_regs(afu, dir); in cxl_debugfs_afu_add()
118 void cxl_debugfs_afu_remove(struct cxl_afu *afu) in cxl_debugfs_afu_remove() argument
[all …]
A Dmain.c51 if (!cxl_ops->link_ok(afu->adapter, afu)) in cxl_afu_slbia()
66 ctx->afu->adapter->adapter_num, ctx->afu->slice, ctx->pe); in _cxl_slbia()
73 cxl_afu_slbia(ctx->afu); in _cxl_slbia()
79 struct cxl_afu *afu; in cxl_slbia_core() local
90 afu = adapter->afu[slice]; in cxl_slbia_core()
91 if (!afu || !afu->enabled) in cxl_slbia_core()
246 struct cxl_afu *afu; in cxl_alloc_afu() local
251 afu->adapter = adapter; in cxl_alloc_afu()
254 afu->slice = slice; in cxl_alloc_afu()
260 afu->irqs_max = afu->adapter->user_irqs; in cxl_alloc_afu()
[all …]
A Dcxl.h541 struct cxl_afu *afu; member
682 struct cxl_afu *afu[CXL_MAX_SLICES]; member
804 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p1n_write()
805 out_be64(_cxl_p1n_addr(afu, reg), val); in cxl_p1n_write()
810 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p1n_read()
818 return afu->p2n_mmio + cxl_reg_off(reg); in _cxl_p2n_addr()
823 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p2n_write()
829 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p2n_read()
1020 int cxl_afu_slbia(struct cxl_afu *afu);
1023 int cxl_psl_purge(struct cxl_afu *afu);
[all …]
A Dcontext.c39 ctx->afu = afu; in cxl_context_init()
92 mutex_lock(&afu->contexts_lock); in cxl_context_init()
97 mutex_unlock(&afu->contexts_lock); in cxl_context_init()
114 cxl_afu_get(afu); in cxl_context_init()
139 area = ctx->afu->psn_phys; in cxl_mmap_fault()
202 if (!ctx->afu->enabled) in cxl_context_iomap()
210 if ((ctx->master && !ctx->afu->psa) || (!ctx->afu->pp_psa)) { in cxl_context_iomap()
216 if (!ctx->afu->enabled) in cxl_context_iomap()
249 cxl_ops->link_ok(ctx->afu->adapter, ctx->afu)); in __detach_context()
302 mutex_lock(&afu->contexts_lock); in cxl_context_detach_all()
[all …]
A Dapi.c103 struct cxl_afu *afu; in cxl_dev_context_init() local
107 afu = cxl_pci_to_afu(dev); in cxl_dev_context_init()
108 if (IS_ERR(afu)) in cxl_dev_context_init()
109 return ERR_CAST(afu); in cxl_dev_context_init()
118 rc = cxl_context_init(ctx, afu, false); in cxl_dev_context_init()
189 num = ctx->afu->pp_irqs; in cxl_allocate_afu_irqs()
467 work->num_interrupts = ctx->afu->pp_irqs; in cxl_start_work()
506 struct cxl_afu *afu = ctx->afu; in cxl_afu_reset() local
509 rc = cxl_ops->afu_reset(afu); in cxl_afu_reset()
513 return cxl_ops->afu_check_and_enable(afu); in cxl_afu_reset()
[all …]
A Dirq.c337 dev_name(&ctx->afu->dev), in afu_allocate_irqs()
425 dev_crit(&afu->dev, in cxl_afu_decode_psl_serr()
429 dev_crit(&afu->dev, "AFU MMIO Timeout\n"); in cxl_afu_decode_psl_serr()
431 dev_crit(&afu->dev, in cxl_afu_decode_psl_serr()
434 dev_crit(&afu->dev, "AFU CTAG Overflow\n"); in cxl_afu_decode_psl_serr()
436 dev_crit(&afu->dev, "Bad Interrupt Source\n"); in cxl_afu_decode_psl_serr()
438 dev_crit(&afu->dev, "Bad Context Handle\n"); in cxl_afu_decode_psl_serr()
440 dev_crit(&afu->dev, "LLCMD to Disabled AFU\n"); in cxl_afu_decode_psl_serr()
442 dev_crit(&afu->dev, "LLCMD Timeout to AFU\n"); in cxl_afu_decode_psl_serr()
444 dev_crit(&afu->dev, "AFU MMIO Parity Error\n"); in cxl_afu_decode_psl_serr()
[all …]
/linux-6.3-rc2/drivers/misc/ocxl/
A Dcore.c21 if (!afu) in alloc_afu()
28 afu->fn = fn; in alloc_afu()
30 return afu; in alloc_afu()
39 kfree(afu); in free_afu()
76 afu->actag_base, afu->actag_enabled); in assign_afu_actag()
78 afu->actag_base, afu->actag_enabled); in assign_afu_actag()
187 release_fn_bar(afu->fn, afu->config.pp_mmio_bar); in map_mmio_areas()
209 release_fn_bar(afu->fn, afu->config.pp_mmio_bar); in unmap_mmio_areas()
478 u8 afu; in ocxl_function_open() local
493 for (afu = 0; afu <= fn->config.max_afu_index; afu++) { in ocxl_function_open()
[all …]
A Dmmio.c10 if (offset > afu->config.global_mmio_size - 4) in ocxl_global_mmio_read32()
24 *val = readl((char *)afu->global_mmio_ptr + offset); in ocxl_global_mmio_read32()
35 if (offset > afu->config.global_mmio_size - 8) in ocxl_global_mmio_read64()
49 *val = readq((char *)afu->global_mmio_ptr + offset); in ocxl_global_mmio_read64()
60 if (offset > afu->config.global_mmio_size - 4) in ocxl_global_mmio_write32()
74 writel(val, (char *)afu->global_mmio_ptr + offset); in ocxl_global_mmio_write32()
86 if (offset > afu->config.global_mmio_size - 8) in ocxl_global_mmio_write64()
114 if (offset > afu->config.global_mmio_size - 4) in ocxl_global_mmio_set32()
145 if (offset > afu->config.global_mmio_size - 8) in ocxl_global_mmio_set64()
176 if (offset > afu->config.global_mmio_size - 4) in ocxl_global_mmio_clear32()
[all …]
A Dcontext.c17 ctx->afu = afu; in ocxl_context_alloc()
18 mutex_lock(&afu->contexts_lock); in ocxl_context_alloc()
19 pasid = idr_alloc(&afu->contexts_idr, ctx, afu->pasid_base, in ocxl_context_alloc()
20 afu->pasid_base + afu->pasid_max, GFP_KERNEL); in ocxl_context_alloc()
22 mutex_unlock(&afu->contexts_lock); in ocxl_context_alloc()
26 afu->pasid_count++; in ocxl_context_alloc()
27 mutex_unlock(&afu->contexts_lock); in ocxl_context_alloc()
44 ocxl_afu_get(afu); in ocxl_context_alloc()
265 mutex_lock(&afu->contexts_lock); in ocxl_context_detach_all()
286 ctx->afu->pasid_count--; in ocxl_context_free()
[all …]
A Dsysfs.c10 return info->afu; in to_afu()
17 struct ocxl_afu *afu = to_afu(device); in global_mmio_size_show() local
20 afu->config.global_mmio_size); in global_mmio_size_show()
27 struct ocxl_afu *afu = to_afu(device); in pp_mmio_size_show() local
30 afu->config.pp_mmio_stride); in pp_mmio_size_show()
40 afu->config.version_major, in afu_version_show()
41 afu->config.version_minor); in afu_version_show()
51 afu->pasid_count, afu->pasid_max); in contexts_show()
59 struct ocxl_fn *fn = afu->fn; in reload_on_reset_show()
74 struct ocxl_fn *fn = afu->fn; in reload_on_reset_store()
[all …]
A Dconfig.c482 afu->pp_mmio_stride = val; in read_afu_mmio()
496 afu->idx); in read_afu_control()
529 if (!afu->name[0]) { in validate_afu()
548 afu->pp_mmio_bar != 2 && in validate_afu()
549 afu->pp_mmio_bar != 4) { in validate_afu()
575 afu->lpc_mem_offset = 0; in read_afu_lpc_memory_info()
576 afu->lpc_mem_size = 0; in read_afu_lpc_memory_info()
663 afu->idx = afu_idx; in ocxl_config_read_afu()
666 afu->idx); in ocxl_config_read_afu()
696 afu->version_minor); in ocxl_config_read_afu()
[all …]
A Dpci.c20 struct ocxl_afu *afu, *tmp; in ocxl_probe() local
32 list_for_each_entry_safe(afu, tmp, afu_list, list) { in ocxl_probe()
34 rc = ocxl_file_register_afu(afu); in ocxl_probe()
37 afu->config.name, afu->config.idx); in ocxl_probe()
47 struct ocxl_afu *afu; in ocxl_remove() local
53 list_for_each_entry(afu, afu_list, list) { in ocxl_remove()
54 ocxl_file_unregister_afu(afu); in ocxl_remove()
/linux-6.3-rc2/drivers/scsi/cxlflash/
A Dcommon.h113 struct afu *afu; member
204 struct afu *afu; member
230 struct afu { struct
232 int (*send_cmd)(struct afu *afu, struct afu_cmd *cmd); argument
262 static inline bool afu_is_irqpoll_enabled(struct afu *afu) in afu_is_irqpoll_enabled() argument
267 static inline bool afu_has_cap(struct afu *afu, u64 cap) in afu_has_cap() argument
274 static inline bool afu_is_ocxl_lisn(struct afu *afu) in afu_is_ocxl_lisn() argument
279 static inline bool afu_is_afu_debug(struct afu *afu) in afu_is_afu_debug() argument
284 static inline bool afu_is_lun_provision(struct afu *afu) in afu_is_lun_provision() argument
289 static inline bool afu_is_sq_cmd_mode(struct afu *afu) in afu_is_sq_cmd_mode() argument
[all …]
A Dmain.c461 struct afu *afu = cfg->afu; in send_tmf() local
563 struct afu *afu = cfg->afu; in cxlflash_queuecommand() local
659 struct afu *afu = cfg->afu; in free_mem() local
692 struct afu *afu = cfg->afu; in stop_afu() local
730 struct afu *afu = cfg->afu; in term_intr() local
776 struct afu *afu = cfg->afu; in term_mc() local
850 struct afu *afu = cfg->afu; in notify_shutdown() local
1370 struct afu *afu = hwq->afu; in process_hrrq() local
1473 struct afu *afu = hwq->afu; in cxlflash_rrq_irq() local
1541 struct afu *afu = hwq->afu; in cxlflash_async_err_irq() local
[all …]
A Docxl_hw.c499 rc = idr_alloc(&afu->idr, ctx, 0, afu->max_pasid, GFP_NOWAIT); in ocxlflash_dev_context_init()
514 ctx->hw_afu = afu; in ocxlflash_dev_context_init()
707 if (!afu) in ocxlflash_destroy_afu()
718 kfree(afu); in ocxlflash_destroy_afu()
915 afu = kzalloc(sizeof(*afu), GFP_KERNEL); in ocxlflash_create_afu()
921 afu->pdev = pdev; in ocxlflash_create_afu()
922 afu->dev = dev; in ocxlflash_create_afu()
923 idr_init(&afu->idr); in ocxlflash_create_afu()
949 return afu; in ocxlflash_create_afu()
956 kfree(afu); in ocxlflash_create_afu()
[all …]
/linux-6.3-rc2/drivers/fpga/
A Ddfl-afu-region.c21 INIT_LIST_HEAD(&afu->regions); in afu_mmio_region_init()
24 #define for_each_region(region, afu) \ argument
32 for_each_region(region, afu) in get_region_by_index()
54 struct dfl_afu *afu; in afu_mmio_region_add() local
68 afu = dfl_fpga_pdata_get_private(pdata); in afu_mmio_region_add()
79 list_add(&region->node, &afu->regions); in afu_mmio_region_add()
81 afu->region_cur_offset += region_size; in afu_mmio_region_add()
82 afu->num_regions++; in afu_mmio_region_add()
118 struct dfl_afu *afu; in afu_mmio_region_get_by_index() local
152 struct dfl_afu *afu; in afu_mmio_region_get_by_offset() local
[all …]
/linux-6.3-rc2/include/misc/
A Docxl.h95 void ocxl_afu_get(struct ocxl_afu *afu);
101 void ocxl_afu_put(struct ocxl_afu *afu);
212 struct ocxl_afu_config *ocxl_afu_config(struct ocxl_afu *afu);
219 void ocxl_afu_set_private(struct ocxl_afu *afu, void *private);
228 void *ocxl_afu_get_private(struct ocxl_afu *afu);
240 int ocxl_global_mmio_read32(struct ocxl_afu *afu, size_t offset,
252 int ocxl_global_mmio_read64(struct ocxl_afu *afu, size_t offset,
264 int ocxl_global_mmio_write32(struct ocxl_afu *afu, size_t offset,
288 int ocxl_global_mmio_set32(struct ocxl_afu *afu, size_t offset,
300 int ocxl_global_mmio_set64(struct ocxl_afu *afu, size_t offset,
[all …]

Completed in 66 milliseconds

12