diff options
author | Bolarinwa Olayemi Saheed <refactormyself@gmail.com> | 2020-06-15 09:32:18 +0200 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2020-06-26 13:50:09 -0500 |
commit | d20df83b66ccb9cc6b1ac448d4013647a0fe4952 (patch) | |
tree | 3e2e591193a64b71e0631ad1c7b8358204092434 /drivers/sbus | |
parent | b3a9e3b9622ae10064826dccb4f7a52bd88c7407 (diff) | |
download | linux-stable-d20df83b66ccb9cc6b1ac448d4013647a0fe4952.tar.gz linux-stable-d20df83b66ccb9cc6b1ac448d4013647a0fe4952.tar.bz2 linux-stable-d20df83b66ccb9cc6b1ac448d4013647a0fe4952.zip |
PCI: Convert PCIe capability PCIBIOS errors to errno
The PCI config accessors (pci_read_config_word(), et al) return
PCIBIOS_SUCCESSFUL (zero) or positive error values like
PCIBIOS_FUNC_NOT_SUPPORTED.
The PCIe capability accessors (pcie_capability_read_word(), et al)
similarly return PCIBIOS errors, but some callers assume they return
generic errno values like -EINVAL.
For example, the Myri-10G probe function returns a positive PCIBIOS error
if the pcie_capability_clear_and_set_word() in pcie_set_readrq() fails:
myri10ge_probe
status = pcie_set_readrq
return pcie_capability_clear_and_set_word
if (status)
return status
A positive return from a PCI driver probe function would cause a "Driver
probe function unexpectedly returned" warning from local_pci_probe()
instead of the desired probe failure.
Convert PCIBIOS errors to generic errno for all callers of:
pcie_capability_read_word
pcie_capability_read_dword
pcie_capability_write_word
pcie_capability_write_dword
pcie_capability_set_word
pcie_capability_set_dword
pcie_capability_clear_word
pcie_capability_clear_dword
pcie_capability_clear_and_set_word
pcie_capability_clear_and_set_dword
that check the return code for anything other than zero.
[bhelgaas: commit log, squash together]
Suggested-by: Bjorn Helgaas <bjorn@helgaas.com>
Link: https://lore.kernel.org/r/20200615073225.24061-1-refactormyself@gmail.com
Signed-off-by: Bolarinwa Olayemi Saheed <refactormyself@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/sbus')
0 files changed, 0 insertions, 0 deletions