On Thu, 15 May 2025 17:45:08 +0200, Daniel Dadap wrote: > > On Thu, May 15, 2025 at 04:45:52PM +0200, Takashi Iwai wrote: > > On Thu, 15 May 2025 15:31:46 +0200, > > Daniel Dadap wrote: > > > > > > Some systems expose HD-Audio controllers via objects in the ACPI tables > > > which encapsulate the controller's interrupt and the base address for the > > > HDA registers in an ACPI _CRS object, for example, as listed in this ACPI > > > table dump excerpt: > > > > > > Device (HDA0) > > > { > > > Name (_HID, "NVDA2014") // _HID: Hardware ID > > > ... > > > Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings > > > { > > > Memory32Fixed (ReadWrite, > > > 0x36078000, // Address Base > > > 0x00008000, // Address Length > > > ) > > > Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) > > > { > > > 0x0000021E, > > > } > > > }) > > > } > > > > > > Add support for HDA controllers discovered through ACPI, including support > > > for some platforms which expose such HDA controllers on NVIDIA SoCs. This > > > is done with a new driver which uses existing infrastructure for extracting > > > resource information from _CRS objects and plumbs the parsed resource > > > information through to the existing HDA infrastructure to enable HD-Audio > > > functionality on such devices. > > > > > > Although this driver is in the sound/pci/hda/ directory, it targets devices > > > which are not actually enumerated on the PCI bus. This is because it depends > > > upon the Intel "Azalia" infrastructure which has traditionally been used for > > > PCI-based devices. > > > > > > Signed-off-by: Daniel Dadap <ddadap@xxxxxxxxxx> > > > > Thanks for the patch. > > The code looks fine. Just a nitpicking: > > > > > +static int __maybe_unused hda_acpi_suspend(struct device *dev) > > .... > > > +static int __maybe_unused hda_acpi_resume(struct device *dev) > > > > The __maybe_unused is superfluous when you set up > > SYSTEM_SLEEP_PM_OPS() macro instead in the below: > > > > > +static const struct dev_pm_ops hda_acpi_pm = { > > > + SET_SYSTEM_SLEEP_PM_OPS(hda_acpi_suspend, hda_acpi_resume) > > > > Thanks, I'll send an updated patch. The hda_tegra driver has these as well > so I presume it can be cleaned up from that driver as well? It's been already cleaned up on 6.15-rc1 :) Takashi