other versions
CCW_DEVICE_START_TIM(9) | The ccw bus | CCW_DEVICE_START_TIM(9) |
NAME¶
ccw_device_start_timeout - start a s390 channel program with timeoutSYNOPSIS¶
int ccw_device_start_timeout(struct ccw_device * cdev, struct ccw1 * cpa, unsigned long intparm, __u8 lpm, unsigned long flags, int expires);
ARGUMENTS¶
struct ccw_device * cdevtarget 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.
unsigned long flags
additional flags; defines the action to be performed for
I/O processing.
int expires
timeout value in jiffies
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). This function notifies the device driver if the channel program has not completed during the time specified by expires. If a timeout occurs, the channel program is terminated via xsch, hsch or csch, and the device's interrupt handler will be called with an irb containing ERR_PTR(-ETIMEDOUT).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 heldAUTHOR¶
Cornelia Huck <cornelia.huck@de.ibm.com>Author.
COPYRIGHT¶
September 2017 | Kernel Hackers Manual 4.12 |