Device categories and device drivers
The /sys/devices directory includes several device categories that are specific to z/Architecture®.
Figure 1 illustrates a part of sysfs.
/sys/bus and /sys/devices are common Linux® directories. The directories following /sys/bus sort the device drivers according to the categories of devices they control. The sysfs branch for a particular category might be missing if there is no device for that category.
- AP devices
- are adjunct processors used for cryptographic operations.
- virtio devices
-
are virtualized devices as used on KVM guests. This branch lists devices with names
virtio<n>
that represent the virtio aspects of virtio-ccw devices.The CCW aspects of virtio-ccw devices are represented by corresponding devices in the /sys/bus/ccw branch, with device bus-IDs as device names. This publication uses the representation in the /sys/bus/ccw branch to work with virtio-ccw devices.
- CCW devices
- are devices that can be addressed with channel-command words (CCWs). These devices use a single subchannel on the mainframe's channel subsystem.
- CCW group devices
- are devices that use multiple subchannels on the mainframe's channel subsystem.
- IUCV devices
- are devices for virtual connections between z/VM® guest virtual machines within an IBM® mainframe. IUCV devices do not use the channel subsystem.
- PCI devices
- represent PCIe devices, for example, a 10GbE RoCE Express device. In sysfs, PCIe devices are listed in the /pci directory rather than the /pcie directory.
Table 1 lists the z/Architecture specific device drivers that have representation in sysfs:
Device driver | Category | sysfs directories |
---|---|---|
3215 console | CCW | /sys/bus/ccw/drivers/3215 |
3270 console | CCW | /sys/bus/ccw/drivers/3270 |
DASD | CCW |
/sys/bus/ccw/drivers/dasd-eckd
/sys/bus/ccw/drivers/dasd-fba |
SCSI-over-Fibre Channel | CCW | /sys/bus/ccw/drivers/zfcp |
Storage class memory supporting Flash Express | SCM | /sys/bus/scm/drivers/scm_block |
Channel-attached tape | CCW |
/sys/bus/ccw/drivers/tape_34xx
/sys/bus/ccw/drivers/tape_3590 |
virtio CCW transport device driver | CCW | /sys/bus/ccw/drivers/virtio_ccw |
Cryptographic | AP | /sys/bus/ap/drivers/cpixcccard /sys/bus/ap/drivers/cpixccqueue /sys/bus/ap/drivers/cex2acard /sys/bus/ap/drivers/cex2aqueue /sys/bus/ap/drivers/cex4card /sys/bus/ap/drivers/cex4queue |
DCSS | n/a | /sys/devices/dcssblk |
z/VM recording | IUCV | /sys/bus/iucv/drivers/vmlogrdr |
NETIUCV | IUCV | /sys/bus/iucv/drivers/netiucv |
qeth (OSA-Express features and HiperSockets ) | CCW group | /sys/bus/ccwgroup/drivers/qeth |
LCS | CCW group | /sys/bus/ccwgroup/drivers/lcs |
CTCM | CCW group | /sys/bus/ccwgroup/drivers/ctcm |
10GbE RoCE Express devices for Mellanox ConnectX-3 EN (mlx4_en) | PCI | /sys/bus/pci/drivers/mlx4_core |
10 GbE RoCE Express2 devices for Mellanox ConnectX-4 EN (mlx5_core) | PCI | /sys/bus/pci/drivers/mlx5_core |
Internal Shared Memory | PCI | /sys/bus/pci/drivers/ism |
NVMe | PCI | /sys/bus/pci/drivers/nvme |
Some device drivers do not relate to physical devices that are connected through the channel subsystem. Their representation in sysfs differs from the CCW and CCW group devices, for example, the IUCV device driver and the IUCV-dependent z/VM recording device driver have their own category, IUCV.
The following sections provide more details about devices and their representation in sysfs.