Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] s390: cio documentation update

Update documentation of the common I/O layer:
- Add MSS-specific example.
- Add more information on ccwgroup devices.
- Add channel path type attribute.
- Fix typo.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Cornelia Huck and committed by
Linus Torvalds
dc06010c 3ba1998e

+12 -3
+12 -3
Documentation/s390/driver-model.txt
··· 16 16 - 0.0.0000/0.0.0815/ 17 17 - 0.0.0001/0.0.4711/ 18 18 - 0.0.0002/ 19 + - 0.1.0000/0.1.1234/ 19 20 ... 20 21 21 - In this example, device 0815 is accessed via subchannel 0, device 4711 via 22 - subchannel 1, and subchannel 2 is a non-I/O subchannel. 22 + In this example, device 0815 is accessed via subchannel 0 in subchannel set 0, 23 + device 4711 via subchannel 1 in subchannel set 0, and subchannel 2 is a non-I/O 24 + subchannel. Device 1234 is accessed via subchannel 0 in subchannel set 1. 23 25 24 26 You should address a ccw device via its bus id (e.g. 0.0.4711); the device can 25 27 be found under bus/ccw/devices/. ··· 99 97 100 98 Each driver should declare in a MODULE_DEVICE_TABLE into which CU types/models 101 99 and/or device types/models it is interested. This information can later be found 102 - found in the struct ccw_device_id fields: 100 + in the struct ccw_device_id fields: 103 101 104 102 struct ccw_device_id { 105 103 __u16 match_flags; ··· 210 208 again (only when offline). This is a generic ccwgroup mechanism (the driver does 211 209 not need to implement anything beyond normal removal routines). 212 210 211 + A ccw device which is a member of a ccwgroup device carries a pointer to the 212 + ccwgroup device in the driver_data of its device struct. This field must not be 213 + touched by the driver - it should use the ccwgroup device's driver_data for its 214 + private data. 215 + 213 216 To implement a ccwgroup driver, please refer to include/asm/ccwgroup.h. Keep in 214 217 mind that most drivers will need to implement both a ccwgroup and a ccw driver 215 218 (unless you have a meta ccw driver, like cu3088 for lcs and ctc). ··· 236 229 the chpid connects to. This can be used to force the kernel to re-use 237 230 a channel path the user knows to be online, but the machine hasn't 238 231 created a machine check for. 232 + 233 + type - The physical type of the channel path. 239 234 240 235 241 236 3. System devices