aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/s390/cds.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/s390/cds.txt')
-rw-r--r--Documentation/s390/cds.txt14
1 files changed, 7 insertions, 7 deletions
diff --git a/Documentation/s390/cds.txt b/Documentation/s390/cds.txt
index f0be389c7116..d80e5733827d 100644
--- a/Documentation/s390/cds.txt
+++ b/Documentation/s390/cds.txt
@@ -133,7 +133,7 @@ determine the device driver owning the device that raised the interrupt.
133In order not to introduce a new I/O concept to the common Linux code, 133In order not to introduce a new I/O concept to the common Linux code,
134Linux/390 preserves the IRQ concept and semantically maps the ESA/390 134Linux/390 preserves the IRQ concept and semantically maps the ESA/390
135subchannels to Linux as IRQs. This allows Linux/390 to support up to 64k 135subchannels to Linux as IRQs. This allows Linux/390 to support up to 64k
136different IRQs, uniquely representig a single device each. 136different IRQs, uniquely representing a single device each.
137 137
138Up to kernel 2.4, Linux/390 used to provide interfaces via the IRQ (subchannel). 138Up to kernel 2.4, Linux/390 used to provide interfaces via the IRQ (subchannel).
139For internal use of the common I/O layer, these are still there. However, 139For internal use of the common I/O layer, these are still there. However,
@@ -143,7 +143,7 @@ During its startup the Linux/390 system checks for peripheral devices. Each
143of those devices is uniquely defined by a so called subchannel by the ESA/390 143of those devices is uniquely defined by a so called subchannel by the ESA/390
144channel subsystem. While the subchannel numbers are system generated, each 144channel subsystem. While the subchannel numbers are system generated, each
145subchannel also takes a user defined attribute, the so called device number. 145subchannel also takes a user defined attribute, the so called device number.
146Both subchannel number and device number can not exceed 65535. During driverfs 146Both subchannel number and device number cannot exceed 65535. During driverfs
147initialisation, the information about control unit type and device types that 147initialisation, the information about control unit type and device types that
148imply specific I/O commands (channel command words - CCWs) in order to operate 148imply specific I/O commands (channel command words - CCWs) in order to operate
149the device are gathered. Device drivers can retrieve this set of hardware 149the device are gathered. Device drivers can retrieve this set of hardware
@@ -177,11 +177,11 @@ This routine returns the characteristics for the device specified.
177The function is meant to be called with an irq handler in place; that is, 177The function is meant to be called with an irq handler in place; that is,
178at earliest during set_online() processing. 178at earliest during set_online() processing.
179 179
180While the request is procesed synchronously, the device interrupt 180While the request is processed synchronously, the device interrupt
181handler is called for final ending status. In case of error situations the 181handler is called for final ending status. In case of error situations the
182interrupt handler may recover appropriately. The device irq handler can 182interrupt handler may recover appropriately. The device irq handler can
183recognize the corresponding interrupts by the interruption parameter be 183recognize the corresponding interrupts by the interruption parameter be
1840x00524443.The ccw_device must not be locked prior to calling read_dev_chars(). 1840x00524443. The ccw_device must not be locked prior to calling read_dev_chars().
185 185
186The function may be called enabled or disabled. 186The function may be called enabled or disabled.
187 187
@@ -325,7 +325,7 @@ with the following CCW flags values defined :
325 325
326CCW_FLAG_DC - data chaining 326CCW_FLAG_DC - data chaining
327CCW_FLAG_CC - command chaining 327CCW_FLAG_CC - command chaining
328CCW_FLAG_SLI - suppress incorrct length 328CCW_FLAG_SLI - suppress incorrect length
329CCW_FLAG_SKIP - skip 329CCW_FLAG_SKIP - skip
330CCW_FLAG_PCI - PCI 330CCW_FLAG_PCI - PCI
331CCW_FLAG_IDA - indirect addressing 331CCW_FLAG_IDA - indirect addressing
@@ -348,7 +348,7 @@ The ccw_device_start() function returns :
348 not online. 348 not online.
349 349
350When the I/O request completes, the CDS first level interrupt handler will 350When the I/O request completes, the CDS first level interrupt handler will
351accumalate the status in a struct irb and then call the device interrupt handler. 351accumulate the status in a struct irb and then call the device interrupt handler.
352The intparm field will contain the value the device driver has associated with a 352The intparm field will contain the value the device driver has associated with a
353particular I/O request. If a pending device status was recognized, 353particular I/O request. If a pending device status was recognized,
354intparm will be set to 0 (zero). This may happen during I/O initiation or delayed 354intparm will be set to 0 (zero). This may happen during I/O initiation or delayed
@@ -433,7 +433,7 @@ puts the CPU into I/O disabled state by preserving the current PSW flags.
433 433
434The device driver is allowed to issue the next ccw_device_start() call from 434The device driver is allowed to issue the next ccw_device_start() call from
435within its interrupt handler already. It is not required to schedule a 435within its interrupt handler already. It is not required to schedule a
436bottom-half, unless an non deterministicly long running error recovery procedure 436bottom-half, unless an non deterministically long running error recovery procedure
437or similar needs to be scheduled. During I/O processing the Linux/390 generic 437or similar needs to be scheduled. During I/O processing the Linux/390 generic
438I/O device driver support has already obtained the IRQ lock, i.e. the handler 438I/O device driver support has already obtained the IRQ lock, i.e. the handler
439must not try to obtain it again when calling ccw_device_start() or we end in a 439must not try to obtain it again when calling ccw_device_start() or we end in a