From 4fe2a0daf884e2f3c09bff922d54d7f5088fa55d Mon Sep 17 00:00:00 2001 From: Bowen Wang Date: Sat, 24 Feb 2024 20:01:50 +0800 Subject: [PATCH] pci/pci.c: fix some pci BUGs fix some pci BUGs that make it impossible to match PCI device Signed-off-by: Bowen Wang --- drivers/pci/pci.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 10f0aef9b0a..ebef78ea933 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -113,7 +113,7 @@ (id)->subvendor == (dev)->subsystem_vendor) && \ ((id)->subdevice == PCI_ANY_ID || \ (id)->subdevice == (dev)->subsystem_device) && \ - (((id)->class ^ (dev)->class) & ((id)->class_mask == 0))) + ((((id)->class ^ (dev)->class) & (id)->class_mask) == 0)) /**************************************************************************** * Private Function Prototypes @@ -703,7 +703,7 @@ static void pci_setup_device(FAR struct pci_device_s *dev, int max_bar, { /* IO */ - size = pci_size(orig, mask, 0xfffffff0); + size = pci_size(orig, mask, 0xfffffffe); flags = PCI_RESOURCE_IO; res = &dev->bus->ctrl->io; } @@ -712,7 +712,7 @@ static void pci_setup_device(FAR struct pci_device_s *dev, int max_bar, { /* Prefetchable MEM */ - size = pci_size(orig, mask, 0xfffffffe); + size = pci_size(orig, mask, 0xfffffff0); flags = PCI_RESOURCE_MEM | PCI_RESOURCE_PREFETCH; res = &dev->bus->ctrl->mem_pref; } @@ -720,7 +720,7 @@ static void pci_setup_device(FAR struct pci_device_s *dev, int max_bar, { /* Non-prefetch MEM */ - size = pci_size(orig, mask, 0xfffffffe); + size = pci_size(orig, mask, 0xfffffff0); flags = PCI_RESOURCE_MEM; res = &dev->bus->ctrl->mem; }