diff options
author | Pierre Morel <pmorel@linux.ibm.com> | 2020-02-07 13:35:08 +0100 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2020-04-28 13:49:46 +0200 |
commit | 6cf17f9a67c124aa4739b79709008d942635b975 (patch) | |
tree | ab46189764d49c95d1da78323df1a273d0e8b13f /arch/s390/pci | |
parent | d08d6f5d75242ceb410efbdf650efecc40d68c2d (diff) | |
download | linux-stable-6cf17f9a67c124aa4739b79709008d942635b975.tar.gz linux-stable-6cf17f9a67c124aa4739b79709008d942635b975.tar.bz2 linux-stable-6cf17f9a67c124aa4739b79709008d942635b975.zip |
s390/pci: define kernel parameters for PCI multifunction
Using PCI multifunctions in S390 is a new feature we may want
to ignore to continue provide the same topology as in the past
to userland even if the configuration supports exposing the
topology of a multi-Function device.
A new boolean parameters allows to overwrite the kernel
pci configuration:
- pci=norid when on, disallow the use a new firmware field,
RID, which provides the PCI <bus>:<device>.<function> part
of the PCI address.
To be used in the following patches and satisfy the checkpatch.pl
the variable is exposed in pci.h
Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390/pci')
-rw-r--r-- | arch/s390/pci/pci.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/s390/pci/pci.c b/arch/s390/pci/pci.c index 94ca121933de..3386a46f6bde 100644 --- a/arch/s390/pci/pci.c +++ b/arch/s390/pci/pci.c @@ -48,6 +48,8 @@ static unsigned int zpci_num_domains_allocated; min(((unsigned long) ZPCI_NR_DEVICES * PCI_STD_NUM_BARS / 2), \ ZPCI_IOMAP_MAX_ENTRIES) +unsigned int s390_pci_no_rid; + static DEFINE_SPINLOCK(zpci_iomap_lock); static unsigned long *zpci_iomap_bitmap; struct zpci_iomap_entry *zpci_iomap_start; @@ -844,6 +846,10 @@ char * __init pcibios_setup(char *str) s390_pci_force_floating = 1; return NULL; } + if (!strcmp(str, "norid")) { + s390_pci_no_rid = 1; + return NULL; + } return str; } |