Home
last modified time | relevance | path

Searched refs:cxl_context (Results 1 – 14 of 14) sorted by relevance

/kernel/linux/linux-5.10/include/misc/
Dcxl.h73 struct cxl_context *cxl_get_context(struct pci_dev *dev);
78 struct cxl_context *cxl_dev_context_init(struct pci_dev *dev);
82 int cxl_release_context(struct cxl_context *ctx);
88 int cxl_set_priv(struct cxl_context *ctx, void *priv);
89 void *cxl_get_priv(struct cxl_context *ctx);
97 int cxl_allocate_afu_irqs(struct cxl_context *cxl, int num);
99 void cxl_free_afu_irqs(struct cxl_context *cxl);
106 int cxl_map_afu_irq(struct cxl_context *cxl, int num,
109 void cxl_unmap_afu_irq(struct cxl_context *cxl, int num, void *cookie);
115 int cxl_start_context(struct cxl_context *ctx, u64 wed,
[all …]
/kernel/linux/linux-5.10/drivers/misc/cxl/
Dapi.c50 void cxl_release_mapping(struct cxl_context *ctx) in cxl_release_mapping()
100 struct cxl_context *cxl_dev_context_init(struct pci_dev *dev) in cxl_dev_context_init()
103 struct cxl_context *ctx; in cxl_dev_context_init()
129 struct cxl_context *cxl_get_context(struct pci_dev *dev) in cxl_get_context()
135 int cxl_release_context(struct cxl_context *ctx) in cxl_release_context()
146 static irq_hw_number_t cxl_find_afu_irq(struct cxl_context *ctx, int num) in cxl_find_afu_irq()
162 int cxl_set_priv(struct cxl_context *ctx, void *priv) in cxl_set_priv()
173 void *cxl_get_priv(struct cxl_context *ctx) in cxl_get_priv()
182 int cxl_allocate_afu_irqs(struct cxl_context *ctx, int num) in cxl_allocate_afu_irqs()
212 void cxl_free_afu_irqs(struct cxl_context *ctx) in cxl_free_afu_irqs()
[all …]
Dcxl.h538 struct cxl_context { struct
632 irqreturn_t (*handle_interrupt)(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info); argument
635 int (*attach_afu_directed)(struct cxl_context *ctx, u64 wed, u64 amr);
636 int (*attach_dedicated_process)(struct cxl_context *ctx, u64 wed, u64 amr);
637 void (*update_dedicated_ivtes)(struct cxl_context *ctx);
640 void (*psl_irq_dump_registers)(struct cxl_context *ctx);
876 void cxl_context_free(struct cxl_context *ctx);
877 void cxl_context_detach(struct cxl_context *ctx);
896 int afu_register_irqs(struct cxl_context *ctx, u32 count);
897 void afu_release_irqs(struct cxl_context *ctx, void *cookie);
[all …]
Dcontext.c27 struct cxl_context *cxl_context_alloc(void) in cxl_context_alloc()
29 return kzalloc(sizeof(struct cxl_context), GFP_KERNEL); in cxl_context_alloc()
35 int cxl_context_init(struct cxl_context *ctx, struct cxl_afu *afu, bool master) in cxl_context_init()
118 void cxl_context_set_mapping(struct cxl_context *ctx, in cxl_context_set_mapping()
129 struct cxl_context *ctx = vma->vm_file->private_data; in cxl_mmap_fault()
182 int cxl_context_iomap(struct cxl_context *ctx, struct vm_area_struct *vma) in cxl_context_iomap()
234 int __detach_context(struct cxl_context *ctx) in __detach_context()
282 void cxl_context_detach(struct cxl_context *ctx) in cxl_context_detach()
299 struct cxl_context *ctx; in cxl_context_detach_all()
326 struct cxl_context *ctx = container_of(rcu, struct cxl_context, rcu); in reclaim_ctx()
[all …]
Dfault.c32 static struct cxl_sste *find_free_sste(struct cxl_context *ctx, in find_free_sste()
63 static void cxl_load_segment(struct cxl_context *ctx, struct copro_slb *slb) in cxl_load_segment()
84 static int cxl_fault_segment(struct cxl_context *ctx, struct mm_struct *mm, in cxl_fault_segment()
97 static void cxl_ack_ae(struct cxl_context *ctx) in cxl_ack_ae()
112 static int cxl_handle_segment_miss(struct cxl_context *ctx, in cxl_handle_segment_miss()
180 static void cxl_handle_page_fault(struct cxl_context *ctx, in cxl_handle_page_fault()
198 static struct mm_struct *get_mem_context(struct cxl_context *ctx) in get_mem_context()
209 static bool cxl_is_segment_miss(struct cxl_context *ctx, u64 dsisr) in cxl_is_segment_miss()
217 static bool cxl_is_page_fault(struct cxl_context *ctx, u64 dsisr) in cxl_is_page_fault()
230 struct cxl_context *ctx = in cxl_handle_fault()
[all …]
Dirq.c25 static irqreturn_t schedule_cxl_fault(struct cxl_context *ctx, u64 dsisr, u64 dar) in schedule_cxl_fault()
33 irqreturn_t cxl_irq_psl9(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl9()
84 irqreturn_t cxl_irq_psl8(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl8()
172 struct cxl_context *ctx = data; in cxl_irq_afu()
280 void afu_irq_name_free(struct cxl_context *ctx) in afu_irq_name_free()
291 int afu_allocate_irqs(struct cxl_context *ctx, u32 count) in afu_allocate_irqs()
356 static void afu_register_hwirqs(struct cxl_context *ctx) in afu_register_hwirqs()
389 int afu_register_irqs(struct cxl_context *ctx, u32 count) in afu_register_irqs()
401 void afu_release_irqs(struct cxl_context *ctx, void *cookie) in afu_release_irqs()
Dfile.c47 struct cxl_context *ctx; in __afu_open()
119 struct cxl_context *ctx = file->private_data; in afu_release()
147 static long afu_ioctl_start_work(struct cxl_context *ctx, in afu_ioctl_start_work()
280 static long afu_ioctl_process_element(struct cxl_context *ctx, in afu_ioctl_process_element()
291 static long afu_ioctl_get_afu_id(struct cxl_context *ctx, in afu_ioctl_get_afu_id()
312 struct cxl_context *ctx = file->private_data; in afu_ioctl()
341 struct cxl_context *ctx = file->private_data; in afu_mmap()
353 static inline bool ctx_event_pending(struct cxl_context *ctx) in ctx_event_pending()
366 struct cxl_context *ctx = file->private_data; in afu_poll()
389 static ssize_t afu_driver_event_copy(struct cxl_context *ctx, in afu_driver_event_copy()
[all …]
Dtrace.h64 TP_PROTO(struct cxl_context *ctx),
89 TP_PROTO(struct cxl_context *ctx, u64 wed, s16 num_interrupts, u64 amr),
125 TP_PROTO(struct cxl_context *ctx),
130 TP_PROTO(struct cxl_context *ctx, int afu_irq, int virq, irq_hw_number_t hwirq),
163 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
197 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
230 TP_PROTO(struct cxl_context *ctx, u64 tfc),
257 TP_PROTO(struct cxl_context *ctx, u64 dar),
284 TP_PROTO(struct cxl_context *ctx, unsigned int idx, u64 e, u64 v),
317 TP_PROTO(struct cxl_context *ctx, u64 dsisr, u64 dar),
[all …]
Dnative.c408 static void slb_invalid(struct cxl_context *ctx) in slb_invalid()
430 static int do_process_element_cmd(struct cxl_context *ctx, in do_process_element_cmd()
481 static int add_process_element(struct cxl_context *ctx) in add_process_element()
494 static int terminate_process_element(struct cxl_context *ctx) in terminate_process_element()
517 static int remove_process_element(struct cxl_context *ctx) in remove_process_element()
540 void cxl_assign_psn_space(struct cxl_context *ctx) in cxl_assign_psn_space()
627 static u64 calculate_sr(struct cxl_context *ctx) in calculate_sr()
633 static void update_ivtes_directed(struct cxl_context *ctx) in update_ivtes_directed()
662 static int process_element_entry_psl9(struct cxl_context *ctx, u64 wed, u64 amr) in process_element_entry_psl9()
717 int cxl_attach_afu_directed_psl9(struct cxl_context *ctx, u64 wed, u64 amr) in cxl_attach_afu_directed_psl9()
[all …]
Dguest.c55 static irqreturn_t guest_handle_psl_slice_error(struct cxl_context *ctx, u64 dsisr, in guest_handle_psl_slice_error()
150 static int guest_get_irq_info(struct cxl_context *ctx, struct cxl_irq_info *info) in guest_get_irq_info()
157 struct cxl_context *ctx = data; in guest_psl_irq()
373 static int guest_ack_irq(struct cxl_context *ctx, u64 tfc, u64 psl_reset_mask) in guest_ack_irq()
379 static void disable_afu_irqs(struct cxl_context *ctx) in disable_afu_irqs()
395 static void enable_afu_irqs(struct cxl_context *ctx) in enable_afu_irqs()
515 static int attach_afu_directed(struct cxl_context *ctx, u64 wed, u64 amr) in attach_afu_directed()
620 static int guest_attach_process(struct cxl_context *ctx, bool kernel, u64 wed, u64 amr) in guest_attach_process()
633 static int detach_afu_directed(struct cxl_context *ctx) in detach_afu_directed()
642 static int guest_detach_process(struct cxl_context *ctx) in guest_detach_process()
Dmain.c57 static inline void _cxl_slbia(struct cxl_context *ctx, struct mm_struct *mm) in _cxl_slbia()
79 struct cxl_context *ctx; in cxl_slbia_core()
107 int cxl_alloc_sst(struct cxl_context *ctx) in cxl_alloc_sst()
Dvphb.c32 struct cxl_context *ctx; in cxl_pci_enable_device_hook()
58 struct cxl_context *ctx = cxl_get_context(dev); in cxl_pci_disable_device()
Dpci.c1973 struct cxl_context *ctx; in cxl_pci_slot_reset()
/kernel/linux/linux-5.10/arch/powerpc/include/asm/
Ddevice.h42 struct cxl_context *cxl_ctx;