Home
last modified time | relevance | path

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

/Linux-v4.19/include/misc/
Dcxl.h77 struct cxl_context *cxl_get_context(struct pci_dev *dev);
82 struct cxl_context *cxl_dev_context_init(struct pci_dev *dev);
86 int cxl_release_context(struct cxl_context *ctx);
92 int cxl_set_priv(struct cxl_context *ctx, void *priv);
93 void *cxl_get_priv(struct cxl_context *ctx);
101 int cxl_allocate_afu_irqs(struct cxl_context *cxl, int num);
103 void cxl_free_afu_irqs(struct cxl_context *cxl);
110 int cxl_map_afu_irq(struct cxl_context *cxl, int num,
113 void cxl_unmap_afu_irq(struct cxl_context *cxl, int num, void *cookie);
119 int cxl_start_context(struct cxl_context *ctx, u64 wed,
[all …]
/Linux-v4.19/drivers/misc/cxl/
Dapi.c59 void cxl_release_mapping(struct cxl_context *ctx) in cxl_release_mapping()
109 struct cxl_context *cxl_dev_context_init(struct pci_dev *dev) in cxl_dev_context_init()
112 struct cxl_context *ctx; in cxl_dev_context_init()
138 struct cxl_context *cxl_get_context(struct pci_dev *dev) in cxl_get_context()
144 int cxl_release_context(struct cxl_context *ctx) in cxl_release_context()
155 static irq_hw_number_t cxl_find_afu_irq(struct cxl_context *ctx, int num) in cxl_find_afu_irq()
171 int cxl_set_priv(struct cxl_context *ctx, void *priv) in cxl_set_priv()
182 void *cxl_get_priv(struct cxl_context *ctx) in cxl_get_priv()
191 int cxl_allocate_afu_irqs(struct cxl_context *ctx, int num) in cxl_allocate_afu_irqs()
221 void cxl_free_afu_irqs(struct cxl_context *ctx) in cxl_free_afu_irqs()
[all …]
Dcxl.h542 struct cxl_context { struct
636 irqreturn_t (*handle_interrupt)(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info); argument
639 int (*attach_afu_directed)(struct cxl_context *ctx, u64 wed, u64 amr);
640 int (*attach_dedicated_process)(struct cxl_context *ctx, u64 wed, u64 amr);
641 void (*update_dedicated_ivtes)(struct cxl_context *ctx);
644 void (*psl_irq_dump_registers)(struct cxl_context *ctx);
880 void cxl_context_free(struct cxl_context *ctx);
881 void cxl_context_detach(struct cxl_context *ctx);
900 int afu_register_irqs(struct cxl_context *ctx, u32 count);
901 void afu_release_irqs(struct cxl_context *ctx, void *cookie);
[all …]
Dcontext.c31 struct cxl_context *cxl_context_alloc(void) in cxl_context_alloc()
33 return kzalloc(sizeof(struct cxl_context), GFP_KERNEL); in cxl_context_alloc()
39 int cxl_context_init(struct cxl_context *ctx, struct cxl_afu *afu, bool master) in cxl_context_init()
122 void cxl_context_set_mapping(struct cxl_context *ctx, in cxl_context_set_mapping()
133 struct cxl_context *ctx = vma->vm_file->private_data; in cxl_mmap_fault()
186 int cxl_context_iomap(struct cxl_context *ctx, struct vm_area_struct *vma) in cxl_context_iomap()
238 int __detach_context(struct cxl_context *ctx) in __detach_context()
286 void cxl_context_detach(struct cxl_context *ctx) in cxl_context_detach()
303 struct cxl_context *ctx; in cxl_context_detach_all()
330 struct cxl_context *ctx = container_of(rcu, struct cxl_context, rcu); in reclaim_ctx()
[all …]
Dfault.c36 static struct cxl_sste *find_free_sste(struct cxl_context *ctx, in find_free_sste()
67 static void cxl_load_segment(struct cxl_context *ctx, struct copro_slb *slb) in cxl_load_segment()
88 static int cxl_fault_segment(struct cxl_context *ctx, struct mm_struct *mm, in cxl_fault_segment()
101 static void cxl_ack_ae(struct cxl_context *ctx) in cxl_ack_ae()
116 static int cxl_handle_segment_miss(struct cxl_context *ctx, in cxl_handle_segment_miss()
184 static void cxl_handle_page_fault(struct cxl_context *ctx, in cxl_handle_page_fault()
202 static struct mm_struct *get_mem_context(struct cxl_context *ctx) in get_mem_context()
213 static bool cxl_is_segment_miss(struct cxl_context *ctx, u64 dsisr) in cxl_is_segment_miss()
221 static bool cxl_is_page_fault(struct cxl_context *ctx, u64 dsisr) in cxl_is_page_fault()
234 struct cxl_context *ctx = in cxl_handle_fault()
[all …]
Dirq.c29 static irqreturn_t schedule_cxl_fault(struct cxl_context *ctx, u64 dsisr, u64 dar) in schedule_cxl_fault()
37 irqreturn_t cxl_irq_psl9(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl9()
88 irqreturn_t cxl_irq_psl8(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl8()
176 struct cxl_context *ctx = data; in cxl_irq_afu()
284 void afu_irq_name_free(struct cxl_context *ctx) in afu_irq_name_free()
295 int afu_allocate_irqs(struct cxl_context *ctx, u32 count) in afu_allocate_irqs()
360 static void afu_register_hwirqs(struct cxl_context *ctx) in afu_register_hwirqs()
393 int afu_register_irqs(struct cxl_context *ctx, u32 count) in afu_register_irqs()
405 void afu_release_irqs(struct cxl_context *ctx, void *cookie) in afu_release_irqs()
Dfile.c51 struct cxl_context *ctx; in __afu_open()
123 struct cxl_context *ctx = file->private_data; in afu_release()
151 static long afu_ioctl_start_work(struct cxl_context *ctx, in afu_ioctl_start_work()
284 static long afu_ioctl_process_element(struct cxl_context *ctx, in afu_ioctl_process_element()
295 static long afu_ioctl_get_afu_id(struct cxl_context *ctx, in afu_ioctl_get_afu_id()
316 struct cxl_context *ctx = file->private_data; in afu_ioctl()
345 struct cxl_context *ctx = file->private_data; in afu_mmap()
357 static inline bool ctx_event_pending(struct cxl_context *ctx) in ctx_event_pending()
370 struct cxl_context *ctx = file->private_data; in afu_poll()
393 static ssize_t afu_driver_event_copy(struct cxl_context *ctx, in afu_driver_event_copy()
[all …]
Dtrace.h68 TP_PROTO(struct cxl_context *ctx),
93 TP_PROTO(struct cxl_context *ctx, u64 wed, s16 num_interrupts, u64 amr),
129 TP_PROTO(struct cxl_context *ctx),
134 TP_PROTO(struct cxl_context *ctx, int afu_irq, int virq, irq_hw_number_t hwirq),
167 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
201 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
234 TP_PROTO(struct cxl_context *ctx, u64 tfc),
261 TP_PROTO(struct cxl_context *ctx, u64 dar),
288 TP_PROTO(struct cxl_context *ctx, unsigned int idx, u64 e, u64 v),
321 TP_PROTO(struct cxl_context *ctx, u64 dsisr, u64 dar),
[all …]
Dnative.c412 static void slb_invalid(struct cxl_context *ctx) in slb_invalid()
434 static int do_process_element_cmd(struct cxl_context *ctx, in do_process_element_cmd()
485 static int add_process_element(struct cxl_context *ctx) in add_process_element()
498 static int terminate_process_element(struct cxl_context *ctx) in terminate_process_element()
521 static int remove_process_element(struct cxl_context *ctx) in remove_process_element()
544 void cxl_assign_psn_space(struct cxl_context *ctx) in cxl_assign_psn_space()
631 static u64 calculate_sr(struct cxl_context *ctx) in calculate_sr()
637 static void update_ivtes_directed(struct cxl_context *ctx) in update_ivtes_directed()
666 static int process_element_entry_psl9(struct cxl_context *ctx, u64 wed, u64 amr) in process_element_entry_psl9()
721 int cxl_attach_afu_directed_psl9(struct cxl_context *ctx, u64 wed, u64 amr) in cxl_attach_afu_directed_psl9()
[all …]
Dguest.c59 static irqreturn_t guest_handle_psl_slice_error(struct cxl_context *ctx, u64 dsisr, in guest_handle_psl_slice_error()
154 static int guest_get_irq_info(struct cxl_context *ctx, struct cxl_irq_info *info) in guest_get_irq_info()
161 struct cxl_context *ctx = data; in guest_psl_irq()
375 static int guest_ack_irq(struct cxl_context *ctx, u64 tfc, u64 psl_reset_mask) in guest_ack_irq()
381 static void disable_afu_irqs(struct cxl_context *ctx) in disable_afu_irqs()
397 static void enable_afu_irqs(struct cxl_context *ctx) in enable_afu_irqs()
517 static int attach_afu_directed(struct cxl_context *ctx, u64 wed, u64 amr) in attach_afu_directed()
622 static int guest_attach_process(struct cxl_context *ctx, bool kernel, u64 wed, u64 amr) in guest_attach_process()
635 static int detach_afu_directed(struct cxl_context *ctx) in detach_afu_directed()
644 static int guest_detach_process(struct cxl_context *ctx) in guest_detach_process()
Dmain.c60 static inline void _cxl_slbia(struct cxl_context *ctx, struct mm_struct *mm) in _cxl_slbia()
82 struct cxl_context *ctx; in cxl_slbia_core()
110 int cxl_alloc_sst(struct cxl_context *ctx) in cxl_alloc_sst()
Dvphb.c47 struct cxl_context *ctx; in cxl_pci_enable_device_hook()
74 struct cxl_context *ctx = cxl_get_context(dev); in cxl_pci_disable_device()
Dpci.c1969 struct cxl_context *ctx; in cxl_pci_slot_reset()
/Linux-v4.19/arch/powerpc/include/asm/
Ddevice.h49 struct cxl_context *cxl_ctx;