[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20231214063717.992-1-mattc@purestorage.com>
Date: Wed, 13 Dec 2023 23:37:17 -0700
From: Matthew W Carlis <mattc@...estorage.com>
To: helgaas@...nel.org
Cc: bhelgaas@...gle.com, linux-kernel@...r.kernel.org,
linux-pci@...r.kernel.org, mika.westerberg@...ux.intel.com,
sathyanarayanan.kuppuswamy@...ux.intel.com
Subject: [PATCH v3] PCI/portdrv: Allow AER service only for Root Ports & RCECs
Hello Any Interested
Recently found that this patch had the affect of requiring us to set
pcie_ports_dpc_native in order to use the kernel DPC driver with PCIe switch
downstream ports. The kernel check for the DPC capability in portdrv.c has;
if pci_aer_available() and (dpc-native or using AER port service driver on
the device). I wonder if we couldn't do away with the requirement of the
AER service being used on the port if pci_aer_available() & host->native_aer
don't lie. I'm still trying to decide exactly what the condition ought to
look like, but it might draw from the AER service check above it. For example:
if (pci_find_ext_capability(dev, PCI_EXT_CAP_ID_DPC) &&
- pci_aer_available() &&
- (pcie_ports_dpc_native || (services & PCIE_PORT_SERVICE_AER)))
+ dev->aer_cap && pci_aer_available() &&
+ (pcie_ports_dpc_native || host->native_aer))
services |= PCIE_PORT_SERVICE_DPC;
Thanks,
-Matt
Powered by blists - more mailing lists