Scroll to navigation

CCW_DEVICE_START_KEY(9) The ccw bus CCW_DEVICE_START_KEY(9)

NAME

ccw_device_start_key - start a s390 channel program with key

SYNOPSIS

int ccw_device_start_key(struct ccw_device * cdev, struct ccw1 * cpa, unsigned long intparm, __u8 lpm, __u8 key, unsigned long flags);

ARGUMENTS

struct ccw_device * cdev

target ccw device

struct ccw1 * cpa

logical start address of channel program

unsigned long intparm

user specific interruption parameter; will be presented back to cdev's interrupt handler. Allows a device driver to associate the interrupt with a particular I/O request.

__u8 lpm

defines the channel path to be used for a specific I/O request. A value of 0 will make cio use the opm.

__u8 key

storage key to be used for the I/O

unsigned long flags

additional flags; defines the action to be performed for I/O processing.

DESCRIPTION

Start a S/390 channel program. When the interrupt arrives, the IRQ handler is called, either immediately, delayed (dev-end missing, or sense required) or never (no IRQ handler registered).

RETURN

0, if the operation was successful; -EBUSY, if the device is busy, or status pending; -EACCES, if no path specified in lpm is operational; -ENODEV, if the device is not operational.

CONTEXT

Interrupts disabled, ccw device lock held

AUTHOR

Cornelia Huck <cornelia.huck@de.ibm.com>

Author.

COPYRIGHT

July 2017 Kernel Hackers Manual 4.12