diff options
author | Linus Torvalds <[email protected]> | 2021-02-21 14:21:35 -0800 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2021-02-21 14:21:35 -0800 |
commit | 10e2ec8edece2566b40f69bae035a555ece71ab4 (patch) | |
tree | 27eed009a4817948623bbc31a83911c5ace7a4b0 /sound/soc/sof/sof-pci-dev.c | |
parent | de1617578849acab8e16c9ffdce39b91fb50639d (diff) | |
parent | c4294d7f057d05053412ebd0d5700228d0f2588d (diff) |
Merge tag 'sound-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound updates from Takashi Iwai:
"A relatively calm release at this time, and no massive code changes
are found in the stats, while a wide range of code refactoring and
cleanup have been done.
Note that this update includes the tree-wide trivial changes for
dropping the return value from ISA remove callbacks, too.
Below lists up some highlight:
ALSA Core:
- Support for the software jack injection via debugfs
- Fixes for sync_stop PCM operations
HD-audio and USB-audio:
- A few usual HD-audio device quirks
- Updates for Tegra HD-audio
- More quirks for Pioneer and other USB-audio devices
- Stricter state checks at USB-audio disconnection
ASoC:
- Continued code refactoring, cleanup and fixes in ASoC core API
- A KUnit testsuite for the topology code
- Lots of ASoC Intel driver Realtek codec updates, quirk additions
and fixes
- Support for Ingenic JZ4760(B), Intel AlderLake-P, DT configured
nVidia cards, Qualcomm lpass-rx-macro and lpass-tx-macro
- Removal of obsolete SIRF prima/atlas, Txx9 and ZTE zx drivers
Others:
- Drop return value from ISA driver remove callback
- Cleanup with DIV_ROUND_UP() macro
- FireWire updates, HDSP output loopback support"
* tag 'sound-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (322 commits)
ALSA: hda: intel-dsp-config: add Alder Lake support
ASoC: soc-pcm: fix hw param limits calculation for multi-DAI
ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet
ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet
ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet
ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet
ASoC: soc-pcm: fix hwparams min/max init for dpcm
ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup
ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10
ALSA: hda: Add another CometLake-H PCI ID
ASoC: soc-pcm: add soc_pcm_hw_update_format()
ASoC: soc-pcm: add soc_pcm_hw_update_chan()
ASoC: soc-pcm: add soc_pcm_hw_update_rate()
ASoC: wm_adsp: Remove unused control callback structure
ASoC: SOF: relax ABI checks and avoid unnecessary warnings
ASoC: codecs: lpass-tx-macro: add dapm widgets and route
ASoC: codecs: lpass-tx-macro: add support for lpass tx macro
ASoC: qcom: dt-bindings: add bindings for lpass tx macro codec
ASoC: codecs: lpass-rx-macro: add iir widgets
ASoC: codecs: lpass-rx-macro: add dapm widgets and route
...
Diffstat (limited to 'sound/soc/sof/sof-pci-dev.c')
-rw-r--r-- | sound/soc/sof/sof-pci-dev.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/sound/soc/sof/sof-pci-dev.c b/sound/soc/sof/sof-pci-dev.c index 215711ac7450..fd1f0d8c2853 100644 --- a/sound/soc/sof/sof-pci-dev.c +++ b/sound/soc/sof/sof-pci-dev.c @@ -66,6 +66,13 @@ static const struct dmi_system_id community_key_platforms[] = { } }, { + .ident = "Up Extreme", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "AAEON"), + DMI_MATCH(DMI_BOARD_NAME, "UP-WHL01"), + } + }, + { .ident = "Google Chromebooks", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Google"), @@ -213,7 +220,7 @@ static const struct sof_dev_desc icl_desc = { }; #endif -#if IS_ENABLED(CONFIG_SND_SOC_SOF_TIGERLAKE) +#if IS_ENABLED(CONFIG_SND_SOC_SOF_TIGERLAKE) || IS_ENABLED(CONFIG_SND_SOC_SOF_ALDERLAKE) static const struct sof_dev_desc tgl_desc = { .machines = snd_soc_acpi_intel_tgl_machines, .alt_machines = snd_soc_acpi_intel_tgl_sdw_machines, @@ -230,7 +237,9 @@ static const struct sof_dev_desc tgl_desc = { .nocodec_tplg_filename = "sof-tgl-nocodec.tplg", .ops = &sof_tgl_ops, }; +#endif +#if IS_ENABLED(CONFIG_SND_SOC_SOF_TIGERLAKE) static const struct sof_dev_desc tglh_desc = { .machines = snd_soc_acpi_intel_tgl_machines, .alt_machines = snd_soc_acpi_intel_tgl_sdw_machines, @@ -445,13 +454,19 @@ static void sof_pci_remove(struct pci_dev *pci) snd_sof_device_remove(&pci->dev); /* follow recommendation in pci-driver.c to increment usage counter */ - if (!(sof_pci_debug & SOF_PCI_DISABLE_PM_RUNTIME)) + if (snd_sof_device_probe_completed(&pci->dev) && + !(sof_pci_debug & SOF_PCI_DISABLE_PM_RUNTIME)) pm_runtime_get_noresume(&pci->dev); /* release pci regions and disable device */ pci_release_regions(pci); } +static void sof_pci_shutdown(struct pci_dev *pci) +{ + snd_sof_device_shutdown(&pci->dev); +} + /* PCI IDs */ static const struct pci_device_id sof_pci_ids[] = { #if IS_ENABLED(CONFIG_SND_SOC_SOF_MERRIFIELD) @@ -514,6 +529,8 @@ static const struct pci_device_id sof_pci_ids[] = { #if IS_ENABLED(CONFIG_SND_SOC_SOF_ALDERLAKE) { PCI_DEVICE(0x8086, 0x7ad0), .driver_data = (unsigned long)&adls_desc}, + { PCI_DEVICE(0x8086, 0x51c8), + .driver_data = (unsigned long)&tgl_desc}, #endif { 0, } }; @@ -525,6 +542,7 @@ static struct pci_driver snd_sof_pci_driver = { .id_table = sof_pci_ids, .probe = sof_pci_probe, .remove = sof_pci_remove, + .shutdown = sof_pci_shutdown, .driver = { .pm = &sof_pci_pm, }, |