Verify Setup
Before running any XCENA SDK examples, verify that the XCENA device is properly recognized by the system.
Note
After completing the Installation, following steps work identically on both real hardware and QEMU emulator environments.
1. Check PCIe topology
$ lspci
... ...
0d:00.0 CXL: Device 20a6:ce00 (rev 01)
2. Check CXL and DAX interface
Use the cxl and daxctl utilities to ensure that the CXL memory device and DAX region are correctly configured.
$ cxl list
$ daxctl list
Example output for cxl list:
[
{
"memdevs":[
{
"memdev":"mem0",
"ram_size":12616466432,
"serial":0,
"host":"0000:0d:00.0",
"firmware_version":"xcena-1.0.0"
}
]
},
{
"regions":[
{
"region":"region0",
"resource":53955526656,
"size":12616466432,
"type":"ram",
"interleave_ways":1,
"interleave_granularity":256,
"decode_state":"commit",
"qos_class_mismatch":true
}
]
}
]
Example output for daxctl list:
[
{
"chardev":"dax0.0",
"size":12616466432,
"target_node":0,
"align":2097152,
"mode":"devdax"
}
]
3. Check CLI
$ xcena_cli device-info 0
SVN Revision: 0x8
DDR Start Address: 0x20000000000
DDR Size: 32GB
ADMIN_MU Bitmap = 0xf
HIO_MU Bitmap = 0x3
MSUB Bitmap = 0x3
MSUB_CLST Bitmap = 0xf
MSUB_CLST_MU Bitmap = 0xff
Num Sub per Device = 2
Num Cluster per Sub = 4
Num Mu per Cluster = 8
4. Check pxltop
pxl-top Fri Nov 7 10:51:52 2025 (Press 'q' to quit, 'd' for details)
Devices:
DEV SUB IO_MEM CXL_MEM
0 0/2 (0.0%) 0.0KiB/2.0GiB (0.0%) 0.0KiB/4.5GiB (0.0%)
Processes:
PID DEV SUB IO_MEM CXL_MEM USER COMMAND