On Tue, 2023-12-05 at 10:01 -0600, Pierre-Louis Bossart wrote: > > > > + > > > > +static void tas2563_fixup_i2c(struct hda_codec *cdc, > > > > + const struct hda_fixup *fix, int action) > > > > +{ > > > > + tas2xxx_generic_fixup(cdc, action, "i2c", "INT8866"); > > > > > > Any specific reason to use an Intel ACPI identifier? Why not use > > > "TIAS2563" ? > > > > > INT8866 is in the ACPI. > > I don't know why Lenovo uses this name. > > I think it's more internal than intel. > > > > Scope (_SB.I2CD) > > { > > Device (TAS) > > { > > Name (_HID, "INT8866") // _HID: Hardware ID > > Ouch, I hope they checked with Intel that this isn't an HID already in > use... > It looks the INT prefix is not reserved. (yet) https://uefi.org/ACPI_ID_List?acpi_search=INT > > > > > > + return 0; > > > > +} > > > > + > > > > +static const struct dev_pm_ops tas2563_hda_pm_ops = { > > > > + SYSTEM_SLEEP_PM_OPS(tas2563_system_suspend, tas2563_system_resume) > > > > > > where's the pm_runtime stuff? > > > > > > > The amp stores its state in software shutdown mode. > > The tas2563_hda_playback_hook wakes/shutdowns the amp, not the > > pm_runtime. > > My point was that you have all these pm_runtime_ calls in the code, but > nothing that provides pm_runtime suspend-resume functions so not sure > what exactly the result is? > > I think nothing. I haven't experienced anything unusual recently.