ccw devices

struct ccw_device — channel attached device
struct ccw_driver — device driver for channel attached devices
ccw_device_set_offline — disable a ccw device for I/O
ccw_device_set_online — enable a ccw device for I/O
get_ccwdev_by_dev_id — obtain device from a ccw device id
get_ccwdev_by_busid — obtain device from a bus id
ccw_driver_register — register a ccw driver
ccw_driver_unregister — deregister a ccw driver
ccw_device_siosl — initiate logging
ccw_device_set_options_mask — set some options and unset the rest
ccw_device_set_options — set some options
ccw_device_clear_options — clear some options
ccw_device_is_pathgroup — determine if paths to this device are grouped
ccw_device_is_multipath — determine if device is operating in multipath mode
ccw_device_clear — terminate I/O request processing
ccw_device_start_key — start a s390 channel program with key
ccw_device_start_timeout_key — start a s390 channel program with timeout and key
ccw_device_start — start a s390 channel program
ccw_device_start_timeout — start a s390 channel program with timeout
ccw_device_halt — halt I/O request processing
ccw_device_resume — resume channel program execution
ccw_device_get_ciw — Search for CIW command in extended sense data.
ccw_device_get_path_mask — get currently available paths
ccw_device_get_chp_desc — return newly allocated channel-path descriptor
ccw_device_get_id — obtain a ccw device id
ccw_device_tm_start_key — perform start function
ccw_device_tm_start_timeout_key — perform start function
ccw_device_tm_start — perform start function
ccw_device_tm_start_timeout — perform start function
ccw_device_get_mdc — accumulate max data count
ccw_device_tm_intrg — perform interrogate function
ccw_device_get_schid — obtain a subchannel id

Devices that want to initiate channel I/O need to attach to the ccw bus. Interaction with the driver core is done via the common I/O layer, which provides the abstractions of ccw devices and ccw device drivers.

The functions that initiate or terminate channel I/O all act upon a ccw device structure. Device drivers must not bypass those functions or strange side effects may happen.