Hi Bolarinwa, I notice some drivers use these functions and if there is an error, pass the error code directly to the userspace. As it's our private error code, is it appropriate to pass or should we call pcibios_err_to_errno()(include/linux/pci.h, line 672) to do the conversion? Regards, Yicong On 2020/4/10 0:16, Bolarinwa Olayemi Saheed wrote: > Signed-off-by: Bolarinwa Olayemi Saheed <refactormyself@xxxxxxxxx> > Suggested-by: Bjorn Helgaas <bjorn@xxxxxxxxxxx> > --- > drivers/pci/access.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/pci/access.c b/drivers/pci/access.c > index 79c4a2ef269a..451f2b8b2b3c 100644 > --- a/drivers/pci/access.c > +++ b/drivers/pci/access.c > @@ -409,7 +409,7 @@ int pcie_capability_read_word(struct pci_dev *dev, int pos, u16 *val) > > *val = 0; > if (pos & 1) > - return -EINVAL; > + return PCIBIOS_BAD_REGISTER_NUMBER; > > if (pcie_capability_reg_implemented(dev, pos)) { > ret = pci_read_config_word(dev, pci_pcie_cap(dev) + pos, val); > @@ -444,7 +444,7 @@ int pcie_capability_read_dword(struct pci_dev *dev, int pos, u32 *val) > > *val = 0; > if (pos & 3) > - return -EINVAL; > + return PCIBIOS_BAD_REGISTER_NUMBER; > > if (pcie_capability_reg_implemented(dev, pos)) { > ret = pci_read_config_dword(dev, pci_pcie_cap(dev) + pos, val);