Commit d1eb16e64f20bbb88b0949fb5203ac43b661dffe

Authored by Sebastian Ott
Committed by Martin Schwidefsky
1 parent 0e6c83d187

s390/cio: add condev keyword to cio_ignore

Provide a 'condev' keyword to cio_ignore to (un)ignore the
CCW console device.

Reviewed-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

Showing 2 changed files with 13 additions and 5 deletions Side-by-side Diff

Documentation/s390/CommonIO
... ... @@ -10,7 +10,7 @@
10 10  
11 11 * cio_ignore = device[,device[,..]]
12 12  
13   - device := {all | [!]ipldev | [!]<devno> | [!]<devno>-<devno>}
  13 + device := {all | [!]ipldev | [!]condev | [!]<devno> | [!]<devno>-<devno>}
14 14  
15 15 The given devices will be ignored by the common I/O-layer; no detection
16 16 and device sensing will be done on any of those devices. The subchannel to
... ... @@ -24,10 +24,11 @@
24 24 device numbers (0xabcd or abcd, for 2.4 backward compatibility). If you
25 25 give a device number 0xabcd, it will be interpreted as 0.0.abcd.
26 26  
27   - You can use the 'all' keyword to ignore all devices. The 'ipldev' keyword can
28   - be used to refer to the CCW based boot device (this is probably useful only
29   - when combined with the '!' operator). The '!' operator will cause the I/O-layer
30   - to _not_ ignore a device. The command line is parsed from left to right.
  27 + You can use the 'all' keyword to ignore all devices. The 'ipldev' and 'condev'
  28 + keywords can be used to refer to the CCW based boot device and CCW console
  29 + device respectively (these are probably useful only when combined with the '!'
  30 + operator). The '!' operator will cause the I/O-layer to _not_ ignore a device.
  31 + The command line is parsed from left to right.
31 32  
32 33 For example,
33 34 cio_ignore=0.0.0023-0.0.0042,0.0.4711
drivers/s390/cio/blacklist.c
... ... @@ -189,6 +189,13 @@
189 189 to_cssid = from_cssid;
190 190 to_ssid = from_ssid;
191 191 to = from;
  192 + } else if (strcmp(parm, "condev") == 0) {
  193 + if (console_devno == -1)
  194 + continue;
  195 +
  196 + from_cssid = to_cssid = 0;
  197 + from_ssid = to_ssid = 0;
  198 + from = to = console_devno;
192 199 } else {
193 200 rc = parse_busid(strsep(&parm, "-"), &from_cssid,
194 201 &from_ssid, &from, msgtrigger);