Home
last modified time | relevance | path

Searched refs:cxl (Results 1 – 25 of 82) sorted by relevance

1234

/openbmc/qemu/docs/system/devices/
H A Dcxl.rst139 by creating an upstream port (cxl-upstream) and a number of
140 downstream ports on the internal switch bus (cxl-downstream).
305 qemu-system-x86_64 -M q35,cxl=on -m 4G,maxmem=8G,slots=8 -smp 4 \
307 -object memory-backend-file,id=cxl-mem1,share=on,mem-path=/tmp/cxltest.raw,size=256M \
308 -object memory-backend-file,id=cxl-lsa1,share=on,mem-path=/tmp/lsa.raw,size=256M \
309 -device pxb-cxl,bus_nr=12,bus=pcie.0,id=cxl.1 \
310 -device cxl-rp,port=0,bus=cxl.1,id=root_port13,chassis=0,slot=2 \
311 -device cxl-type3,bus=root_port13,persistent-memdev=cxl-mem1,lsa=cxl-lsa1,id=cxl-pmem0 \
312 -M cxl-fmw.0.targets.0=cxl.1,cxl-fmw.0.size=4G
316 qemu-system-x86_64 -M q35,cxl=on -m 4G,maxmem=8G,slots=8 -smp 4 \
[all …]
/openbmc/linux/drivers/misc/cxl/
H A Dcxl.h443 #define to_cxl_adapter(d) container_of(d, struct cxl, dev)
488 struct cxl *adapter;
628 int (*adapter_regs_init)(struct cxl *adapter, struct pci_dev *dev);
629 int (*invalidate_all)(struct cxl *adapter);
640 void (*debugfs_add_adapter_regs)(struct cxl *adapter, struct dentry *dir);
643 void (*err_irq_dump_registers)(struct cxl *adapter);
644 void (*debugfs_stop_trace)(struct cxl *adapter);
645 void (*write_timebase_ctrl)(struct cxl *adapter);
646 u64 (*timebase_read)(struct cxl *adapter);
678 struct cxl { struct
[all …]
H A DMakefile5 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
H A Dmain.c78 struct cxl *adapter; in cxl_slbia_core()
184 struct cxl *get_cxl_adapter(int num) in get_cxl_adapter()
186 struct cxl *adapter; in get_cxl_adapter()
196 static int cxl_alloc_adapter_nr(struct cxl *adapter) in cxl_alloc_adapter_nr()
213 void cxl_remove_adapter_nr(struct cxl *adapter) in cxl_remove_adapter_nr()
218 struct cxl *cxl_alloc_adapter(void) in cxl_alloc_adapter()
220 struct cxl *adapter; in cxl_alloc_adapter()
222 if (!(adapter = kzalloc(sizeof(struct cxl), GFP_KERNEL))) in cxl_alloc_adapter()
244 struct cxl_afu *cxl_alloc_afu(struct cxl *adapter, int slice) in cxl_alloc_afu()
278 int cxl_adapter_context_get(struct cxl *adapter) in cxl_adapter_context_get()
[all …]
H A Dpci.c474 static int init_implementation_adapter_regs_psl9(struct cxl *adapter, in init_implementation_adapter_regs_psl9()
542 static int init_implementation_adapter_regs_psl8(struct cxl *adapter, struct pci_dev *dev) in init_implementation_adapter_regs_psl8()
581 static void write_timebase_ctrl_psl8(struct cxl *adapter) in write_timebase_ctrl_psl8()
587 static u64 timebase_read_psl9(struct cxl *adapter) in timebase_read_psl9()
592 static u64 timebase_read_psl8(struct cxl *adapter) in timebase_read_psl8()
597 static void cxl_setup_psl_timebase(struct cxl *adapter, struct pci_dev *dev) in cxl_setup_psl_timebase()
647 int cxl_pci_setup_irq(struct cxl *adapter, unsigned int hwirq, in cxl_pci_setup_irq()
655 int cxl_update_image_control(struct cxl *adapter) in cxl_update_image_control()
690 int cxl_pci_alloc_one_irq(struct cxl *adapter) in cxl_pci_alloc_one_irq()
697 void cxl_pci_release_one_irq(struct cxl *adapter, int hwirq) in cxl_pci_release_one_irq()
[all …]
H A Dflash.c174 static int update_devicetree(struct cxl *adapter, s32 scope) in update_devicetree()
228 static int handle_image(struct cxl *adapter, int operation, in handle_image()
323 static int transfer_image(struct cxl *adapter, int operation, in transfer_image()
372 static long ioctl_transfer_image(struct cxl *adapter, int operation, in ioctl_transfer_image()
395 struct cxl *adapter; in device_open()
461 struct cxl *adapter = file->private_data; in device_ioctl()
479 struct cxl *adapter = file->private_data; in device_close()
516 void cxl_guest_remove_chardev(struct cxl *adapter) in cxl_guest_remove_chardev()
521 int cxl_guest_add_chardev(struct cxl *adapter) in cxl_guest_add_chardev()
H A Dguest.c70 static ssize_t guest_collect_vpd(struct cxl *adapter, struct cxl_afu *afu, in guest_collect_vpd()
223 static int irq_alloc_range(struct cxl *adapter, int len, int *irq) in irq_alloc_range()
244 static int irq_free_range(struct cxl *adapter, int irq, int len) in irq_free_range()
266 static int guest_reset(struct cxl *adapter) in guest_reset()
293 static int guest_alloc_one_irq(struct cxl *adapter) in guest_alloc_one_irq()
304 static void guest_release_one_irq(struct cxl *adapter, int irq) in guest_release_one_irq()
312 struct cxl *adapter, unsigned int num) in guest_alloc_irq_ranges()
345 struct cxl *adapter) in guest_release_irq_ranges()
524 struct cxl *adapter = ctx->afu->adapter; in attach_afu_directed()
896 static bool guest_link_ok(struct cxl *cxl, struct cxl_afu *afu) in guest_link_ok() argument
[all …]
H A Dsysfs.c21 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 …]
H A Ddebugfs.c36 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()
/openbmc/linux/drivers/nvdimm/
H A Dnd.h33 bool cxl; member
42 if (ndd->cxl) in nsl_ref_name()
43 return nd_label->cxl.name; in nsl_ref_name()
50 if (ndd->cxl) in nsl_get_name()
51 return memcpy(name, nd_label->cxl.name, NSLABEL_NAME_LEN); in nsl_get_name()
60 if (ndd->cxl) in nsl_set_name()
61 return memcpy(nd_label->cxl.name, name, NSLABEL_NAME_LEN); in nsl_set_name()
68 if (ndd->cxl) in nsl_get_slot()
69 return __le32_to_cpu(nd_label->cxl.slot); in nsl_get_slot()
76 if (ndd->cxl) in nsl_set_slot()
[all …]
/openbmc/linux/Documentation/ABI/testing/
H A Dsysfs-bus-cxl1 What: /sys/bus/cxl/flush
4 Contact: linux-cxl@vger.kernel.org
11 What: /sys/bus/cxl/devices/memX/firmware_version
14 Contact: linux-cxl@vger.kernel.org
21 What: /sys/bus/cxl/devices/memX/ram/size
24 Contact: linux-cxl@vger.kernel.org
31 What: /sys/bus/cxl/devices/memX/pmem/size
34 Contact: linux-cxl@vger.kernel.org
41 What: /sys/bus/cxl/devices/memX/serial
44 Contact: linux-cxl@vger.kernel.org
[all …]
H A Dsysfs-class-cxl3 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 …]
H A Ddebugfs-cxl1 What: /sys/kernel/debug/cxl/memX/inject_poison
4 Contact: linux-cxl@vger.kernel.org
25 Contact: linux-cxl@vger.kernel.org
/openbmc/qemu/hw/cxl/
H A Dmeson.build3 'cxl-component-utils.c',
4 'cxl-device-utils.c',
5 'cxl-mailbox-utils.c',
6 'cxl-host.c',
7 'cxl-cdat.c',
8 'cxl-events.c',
12 'cxl-host-stubs.c',
H A Dcxl-component-utils.c372 void cxl_component_create_dvsec(CXLComponentState *cxl, in cxl_component_create_dvsec() argument
376 PCIDevice *pdev = cxl->pdev; in cxl_component_create_dvsec()
377 uint16_t offset = cxl->dvsec_offset; in cxl_component_create_dvsec()
480 range_init_nofail(&cxl->dvsecs[type], cxl->dvsec_offset, length); in cxl_component_create_dvsec()
481 cxl->dvsec_offset += length; in cxl_component_create_dvsec()
/openbmc/linux/Documentation/driver-api/cxl/
H A Dmemory-devices.rst43 # cxl list -BEMPu -b cxl_test
203 # cxl list -BDMu -d root -m mem3
261 # cxl list -MDu -d 3.2
322 .. kernel-doc:: drivers/cxl/pci.c
323 :doc: cxl pci
325 .. kernel-doc:: drivers/cxl/pci.c
328 .. kernel-doc:: drivers/cxl/mem.c
329 :doc: cxl mem
333 .. kernel-doc:: drivers/cxl/port.c
334 :doc: cxl port
[all …]
/openbmc/linux/include/linux/can/
H A Dskb.h34 struct canxl_frame **cxl,
122 const struct canxl_frame *cxl = (struct canxl_frame *)skb->data; in can_is_canxl_skb() local
128 if (skb->len != CANXL_HDR_SIZE + cxl->len) in can_is_canxl_skb()
131 return cxl->flags & CANXL_XLF; in can_is_canxl_skb()
137 const struct canxl_frame *cxl = (struct canxl_frame *)skb->data; in can_skb_get_len_val() local
141 return cxl->len; in can_skb_get_len_val()
/openbmc/linux/tools/testing/cxl/test/
H A DKbuild2 ccflags-y := -I$(srctree)/drivers/cxl/ -I$(srctree)/drivers/cxl/core
8 cxl_test-y := cxl.o
/openbmc/linux/include/misc/
H A Dcxl.h97 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);
/openbmc/qemu/qapi/
H A Dcxl.json32 # @cxl-inject-general-media-event:
75 { 'command': 'cxl-inject-general-media-event',
83 # @cxl-inject-dram-event:
134 { 'command': 'cxl-inject-dram-event',
144 # @cxl-inject-memory-module-event:
186 { 'command': 'cxl-inject-memory-module-event',
197 # @cxl-inject-poison:
214 { 'command': 'cxl-inject-poison',
257 # @cxl-ide-tx: Integrity and data encryption tx error.
259 # @cxl-ide-rx: Integrity and data encryption rx error.
[all …]
/openbmc/linux/tools/testing/cxl/
H A DKbuild18 CXL_SRC := $(DRIVERS)/cxl
19 CXL_CORE_SRC := $(DRIVERS)/cxl/core
20 ccflags-y := -I$(srctree)/drivers/cxl/
22 ccflags-y += -DTRACE_INCLUDE_PATH=$(CXL_CORE_SRC) -I$(srctree)/drivers/cxl/core/
/openbmc/qemu/hw/pci-bridge/
H A Dcxl_downstream.c97 static void build_dvsecs(CXLComponentState *cxl) in build_dvsecs() argument
102 cxl_component_create_dvsec(cxl, CXL2_DOWNSTREAM_PORT, in build_dvsecs()
113 cxl_component_create_dvsec(cxl, CXL2_DOWNSTREAM_PORT, in build_dvsecs()
123 cxl_component_create_dvsec(cxl, CXL2_DOWNSTREAM_PORT, in build_dvsecs()
132 cxl_component_create_dvsec(cxl, CXL2_DOWNSTREAM_PORT, in build_dvsecs()
H A Dpci_expander_bridge.c194 CXLHost *cxl = PXB_CXL_HOST(dev); in pxb_cxl_realize() local
195 CXLComponentState *cxl_cstate = &cxl->cxl_cstate; in pxb_cxl_realize()
212 CXLHost *cxl = pxb->cxl_host_bridge; in pxb_cxl_hook_up_registers() local
213 CXLComponentState *cxl_cstate = &cxl->cxl_cstate; in pxb_cxl_hook_up_registers()
298 CXLHost *cxl = PXB_CXL_DEV(dev)->cxl_host_bridge; in pxb_cxl_dev_reset() local
299 CXLComponentState *cxl_cstate = &cxl->cxl_cstate; in pxb_cxl_dev_reset()
300 PCIHostState *hb = PCI_HOST_BRIDGE(cxl); in pxb_cxl_dev_reset()
315 cxl->passthrough = true; in pxb_cxl_dev_reset()
H A Dcxl_root_port.c107 static void build_dvsecs(CXLComponentState *cxl) in build_dvsecs() argument
112 cxl_component_create_dvsec(cxl, CXL2_ROOT_PORT, in build_dvsecs()
122 cxl_component_create_dvsec(cxl, CXL2_ROOT_PORT, in build_dvsecs()
132 cxl_component_create_dvsec(cxl, CXL2_ROOT_PORT, in build_dvsecs()
142 cxl_component_create_dvsec(cxl, CXL2_ROOT_PORT, in build_dvsecs()
/openbmc/linux/drivers/net/can/dev/
H A Dskb.c257 struct canxl_frame **cxl, in alloc_canxl_skb() argument
274 *cxl = skb_put_zero(skb, CANXL_HDR_SIZE + data_len); in alloc_canxl_skb()
277 (*cxl)->flags = CANXL_XLF; in alloc_canxl_skb()
278 (*cxl)->len = data_len; in alloc_canxl_skb()
283 *cxl = NULL; in alloc_canxl_skb()

1234