mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
PCI: Honor firmware's device disabled status
If a device has a firmware node (DT/ACPI), and the device is marked disabled, that is currently ignored. Add a check for this condition and bail out creating the pci_dev. This assumes the config space for the device can still be accessed because they already have by this point in order to identify the device. Link: https://lore.kernel.org/r/20230210164351.2687475-1-robh@kernel.org Tested-by: Binbin Zhou <zhoubinbin@loongson.cn> Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: Liu Peibao <liupeibao@loongson.cn> Cc: Huacai Chen <chenhuacai@loongson.cn>
This commit is contained in:
parent
c768f8c5f4
commit
6fffbc7ae1
1 changed files with 2 additions and 0 deletions
|
@ -1841,6 +1841,8 @@ int pci_setup_device(struct pci_dev *dev)
|
||||||
|
|
||||||
pci_set_of_node(dev);
|
pci_set_of_node(dev);
|
||||||
pci_set_acpi_fwnode(dev);
|
pci_set_acpi_fwnode(dev);
|
||||||
|
if (dev->dev.fwnode && !fwnode_device_is_available(dev->dev.fwnode))
|
||||||
|
return -ENODEV;
|
||||||
|
|
||||||
pci_dev_assign_slot(dev);
|
pci_dev_assign_slot(dev);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue