/kernel/linux/linux-5.10/drivers/misc/cxl/ |
D | cxl.h | 441 #define to_cxl_adapter(d) container_of(d, struct cxl, dev) 486 struct cxl *adapter; 626 int (*adapter_regs_init)(struct cxl *adapter, struct pci_dev *dev); 627 int (*invalidate_all)(struct cxl *adapter); 638 void (*debugfs_add_adapter_regs)(struct cxl *adapter, struct dentry *dir); 641 void (*err_irq_dump_registers)(struct cxl *adapter); 642 void (*debugfs_stop_trace)(struct cxl *adapter); 643 void (*write_timebase_ctrl)(struct cxl *adapter); 644 u64 (*timebase_read)(struct cxl *adapter); 676 struct cxl { struct [all …]
|
D | Makefile | 5 cxl-y += main.o file.o irq.o fault.o native.o 6 cxl-y += context.o sysfs.o pci.o trace.o 7 cxl-y += vphb.o api.o cxllib.o 8 cxl-$(CONFIG_PPC_PSERIES) += flash.o guest.o of.o hcalls.o 9 cxl-$(CONFIG_DEBUG_FS) += debugfs.o 10 obj-$(CONFIG_CXL) += cxl.o
|
D | main.c | 77 struct cxl *adapter; in cxl_slbia_core() 183 struct cxl *get_cxl_adapter(int num) in get_cxl_adapter() 185 struct cxl *adapter; in get_cxl_adapter() 195 static int cxl_alloc_adapter_nr(struct cxl *adapter) in cxl_alloc_adapter_nr() 212 void cxl_remove_adapter_nr(struct cxl *adapter) in cxl_remove_adapter_nr() 217 struct cxl *cxl_alloc_adapter(void) in cxl_alloc_adapter() 219 struct cxl *adapter; in cxl_alloc_adapter() 221 if (!(adapter = kzalloc(sizeof(struct cxl), GFP_KERNEL))) in cxl_alloc_adapter() 243 struct cxl_afu *cxl_alloc_afu(struct cxl *adapter, int slice) in cxl_alloc_afu() 277 int cxl_adapter_context_get(struct cxl *adapter) in cxl_adapter_context_get() [all …]
|
D | pci.c | 482 static int init_implementation_adapter_regs_psl9(struct cxl *adapter, in init_implementation_adapter_regs_psl9() 550 static int init_implementation_adapter_regs_psl8(struct cxl *adapter, struct pci_dev *dev) in init_implementation_adapter_regs_psl8() 589 static void write_timebase_ctrl_psl8(struct cxl *adapter) in write_timebase_ctrl_psl8() 595 static u64 timebase_read_psl9(struct cxl *adapter) in timebase_read_psl9() 600 static u64 timebase_read_psl8(struct cxl *adapter) in timebase_read_psl8() 605 static void cxl_setup_psl_timebase(struct cxl *adapter, struct pci_dev *dev) in cxl_setup_psl_timebase() 655 int cxl_pci_setup_irq(struct cxl *adapter, unsigned int hwirq, in cxl_pci_setup_irq() 663 int cxl_update_image_control(struct cxl *adapter) in cxl_update_image_control() 698 int cxl_pci_alloc_one_irq(struct cxl *adapter) in cxl_pci_alloc_one_irq() 705 void cxl_pci_release_one_irq(struct cxl *adapter, int hwirq) in cxl_pci_release_one_irq() [all …]
|
D | flash.c | 173 static int update_devicetree(struct cxl *adapter, s32 scope) in update_devicetree() 227 static int handle_image(struct cxl *adapter, int operation, in handle_image() 322 static int transfer_image(struct cxl *adapter, int operation, in transfer_image() 371 static long ioctl_transfer_image(struct cxl *adapter, int operation, in ioctl_transfer_image() 394 struct cxl *adapter; in device_open() 460 struct cxl *adapter = file->private_data; in device_ioctl() 478 struct cxl *adapter = file->private_data; in device_close() 515 void cxl_guest_remove_chardev(struct cxl *adapter) in cxl_guest_remove_chardev() 520 int cxl_guest_add_chardev(struct cxl *adapter) in cxl_guest_add_chardev()
|
D | guest.c | 64 static ssize_t guest_collect_vpd(struct cxl *adapter, struct cxl_afu *afu, in guest_collect_vpd() 217 static int irq_alloc_range(struct cxl *adapter, int len, int *irq) in irq_alloc_range() 238 static int irq_free_range(struct cxl *adapter, int irq, int len) in irq_free_range() 260 static int guest_reset(struct cxl *adapter) in guest_reset() 287 static int guest_alloc_one_irq(struct cxl *adapter) in guest_alloc_one_irq() 298 static void guest_release_one_irq(struct cxl *adapter, int irq) in guest_release_one_irq() 306 struct cxl *adapter, unsigned int num) in guest_alloc_irq_ranges() 339 struct cxl *adapter) in guest_release_irq_ranges() 518 struct cxl *adapter = ctx->afu->adapter; in attach_afu_directed() 890 static bool guest_link_ok(struct cxl *cxl, struct cxl_afu *afu) in guest_link_ok() argument [all …]
|
D | sysfs.c | 21 struct cxl *adapter = to_cxl_adapter(device); in caia_version_show() 31 struct cxl *adapter = to_cxl_adapter(device); in psl_revision_show() 40 struct cxl *adapter = to_cxl_adapter(device); in base_image_show() 49 struct cxl *adapter = to_cxl_adapter(device); in image_loaded_show() 60 struct cxl *adapter = to_cxl_adapter(device); in psl_timebase_synced_show() 81 struct cxl *adapter = to_cxl_adapter(device); in tunneled_ops_supported_show() 90 struct cxl *adapter = to_cxl_adapter(device); in reset_adapter_store() 126 struct cxl *adapter = to_cxl_adapter(device); in load_image_on_perst_show() 140 struct cxl *adapter = to_cxl_adapter(device); in load_image_on_perst_store() 164 struct cxl *adapter = to_cxl_adapter(device); in perst_reloads_same_image_show() [all …]
|
D | debugfs.c | 36 void cxl_debugfs_add_adapter_regs_psl9(struct cxl *adapter, struct dentry *dir) in cxl_debugfs_add_adapter_regs_psl9() 49 void cxl_debugfs_add_adapter_regs_psl8(struct cxl *adapter, struct dentry *dir) in cxl_debugfs_add_adapter_regs_psl8() 57 void cxl_debugfs_adapter_add(struct cxl *adapter) in cxl_debugfs_adapter_add() 75 void cxl_debugfs_adapter_remove(struct cxl *adapter) in cxl_debugfs_adapter_remove()
|
D | of.c | 111 static int read_vpd(struct cxl *adapter, struct cxl_afu *afu) in read_vpd() 283 static int read_adapter_irq_config(struct cxl *adapter, struct device_node *np) in read_adapter_irq_config() 336 int cxl_of_read_adapter_handle(struct cxl *adapter, struct device_node *np) in cxl_of_read_adapter_handle() 345 int cxl_of_read_adapter_properties(struct cxl *adapter, struct device_node *np) in cxl_of_read_adapter_properties() 437 struct cxl *adapter; in cxl_of_remove() 457 struct cxl *adapter = NULL; in cxl_of_probe()
|
D | Kconfig | 20 userspace programs to access these accelerators via /dev/cxl/afuM.N
|
D | native.c | 289 int cxl_invalidate_all_psl9(struct cxl *adapter) in cxl_invalidate_all_psl9() 315 int cxl_invalidate_all_psl8(struct cxl *adapter) in cxl_invalidate_all_psl8() 347 int cxl_data_cache_flush(struct cxl *adapter) in cxl_data_cache_flush() 410 struct cxl *adapter = ctx->afu->adapter; in slb_invalid() 1283 void cxl_native_err_irq_dump_regs_psl9(struct cxl *adapter) in cxl_native_err_irq_dump_regs_psl9() 1291 void cxl_native_err_irq_dump_regs_psl8(struct cxl *adapter) in cxl_native_err_irq_dump_regs_psl8() 1304 struct cxl *adapter = data; in native_irq_err() 1323 int cxl_native_register_psl_err_irq(struct cxl *adapter) in cxl_native_register_psl_err_irq() 1346 void cxl_native_release_psl_err_irq(struct cxl *adapter) in cxl_native_release_psl_err_irq()
|
D | irq.c | 223 unsigned int cxl_map_irq(struct cxl *adapter, irq_hw_number_t hwirq, in cxl_map_irq() 255 int cxl_register_one_irq(struct cxl *adapter, in cxl_register_one_irq()
|
D | file.c | 45 struct cxl *adapter; in __afu_open() 640 int cxl_register_adapter(struct cxl *adapter) in cxl_register_adapter()
|
D | trace.h | 7 #define TRACE_SYSTEM cxl
|
/kernel/linux/linux-5.10/Documentation/ABI/testing/ |
D | sysfs-class-cxl | 3 For example, the real path of the attribute /sys/class/cxl/afu0.0s/irqs_max is 4 /sys/class/cxl/afu0.0s/device/irqs_max, i.e. /sys/class/cxl/afu0.0/irqs_max. 7 Slave contexts (eg. /sys/class/cxl/afu0.0s): 9 What: /sys/class/cxl/<afu>/afu_err_buf 20 What: /sys/class/cxl/<afu>/irqs_max 31 What: /sys/class/cxl/<afu>/irqs_min 41 What: /sys/class/cxl/<afu>/mmio_size 49 What: /sys/class/cxl/<afu>/modes_supported 57 What: /sys/class/cxl/<afu>/mode 67 What: /sys/class/cxl/<afu>/prefault_mode [all …]
|
/kernel/linux/linux-5.10/include/misc/ |
D | cxl.h | 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);
|
/kernel/linux/linux-5.10/Documentation/powerpc/ |
D | cxl.rst | 139 files will be created. /dev/cxl/afu0.0m will correspond to a 140 master context and /dev/cxl/afu0.0s will correspond to a slave 147 /dev/cxl/afu0.0d. This will have access to the entire MMIO space 150 The types described below are defined in include/uapi/misc/cxl.h 454 A cxl sysfs class is added under /sys/class/cxl to facilitate 456 described in Documentation/ABI/testing/sysfs-class-cxl 467 SUBSYSTEM=="cxl", ATTRS{mode}=="dedicated_process", SYMLINK="cxl/%b" 468 SUBSYSTEM=="cxl", ATTRS{mode}=="afu_directed", \ 469 KERNEL=="afu[0-9]*.[0-9]*s", SYMLINK="cxl/%b"
|
D | index.rst | 14 cxl
|
D | cxlflash.rst | 35 as described in Documentation/powerpc/cxl.rst.
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/ |
D | Makefile | 15 obj-$(CONFIG_CXL_BASE) += pci-cxl.o
|
/kernel/linux/linux-5.10/drivers/misc/ |
D | Makefile | 51 obj-$(CONFIG_CXL_BASE) += cxl/
|
D | Kconfig | 479 source "drivers/misc/cxl/Kconfig"
|
/kernel/linux/linux-5.10/Documentation/userspace-api/accelerators/ |
D | ocxl.rst | 15 evolution of 'cxl' (the driver for the IBM CAPI interface for
|
/kernel/linux/linux-5.10/Documentation/userspace-api/ioctl/ |
D | ioctl-number.rst | 347 0xCA 00-0F uapi/misc/cxl.h
|
/kernel/linux/linux-5.10/ |
D | MAINTAINERS | 4790 F: Documentation/ABI/testing/sysfs-class-cxl 4791 F: Documentation/powerpc/cxl.rst 4792 F: arch/powerpc/platforms/powernv/pci-cxl.c 4793 F: drivers/misc/cxl/ 4794 F: include/misc/cxl* 4795 F: include/uapi/misc/cxl.h
|