22 Aug
2012
22 Aug
'12
4:58 p.m.
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Wednesday, August 22, 2012 8:17 PM
You shouldn't move pm_runtime_get_noresume() / _put_no_idle() to hda_codec.c, but these should be called only in hda_intel.c. Basically there is no PCI-specific code in hda_codec.c and patch_*.c. All PCI controller code should be in hda_intel.c.
Okay. I'll move pm_runtime_get_noresume() / _put_no_idle() back to azx_probe_continue() and azx_remove().
(snip)
else if (chip->running && power_save_controller &&
!bus->power_keep_link_on) {
azx_stop_chip(chip);!bus->power_keep_link_on)
/* TODO: Suspend controller only if all codec support
stop-clock in D3, for wakeup consideration */
- if (!bus->power_keep_link_on
pm_runtime_put_sync(&chip->pci->dev);&& !codec->power_on && codec->d3_stop_clk_ok)
Also it should check power_save_controller, too.
I'll add check on power_save_controller.
Thanks Mengdong