Home
last modified time | relevance | path

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

12

/linux/drivers/misc/cxl/
A Dnative.c44 if (!cxl_ops->link_ok(afu->adapter, afu)) { in afu_control()
121 if (!cxl_ops->link_ok(afu->adapter, afu)) { in native_afu_check_and_enable()
149 if (!cxl_ops->link_ok(afu->adapter, afu)) { in cxl_psl_purge()
171 if (!cxl_ops->link_ok(afu->adapter, afu)) { in cxl_psl_purge()
250 1<<afu->native->spa_order, afu->native->spa_max_procs, afu->num_procs); in cxl_alloc_spa()
890 struct cxl_afu *afu = ctx->afu; in cxl_update_dedicated_ivtes_psl8() local
906 struct cxl_afu *afu = ctx->afu; in cxl_attach_dedicated_process_psl9() local
934 struct cxl_afu *afu = ctx->afu; in cxl_attach_dedicated_process_psl8() local
1089 if (!cxl_ops->link_ok(afu->adapter, afu)) in native_get_irq_info()
1400 cxl_unmap_irq(afu->serr_virq, afu); in cxl_native_release_serr_irq()
[all …]
A Dguest.c181 if (!afu) in afu_read_error_state()
272 if ((afu = adapter->afu[i])) { in guest_reset()
281 if (!rc && (afu = adapter->afu[i])) { in guest_reset()
360 if (!(afu->serr_virq = cxl_map_irq(afu->adapter, afu->serr_hwirq, in guest_register_serr_irq()
372 cxl_unmap_irq(afu->serr_virq, afu); in guest_release_serr_irq()
741 afu->num_procs = afu->max_procs_virtualised; in activate_afu_directed()
811 if (!(afu->p2n_mmio = ioremap(afu->guest->p2n_phys, afu->guest->p2n_size))) { in guest_map_slice_regs()
987 adapter->afu[afu->slice] = afu; in cxl_guest_init_afu()
995 afu->guest->parent = afu; in cxl_guest_init_afu()
1023 if (!afu) in cxl_guest_remove_afu()
[all …]
A Dpci.c871 afu->eb_offset = AFUD_READ_EB_OFF(afu); in cxl_read_afu_descriptor()
893 (afu->native->pp_offset + afu->pp_size*afu->max_procs_virtualised)) { in cxl_afu_descriptor_looks_ok()
1172 adapter->afu[afu->slice] = afu; in pci_init_afu()
1205 afu->adapter->afu[afu->slice] = NULL; in cxl_pci_remove_afu()
1788 afu = adapter->afu[i]; in cxl_remove()
1806 if (afu == NULL || afu->phb == NULL) in cxl_vphb_error_detected()
1849 afu = adapter->afu[i]; in cxl_pci_error_detected()
1943 afu = adapter->afu[i]; in cxl_pci_error_detected()
1997 afu = adapter->afu[i]; in cxl_pci_slot_reset()
2080 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()
120 struct cxl_afu *afu; in cxl_pcie_read_config() local
127 if (afu == NULL || !cxl_afu_configured_get(afu)) in cxl_pcie_read_config()
160 struct cxl_afu *afu; in cxl_pcie_write_config() local
164 if (afu == NULL || !cxl_afu_configured_get(afu)) in cxl_pcie_write_config()
223 if (!afu->crs_num) in cxl_pci_vphb_add()
270 afu->phb = phb; in cxl_pci_vphb_add()
280 if (!afu || !afu->phb) in cxl_pci_vphb_remove()
283 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()
655 if (afu->eb_len) in cxl_sysfs_afu_remove()
656 device_remove_bin_file(&afu->dev, &afu->attr_eb); in cxl_sysfs_afu_remove()
689 if (afu->eb_len) { in cxl_sysfs_afu_add()
694 afu->attr_eb.size = afu->eb_len; in cxl_sysfs_afu_add()
697 rc = device_create_bin_file(&afu->dev, &afu->attr_eb); in cxl_sysfs_afu_add()
699 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()
438 int afu; in cxl_of_remove() local
441 for (afu = 0; afu < adapter->slices; afu++) in cxl_of_remove()
[all …]
A Dmain.c50 if (!cxl_ops->link_ok(afu->adapter, afu)) in cxl_afu_slbia()
65 ctx->afu->adapter->adapter_num, ctx->afu->slice, ctx->pe); in _cxl_slbia()
72 cxl_afu_slbia(ctx->afu); in _cxl_slbia()
78 struct cxl_afu *afu; in cxl_slbia_core() local
89 afu = adapter->afu[slice]; in cxl_slbia_core()
90 if (!afu || !afu->enabled) in cxl_slbia_core()
245 struct cxl_afu *afu; in cxl_alloc_afu() local
250 afu->adapter = adapter; in cxl_alloc_afu()
253 afu->slice = slice; in cxl_alloc_afu()
259 afu->irqs_max = afu->adapter->user_irqs; in cxl_alloc_afu()
[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 Dcxl.h539 struct cxl_afu *afu; member
680 struct cxl_afu *afu[CXL_MAX_SLICES]; member
802 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p1n_write()
803 out_be64(_cxl_p1n_addr(afu, reg), val); in cxl_p1n_write()
808 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p1n_read()
816 return afu->p2n_mmio + cxl_reg_off(reg); in _cxl_p2n_addr()
821 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p2n_write()
827 if (likely(cxl_adapter_link_ok(afu->adapter, afu))) in cxl_p2n_read()
1018 int cxl_afu_slbia(struct cxl_afu *afu);
1021 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.c102 struct cxl_afu *afu; in cxl_dev_context_init() local
106 afu = cxl_pci_to_afu(dev); in cxl_dev_context_init()
107 if (IS_ERR(afu)) in cxl_dev_context_init()
108 return ERR_CAST(afu); in cxl_dev_context_init()
117 rc = cxl_context_init(ctx, afu, false); in cxl_dev_context_init()
188 num = ctx->afu->pp_irqs; in cxl_allocate_afu_irqs()
466 work->num_interrupts = ctx->afu->pp_irqs; in cxl_start_work()
505 struct cxl_afu *afu = ctx->afu; in cxl_afu_reset() local
508 rc = cxl_ops->afu_reset(afu); in cxl_afu_reset()
512 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()
424 dev_crit(&afu->dev, in cxl_afu_decode_psl_serr()
428 dev_crit(&afu->dev, "AFU MMIO Timeout\n"); in cxl_afu_decode_psl_serr()
430 dev_crit(&afu->dev, in cxl_afu_decode_psl_serr()
433 dev_crit(&afu->dev, "AFU CTAG Overflow\n"); in cxl_afu_decode_psl_serr()
435 dev_crit(&afu->dev, "Bad Interrupt Source\n"); in cxl_afu_decode_psl_serr()
437 dev_crit(&afu->dev, "Bad Context Handle\n"); in cxl_afu_decode_psl_serr()
439 dev_crit(&afu->dev, "LLCMD to Disabled AFU\n"); in cxl_afu_decode_psl_serr()
441 dev_crit(&afu->dev, "LLCMD Timeout to AFU\n"); in cxl_afu_decode_psl_serr()
443 dev_crit(&afu->dev, "AFU MMIO Parity Error\n"); in cxl_afu_decode_psl_serr()
[all …]
/linux/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 Dconfig.c464 afu->pp_mmio_stride = val; in read_afu_mmio()
478 afu->idx); in read_afu_control()
511 if (!afu->name[0]) { in validate_afu()
530 afu->pp_mmio_bar != 2 && in validate_afu()
531 afu->pp_mmio_bar != 4) { in validate_afu()
557 afu->lpc_mem_offset = 0; in read_afu_lpc_memory_info()
558 afu->lpc_mem_size = 0; in read_afu_lpc_memory_info()
645 afu->idx = afu_idx; in ocxl_config_read_afu()
648 afu->idx); in ocxl_config_read_afu()
678 afu->version_minor); in ocxl_config_read_afu()
[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 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/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.c498 rc = idr_alloc(&afu->idr, ctx, 0, afu->max_pasid, GFP_NOWAIT); in ocxlflash_dev_context_init()
513 ctx->hw_afu = afu; in ocxlflash_dev_context_init()
706 if (!afu) in ocxlflash_destroy_afu()
717 kfree(afu); in ocxlflash_destroy_afu()
914 afu = kzalloc(sizeof(*afu), GFP_KERNEL); in ocxlflash_create_afu()
920 afu->pdev = pdev; in ocxlflash_create_afu()
921 afu->dev = dev; in ocxlflash_create_afu()
922 idr_init(&afu->idr); in ocxlflash_create_afu()
948 return afu; in ocxlflash_create_afu()
955 kfree(afu); in ocxlflash_create_afu()
[all …]
/linux/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()
53 struct dfl_afu *afu; in afu_mmio_region_add() local
67 afu = dfl_fpga_pdata_get_private(pdata); in afu_mmio_region_add()
78 list_add(&region->node, &afu->regions); in afu_mmio_region_add()
80 afu->region_cur_offset += region_size; in afu_mmio_region_add()
81 afu->num_regions++; in afu_mmio_region_add()
117 struct dfl_afu *afu; in afu_mmio_region_get_by_index() local
151 struct dfl_afu *afu; in afu_mmio_region_get_by_offset() local
[all …]
/linux/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 92 milliseconds

12