/Linux-v4.19/include/misc/ |
D | cxl.h | 77 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/ |
D | api.c | 59 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 …]
|
D | cxl.h | 542 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 …]
|
D | context.c | 31 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 …]
|
D | fault.c | 36 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 …]
|
D | irq.c | 29 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()
|
D | file.c | 51 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 …]
|
D | trace.h | 68 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 …]
|
D | native.c | 412 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 …]
|
D | guest.c | 59 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()
|
D | main.c | 60 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()
|
D | vphb.c | 47 struct cxl_context *ctx; in cxl_pci_enable_device_hook() 74 struct cxl_context *ctx = cxl_get_context(dev); in cxl_pci_disable_device()
|
D | pci.c | 1969 struct cxl_context *ctx; in cxl_pci_slot_reset()
|
/Linux-v4.19/arch/powerpc/include/asm/ |
D | device.h | 49 struct cxl_context *cxl_ctx;
|