1The cxl driver was removed in 6.15. 2 3Please note that attributes that are shared between devices are stored in 4the directory pointed to by the symlink device/. 5For example, the real path of the attribute /sys/class/cxl/afu0.0s/irqs_max is 6/sys/class/cxl/afu0.0s/device/irqs_max, i.e. /sys/class/cxl/afu0.0/irqs_max. 7 8 9Slave contexts (eg. /sys/class/cxl/afu0.0s): 10 11What: /sys/class/cxl/<afu>/afu_err_buf 12Date: September 2014, removed February 2025 13Contact: linuxppc-dev@lists.ozlabs.org 14Description: read only 15 AFU Error Buffer contents. The contents of this file are 16 application specific and depends on the AFU being used. 17 Applications interacting with the AFU can use this attribute 18 to know about the current error condition and take appropriate 19 action like logging the event etc. 20 21 22What: /sys/class/cxl/<afu>/irqs_max 23Date: September 2014, removed February 2025 24Contact: linuxppc-dev@lists.ozlabs.org 25Description: read/write 26 Decimal value of maximum number of interrupts that can be 27 requested by userspace. The default on probe is the maximum 28 that hardware can support (eg. 2037). Write values will limit 29 userspace applications to that many userspace interrupts. Must 30 be >= irqs_min. 31Users: https://github.com/ibm-capi/libcxl 32 33What: /sys/class/cxl/<afu>/irqs_min 34Date: September 2014, removed February 2025 35Contact: linuxppc-dev@lists.ozlabs.org 36Description: read only 37 Decimal value of the minimum number of interrupts that 38 userspace must request on a CXL_START_WORK ioctl. Userspace may 39 omit the num_interrupts field in the START_WORK IOCTL to get 40 this minimum automatically. 41Users: https://github.com/ibm-capi/libcxl 42 43What: /sys/class/cxl/<afu>/mmio_size 44Date: September 2014, removed February 2025 45Contact: linuxppc-dev@lists.ozlabs.org 46Description: read only 47 Decimal value of the size of the MMIO space that may be mmapped 48 by userspace. 49Users: https://github.com/ibm-capi/libcxl 50 51What: /sys/class/cxl/<afu>/modes_supported 52Date: September 2014, removed February 2025 53Contact: linuxppc-dev@lists.ozlabs.org 54Description: read only 55 List of the modes this AFU supports. One per line. 56 Valid entries are: "dedicated_process" and "afu_directed" 57Users: https://github.com/ibm-capi/libcxl 58 59What: /sys/class/cxl/<afu>/mode 60Date: September 2014, removed February 2025 61Contact: linuxppc-dev@lists.ozlabs.org 62Description: read/write 63 The current mode the AFU is using. Will be one of the modes 64 given in modes_supported. Writing will change the mode 65 provided that no user contexts are attached. 66Users: https://github.com/ibm-capi/libcxl 67 68 69What: /sys/class/cxl/<afu>/prefault_mode 70Date: September 2014, removed February 2025 71Contact: linuxppc-dev@lists.ozlabs.org 72Description: read/write 73 Set the mode for prefaulting in segments into the segment table 74 when performing the START_WORK ioctl. Only applicable when 75 running under hashed page table mmu. 76 Possible values: 77 78 ======================= ====================================== 79 none No prefaulting (default) 80 work_element_descriptor Treat the work element 81 descriptor as an effective address and 82 prefault what it points to. 83 all all segments process calling 84 START_WORK maps. 85 ======================= ====================================== 86 87Users: https://github.com/ibm-capi/libcxl 88 89What: /sys/class/cxl/<afu>/reset 90Date: September 2014, removed February 2025 91Contact: linuxppc-dev@lists.ozlabs.org 92Description: write only 93 Writing 1 here will reset the AFU provided there are not 94 contexts active on the AFU. 95Users: https://github.com/ibm-capi/libcxl 96 97What: /sys/class/cxl/<afu>/api_version 98Date: September 2014, removed February 2025 99Contact: linuxppc-dev@lists.ozlabs.org 100Description: read only 101 Decimal value of the current version of the kernel/user API. 102Users: https://github.com/ibm-capi/libcxl 103 104What: /sys/class/cxl/<afu>/api_version_compatible 105Date: September 2014, removed February 2025 106Contact: linuxppc-dev@lists.ozlabs.org 107Description: read only 108 Decimal value of the lowest version of the userspace API 109 this kernel supports. 110Users: https://github.com/ibm-capi/libcxl 111 112 113AFU configuration records (eg. /sys/class/cxl/afu0.0/cr0): 114 115An AFU may optionally export one or more PCIe like configuration records, known 116as AFU configuration records, which will show up here (if present). 117 118What: /sys/class/cxl/<afu>/cr<config num>/vendor 119Date: February 2015, removed February 2025 120Contact: linuxppc-dev@lists.ozlabs.org 121Description: read only 122 Hexadecimal value of the vendor ID found in this AFU 123 configuration record. 124Users: https://github.com/ibm-capi/libcxl 125 126What: /sys/class/cxl/<afu>/cr<config num>/device 127Date: February 2015, removed February 2025 128Contact: linuxppc-dev@lists.ozlabs.org 129Description: read only 130 Hexadecimal value of the device ID found in this AFU 131 configuration record. 132Users: https://github.com/ibm-capi/libcxl 133 134What: /sys/class/cxl/<afu>/cr<config num>/class 135Date: February 2015, removed February 2025 136Contact: linuxppc-dev@lists.ozlabs.org 137Description: read only 138 Hexadecimal value of the class code found in this AFU 139 configuration record. 140Users: https://github.com/ibm-capi/libcxl 141 142What: /sys/class/cxl/<afu>/cr<config num>/config 143Date: February 2015, removed February 2025 144Contact: linuxppc-dev@lists.ozlabs.org 145Description: read only 146 This binary file provides raw access to the AFU configuration 147 record. The format is expected to match the either the standard 148 or extended configuration space defined by the PCIe 149 specification. 150Users: https://github.com/ibm-capi/libcxl 151 152 153 154Master contexts (eg. /sys/class/cxl/afu0.0m) 155 156What: /sys/class/cxl/<afu>m/mmio_size 157Date: September 2014, removed February 2025 158Contact: linuxppc-dev@lists.ozlabs.org 159Description: read only 160 Decimal value of the size of the MMIO space that may be mmapped 161 by userspace. This includes all slave contexts space also. 162Users: https://github.com/ibm-capi/libcxl 163 164What: /sys/class/cxl/<afu>m/pp_mmio_len 165Date: September 2014, removed February 2025 166Contact: linuxppc-dev@lists.ozlabs.org 167Description: read only 168 Decimal value of the Per Process MMIO space length. 169Users: https://github.com/ibm-capi/libcxl 170 171What: /sys/class/cxl/<afu>m/pp_mmio_off 172Date: September 2014, removed February 2025 173Contact: linuxppc-dev@lists.ozlabs.org 174Description: read only 175 (not in a guest) 176 Decimal value of the Per Process MMIO space offset. 177Users: https://github.com/ibm-capi/libcxl 178 179 180Card info (eg. /sys/class/cxl/card0) 181 182What: /sys/class/cxl/<card>/caia_version 183Date: September 2014, removed February 2025 184Contact: linuxppc-dev@lists.ozlabs.org 185Description: read only 186 Identifies the CAIA Version the card implements. 187Users: https://github.com/ibm-capi/libcxl 188 189What: /sys/class/cxl/<card>/psl_revision 190Date: September 2014, removed February 2025 191Contact: linuxppc-dev@lists.ozlabs.org 192Description: read only 193 Identifies the revision level of the PSL. 194Users: https://github.com/ibm-capi/libcxl 195 196What: /sys/class/cxl/<card>/base_image 197Date: September 2014, removed February 2025 198Contact: linuxppc-dev@lists.ozlabs.org 199Description: read only 200 (not in a guest) 201 Identifies the revision level of the base image for devices 202 that support loadable PSLs. For FPGAs this field identifies 203 the image contained in the on-adapter flash which is loaded 204 during the initial program load. 205Users: https://github.com/ibm-capi/libcxl 206 207What: /sys/class/cxl/<card>/image_loaded 208Date: September 2014, removed February 2025 209Contact: linuxppc-dev@lists.ozlabs.org 210Description: read only 211 (not in a guest) 212 Will return "user" or "factory" depending on the image loaded 213 onto the card. 214Users: https://github.com/ibm-capi/libcxl 215 216What: /sys/class/cxl/<card>/load_image_on_perst 217Date: December 2014, removed February 2025 218Contact: linuxppc-dev@lists.ozlabs.org 219Description: read/write 220 (not in a guest) 221 Valid entries are "none", "user", and "factory". 222 "none" means PERST will not cause image to be loaded to the 223 card. A power cycle is required to load the image. 224 "none" could be useful for debugging because the trace arrays 225 are preserved. 226 227 "user" and "factory" means PERST will cause either the user or 228 user or factory image to be loaded. 229 Default is to reload on PERST whichever image the card has 230 loaded. 231Users: https://github.com/ibm-capi/libcxl 232 233What: /sys/class/cxl/<card>/reset 234Date: October 2014, removed February 2025 235Contact: linuxppc-dev@lists.ozlabs.org 236Description: write only 237 Writing 1 will issue a PERST to card provided there are no 238 contexts active on any one of the card AFUs. This may cause 239 the card to reload the FPGA depending on load_image_on_perst. 240 Writing -1 will do a force PERST irrespective of any active 241 contexts on the card AFUs. 242Users: https://github.com/ibm-capi/libcxl 243 244What: /sys/class/cxl/<card>/perst_reloads_same_image 245Date: July 2015, removed February 2025 246Contact: linuxppc-dev@lists.ozlabs.org 247Description: read/write 248 (not in a guest) 249 Trust that when an image is reloaded via PERST, it will not 250 have changed. 251 252 == ================================================= 253 0 don't trust, the image may be different (default) 254 1 trust that the image will not change. 255 == ================================================= 256Users: https://github.com/ibm-capi/libcxl 257 258What: /sys/class/cxl/<card>/psl_timebase_synced 259Date: March 2016, removed February 2025 260Contact: linuxppc-dev@lists.ozlabs.org 261Description: read only 262 Returns 1 if the psl timebase register is synchronized 263 with the core timebase register, 0 otherwise. 264Users: https://github.com/ibm-capi/libcxl 265 266What: /sys/class/cxl/<card>/tunneled_ops_supported 267Date: May 2018, removed February 2025 268Contact: linuxppc-dev@lists.ozlabs.org 269Description: read only 270 Returns 1 if tunneled operations are supported in capi mode, 271 0 otherwise. 272Users: https://github.com/ibm-capi/libcxl 273