summaryrefslogtreecommitdiffstats
path: root/drivers/s390/cio/cio.h
diff options
context:
space:
mode:
authorCornelia Huck <cohuck@redhat.com>2019-06-13 13:08:15 +0200
committerVasily Gorbik <gor@linux.ibm.com>2019-07-02 16:00:26 +0200
commitebc3d179150347f3b6d97d8f249378bb2218f95e (patch)
treefd608926e7c655a331816d91722b45ef4cec11e5 /drivers/s390/cio/cio.h
parentdbd66558dd28e69471cac7c1431bb0d8df221498 (diff)
downloadlinux-ebc3d179150347f3b6d97d8f249378bb2218f95e.tar.gz
linux-ebc3d179150347f3b6d97d8f249378bb2218f95e.tar.bz2
linux-ebc3d179150347f3b6d97d8f249378bb2218f95e.zip
s390/cio: introduce driver_override on the css bus
Sometimes, we want to control which of the matching drivers binds to a subchannel device (e.g. for subchannels we want to handle via vfio-ccw). For pci devices, a mechanism to do so has been introduced in 782a985d7af2 ("PCI: Introduce new device binding path using pci_dev.driver_override"). It makes sense to introduce the driver_override attribute for subchannel devices as well, so that we can easily extend the 'driverctl' tool (which makes use of the driver_override attribute for pci). Note that unlike pci we still require a driver override to match the subchannel type; matching more than one subchannel type is probably not useful anyway. Signed-off-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Halil Pasic <pasic@linux.ibm.com> Reviewed-by: Sebastian Ott <sebott@linux.ibm.com> Signed-off-by: Sebastian Ott <sebott@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'drivers/s390/cio/cio.h')
-rw-r--r--drivers/s390/cio/cio.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/cio/cio.h b/drivers/s390/cio/cio.h
index 4d6c7d16416e..ba7d2480613b 100644
--- a/drivers/s390/cio/cio.h
+++ b/drivers/s390/cio/cio.h
@@ -113,6 +113,7 @@ struct subchannel {
enum sch_todo todo;
struct work_struct todo_work;
struct schib_config config;
+ char *driver_override; /* Driver name to force a match */
} __attribute__ ((aligned(8)));
DECLARE_PER_CPU_ALIGNED(struct irb, cio_irb);