Message ID | 20240223205851.114931-3-helgaas@kernel.org |
---|---|
State | New |
Headers | show |
Series | PCI/ASPM: Save/restore L1 PM Substates for suspend/resume | expand |
On 2/23/24 12:58 PM, Bjorn Helgaas wrote: > From: "David E. Box" <david.e.box@linux.intel.com> > > Some ASPM-related tasks, such as save and restore of LTR and L1SS > capabilities, still need to be performed when CONFIG_PCIEASPM is not > enabled. To prepare for these changes, wrap the current code in aspm.c > with an #ifdef and always build the file. Since save/restore needs to be called even if CONFIG_PCIEASPM is not set, why not just leave it in pci.c? > > Link: https://lore.kernel.org/r/20240128233212.1139663-2-david.e.box@linux.intel.com > Signed-off-by: David E. Box <david.e.box@linux.intel.com> > [bhelgaas: split build change from function moves] > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> > --- > drivers/pci/pcie/Makefile | 2 +- > drivers/pci/pcie/aspm.c | 4 ++++ > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/pci/pcie/Makefile b/drivers/pci/pcie/Makefile > index 8de4ed5f98f1..6461aa93fe76 100644 > --- a/drivers/pci/pcie/Makefile > +++ b/drivers/pci/pcie/Makefile > @@ -6,7 +6,7 @@ pcieportdrv-y := portdrv.o rcec.o > > obj-$(CONFIG_PCIEPORTBUS) += pcieportdrv.o > > -obj-$(CONFIG_PCIEASPM) += aspm.o > +obj-y += aspm.o > obj-$(CONFIG_PCIEAER) += aer.o err.o > obj-$(CONFIG_PCIEAER_INJECT) += aer_inject.o > obj-$(CONFIG_PCIE_PME) += pme.o > diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c > index d1538f73f2f9..d50c0f83430f 100644 > --- a/drivers/pci/pcie/aspm.c > +++ b/drivers/pci/pcie/aspm.c > @@ -24,6 +24,8 @@ > > #include "../pci.h" > > +#ifdef CONFIG_PCIEASPM > + > #ifdef MODULE_PARAM_PREFIX > #undef MODULE_PARAM_PREFIX > #endif > @@ -1517,3 +1519,5 @@ bool pcie_aspm_support_enabled(void) > { > return aspm_support_enabled; > } > + > +#endif /* CONFIG_PCIEASPM */
On Sun, Feb 25, 2024 at 10:44:14PM -0800, Kuppuswamy Sathyanarayanan wrote: > On 2/23/24 12:58 PM, Bjorn Helgaas wrote: > > From: "David E. Box" <david.e.box@linux.intel.com> > > > > Some ASPM-related tasks, such as save and restore of LTR and L1SS > > capabilities, still need to be performed when CONFIG_PCIEASPM is not > > enabled. To prepare for these changes, wrap the current code in aspm.c > > with an #ifdef and always build the file. > > Since save/restore needs to be called even if CONFIG_PCIEASPM is > not set, why not just leave it in pci.c? We could do that, but we're accumulating various bits of ASPM-related suspend/resume functionality (LTR, L1SS, etc) that seem like they fit better in aspm.c. Bjorn
diff --git a/drivers/pci/pcie/Makefile b/drivers/pci/pcie/Makefile index 8de4ed5f98f1..6461aa93fe76 100644 --- a/drivers/pci/pcie/Makefile +++ b/drivers/pci/pcie/Makefile @@ -6,7 +6,7 @@ pcieportdrv-y := portdrv.o rcec.o obj-$(CONFIG_PCIEPORTBUS) += pcieportdrv.o -obj-$(CONFIG_PCIEASPM) += aspm.o +obj-y += aspm.o obj-$(CONFIG_PCIEAER) += aer.o err.o obj-$(CONFIG_PCIEAER_INJECT) += aer_inject.o obj-$(CONFIG_PCIE_PME) += pme.o diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c index d1538f73f2f9..d50c0f83430f 100644 --- a/drivers/pci/pcie/aspm.c +++ b/drivers/pci/pcie/aspm.c @@ -24,6 +24,8 @@ #include "../pci.h" +#ifdef CONFIG_PCIEASPM + #ifdef MODULE_PARAM_PREFIX #undef MODULE_PARAM_PREFIX #endif @@ -1517,3 +1519,5 @@ bool pcie_aspm_support_enabled(void) { return aspm_support_enabled; } + +#endif /* CONFIG_PCIEASPM */