Jack-release/README.md

104 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2024-04-08 05:45:32 +00:00
# Overview
Jack is a CLI tool that implements the CXL 2.0 Fabric Management API
specification. It is intended to be used to configure and monitor CXL
compliant hardware devices such as switches, accelerators or memory controllers.
# Supported Operating System Versions
- Ubuntu 23.10
- Fedora 38, 39
> Note: Ubuntu 22.04 is not supported. This is due to some newer PCI features that
> are missing from the 5.15 Linux kernel that ships with Ubuntu 22.04.
# Building
1. Install OS libraries
Install the following build packages to compile the software on the following
operating systems.
**Ubuntu:**
```bash
apt install build-essential libglib2.0-dev libyaml-dev libpci-dev
```
**Fedora:**
```bash
```
2. Build Dependencies
To clone and build dependencies run:
```bash
./builddeps.bash
```
3. Build
After building the required dependencies run:
```bash
make
```
# Usage
Jack connects to a target device using MCTP over TCP. When using Jack with an
endpoint such as
[CSE (CXL Switch Emulator)](https://github.com/JackrabbitLabs/cse), the user
first starts the CSE application using a config file that defines a
virtualized CXL switch environment with the following command.
```bash
cse -lc config.yaml
```
Once the target endpoint is running, Jack can be used to query or configure
the CXL endpoint.
# Example Commands
To obtain identity information about the endpoint:
```bash
jack show id
```
To obtain information about the capabilities of the endpoint:
```bash
jack show switch
```
To show the status of the ports of the endpoint use `show port`. This displays
the devices that are connected to the endpoint.
```bash
jack show port
```
To show information about what ports are connected to a Virtual CXL Switch
(VCS).
```bash
jack show vcs 0
```
To unbind a port (or a Logical Device) from a VCS:
```bash
jack port unbind -c 0 -b 4
```
To bind a port (or a Logical Device) to a VCS:
```bash
jack port bind -p 4 -l 0 -c 0 -b 4
```
2024-03-28 01:15:55 +00:00