Re: [PATCH v7 10/11] PCI/cxl: Expose CXL Reset as a PCI reset method
From: Alex Williamson
Date: Fri Jun 26 2026 - 18:09:29 EST
On Tue, 23 Jun 2026 03:24:52 +0000
Srirangan Madhavan <smadhavan@xxxxxxxxxx> wrote:
> diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
> index 360f2aaee10c..b1ec20126390 100644
> --- a/drivers/pci/pci.c
> +++ b/drivers/pci/pci.c
> @@ -33,6 +33,7 @@
> #include <asm/dma.h>
> #include <linux/aer.h>
> #include <linux/bitfield.h>
> +#include <cxl/cxl.h>
> #include "pci.h"
>
> DEFINE_MUTEX(pci_slot_mutex);
> @@ -5081,6 +5082,7 @@ const struct pci_reset_fn_method pci_reset_fn_methods[] = {
> { pci_dev_acpi_reset, .name = "acpi" },
> { pcie_reset_flr, .name = "flr" },
> { pci_af_flr, .name = "af_flr" },
> + { cxl_reset_function, .name = "cxl_reset" },
> { pci_pm_reset, .name = "pm" },
> { pci_reset_bus_function, .name = "bus" },
> { cxl_reset_bus_function, .name = "cxl_bus" },
Follow-on to the previous comments, for a device supporting cxl.mem
and/or cxl.cache, cxl_reset is the best option, perhaps with the
exception of device specific or acpi. Why isn't this placed above FLR?
If we decide cxl.io scoped function resets should not be exposed for
cxl.cache/mem devices this might be moot as we'll filter through to
cxl_reset anyway. Thanks,
Alex