Hi all, On Thu, 15 Mar 2018 14:14:25 +1100 Stephen Rothwell wrote: > > Today's linux-next merge of the drm-misc tree got a conflict in: > > sound/pci/hda/hda_intel.c > > between commits: > > 1ba8f9d30817 ("ALSA: hda: Add a power_save blacklist") > 40088dc4e1ea ("ALSA: hda - Revert power_save option default value") > > from Linus' tree and commit: > > 07f4f97d7b4b ("vga_switcheroo: Use device link for HDA controller") > > from the drm-misc tree. > > I fixed it up (see below) and can carry the fix as necessary. This > is now fixed as far as linux-next is concerned, but any non trivial > conflicts should be mentioned to your upstream maintainer when your tree > is submitted for merging. You may also want to consider cooperating > with the maintainer of the conflicting tree to minimise any particularly > complex conflicts. > > -- > Cheers, > Stephen Rothwell > > diff --cc sound/pci/hda/hda_intel.c > index d5017adf9feb,ec4e6b829ee2..000000000000 > --- a/sound/pci/hda/hda_intel.c > +++ b/sound/pci/hda/hda_intel.c > @@@ -2219,8 -2201,8 +2223,9 @@@ static int azx_probe_continue(struct az > struct hda_intel *hda = container_of(chip, struct hda_intel, chip); > struct hdac_bus *bus = azx_bus(chip); > struct pci_dev *pci = chip->pci; > + struct hda_codec *codec; > int dev = chip->dev_index; > + int val; > int err; > > hda->probe_continued = 1; > @@@ -2302,21 -2284,16 +2307,30 @@@ > chip->running = 1; > azx_add_card_list(chip); > > + val = power_save; > +#ifdef CONFIG_PM > + if (pm_blacklist) { > + const struct snd_pci_quirk *q; > + > + q = snd_pci_quirk_lookup(chip->pci, power_save_blacklist); > + if (q && val) { > + dev_info(chip->card->dev, "device %04x:%04x is on the power_save blacklist, forcing power_save to 0\n", > + q->subvendor, q->subdevice); > + val = 0; > + } > + } > +#endif /* CONFIG_PM */ > ++ > + /* > + * The discrete GPU cannot power down unless the HDA controller runtime > + * suspends, so activate runtime PM on codecs even if power_save == 0. > + */ > + if (use_vga_switcheroo(hda)) > + list_for_each_codec(codec, &chip->bus) > + codec->auto_runtime_pm = 1; > + > - snd_hda_set_power_save(&chip->bus, power_save * 1000); > + snd_hda_set_power_save(&chip->bus, val * 1000); > - if (azx_has_pm_runtime(chip) || hda->use_vga_switcheroo) > + if (azx_has_pm_runtime(chip)) > pm_runtime_put_autosuspend(&pci->dev); > > out_free: This is now a conflict between the drm tree and Linus' tree. -- Cheers, Stephen Rothwell