forked from microsoft/WSL2-Linux-Kernel
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
cxl: Add documentation for userspace APIs
This documentation gives an overview of the hardware architecture, userspace APIs via /dev/cxl/afuM.N and the syfs files. It also adds a MAINTAINERS file entry for cxl. Signed-off-by: Ian Munsie <imunsie@au1.ibm.com> Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
- Loading branch information
Showing
6 changed files
with
527 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,129 @@ | ||
Slave contexts (eg. /sys/class/cxl/afu0.0s): | ||
|
||
What: /sys/class/cxl/<afu>/irqs_max | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read/write | ||
Decimal value of maximum number of interrupts that can be | ||
requested by userspace. The default on probe is the maximum | ||
that hardware can support (eg. 2037). Write values will limit | ||
userspace applications to that many userspace interrupts. Must | ||
be >= irqs_min. | ||
|
||
What: /sys/class/cxl/<afu>/irqs_min | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the minimum number of interrupts that | ||
userspace must request on a CXL_START_WORK ioctl. Userspace may | ||
omit the num_interrupts field in the START_WORK IOCTL to get | ||
this minimum automatically. | ||
|
||
What: /sys/class/cxl/<afu>/mmio_size | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the size of the MMIO space that may be mmaped | ||
by userspace. | ||
|
||
What: /sys/class/cxl/<afu>/modes_supported | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
List of the modes this AFU supports. One per line. | ||
Valid entries are: "dedicated_process" and "afu_directed" | ||
|
||
What: /sys/class/cxl/<afu>/mode | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read/write | ||
The current mode the AFU is using. Will be one of the modes | ||
given in modes_supported. Writing will change the mode | ||
provided that no user contexts are attached. | ||
|
||
|
||
What: /sys/class/cxl/<afu>/prefault_mode | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read/write | ||
Set the mode for prefaulting in segments into the segment table | ||
when performing the START_WORK ioctl. Possible values: | ||
none: No prefaulting (default) | ||
work_element_descriptor: Treat the work element | ||
descriptor as an effective address and | ||
prefault what it points to. | ||
all: all segments process calling START_WORK maps. | ||
|
||
What: /sys/class/cxl/<afu>/reset | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: write only | ||
Writing 1 here will reset the AFU provided there are not | ||
contexts active on the AFU. | ||
|
||
What: /sys/class/cxl/<afu>/api_version | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the current version of the kernel/user API. | ||
|
||
What: /sys/class/cxl/<afu>/api_version_com | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the the lowest version of the userspace API | ||
this this kernel supports. | ||
|
||
|
||
|
||
Master contexts (eg. /sys/class/cxl/afu0.0m) | ||
|
||
What: /sys/class/cxl/<afu>m/mmio_size | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the size of the MMIO space that may be mmaped | ||
by userspace. This includes all slave contexts space also. | ||
|
||
What: /sys/class/cxl/<afu>m/pp_mmio_len | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the Per Process MMIO space length. | ||
|
||
What: /sys/class/cxl/<afu>m/pp_mmio_off | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Decimal value of the Per Process MMIO space offset. | ||
|
||
|
||
Card info (eg. /sys/class/cxl/card0) | ||
|
||
What: /sys/class/cxl/<card>/caia_version | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Identifies the CAIA Version the card implements. | ||
|
||
What: /sys/class/cxl/<card>/psl_version | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Identifies the revision level of the PSL. | ||
|
||
What: /sys/class/cxl/<card>/base_image | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Identifies the revision level of the base image for devices | ||
that support loadable PSLs. For FPGAs this field identifies | ||
the image contained in the on-adapter flash which is loaded | ||
during the initial program load. | ||
|
||
What: /sys/class/cxl/<card>/image_loaded | ||
Date: September 2014 | ||
Contact: linuxppc-dev@lists.ozlabs.org | ||
Description: read only | ||
Will return "user" or "factory" depending on the image loaded | ||
onto the card. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.