Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'sound-6.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
"Slightly high amount of changes in this round, partly because of my
vacation in the last weeks. But all changes are small and nothing
looks worrisome.

The biggest LOCs is MAINTAINERS updates, and there is a core change
for card-ID string creation for non-ASCII inputs. Others are rather
device-specific, such as new quirks and device IDs for ASoC, usual
HD-audio and USB-audio quirks and fixes, as well as regression fixes
in HD-audio HDMI audio and Conexant codec"

* tag 'sound-6.12-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (39 commits)
ALSA: hda/conexant: Fix conflicting quirk for System76 Pangolin
ALSA: line6: add hw monitor volume control to POD HD500X
ALSA: gus: Fix some error handling paths related to get_bpos() usage
ALSA: hda: Add missing parameter description for snd_hdac_stream_timecounter_init()
ALSA: usb-audio: Add native DSD support for Luxman D-08u
ALSA: core: add isascii() check to card ID generator
MAINTAINERS: ALSA: use linux-sound@vger.kernel.org list
Revert "ALSA: hda: Conditionally use snooping for AMD HDMI"
ASoC: intel: sof_sdw: Add check devm_kasprintf() returned value
ASoC: imx-card: Set card.owner to avoid a warning calltrace if SND=m
ASoC: dt-bindings: davinci-mcasp: Fix interrupts property
ASoC: qcom: sm8250: add qrb4210-rb2-sndcard compatible string
ASoC: dt-bindings: qcom,sm8250: add qrb4210-rb2-sndcard
ALSA: hda: fix trigger_tstamp_latched
ALSA: hda/realtek: Add a quirk for HP Pavilion 15z-ec200
ALSA: hda/generic: Drop obsoleted obey_preferred_dacs flag
ALSA: hda/generic: Unconditionally prefer preferred_dacs pairs
ALSA: silence integer wrapping warning
ASoC: Intel: soc-acpi: arl: Fix some missing empty terminators
ASoC: Intel: soc-acpi-intel-rpl-match: add missing empty item
...

+162 -107
+1 -1
Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml
··· 102 102 default: 2 103 103 104 104 interrupts: 105 - anyOf: 105 + oneOf: 106 106 - minItems: 1 107 107 items: 108 108 - description: TX interrupt
+1
Documentation/devicetree/bindings/sound/qcom,sm8250.yaml
··· 30 30 - qcom,apq8096-sndcard 31 31 - qcom,qcm6490-idp-sndcard 32 32 - qcom,qcs6490-rb3gen2-sndcard 33 + - qcom,qrb4210-rb2-sndcard 33 34 - qcom,qrb5165-rb5-sndcard 34 35 - qcom,sc7180-qdsp6-sndcard 35 36 - qcom,sc8280xp-sndcard
+1 -1
Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
··· 302 302 reg-names: 303 303 items: 304 304 enum: 305 - - scu 305 + - sru 306 306 - ssi 307 307 - adg 308 308 # for Gen2/Gen3
+43 -43
MAINTAINERS
··· 860 860 861 861 ALLWINNER DMIC DRIVERS 862 862 M: Ban Tao <fengzheng923@gmail.com> 863 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 863 + L: linux-sound@vger.kernel.org 864 864 S: Maintained 865 865 F: Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml 866 866 F: sound/soc/sunxi/sun50i-dmic.c ··· 1517 1517 ANALOG DEVICES INC ASOC CODEC DRIVERS 1518 1518 M: Lars-Peter Clausen <lars@metafoo.de> 1519 1519 M: Nuno Sá <nuno.sa@analog.com> 1520 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 1520 + L: linux-sound@vger.kernel.org 1521 1521 S: Supported 1522 1522 W: http://wiki.analog.com/ 1523 1523 W: https://ez.analog.com/linux-software-drivers ··· 1594 1594 AOA (Apple Onboard Audio) ALSA DRIVER 1595 1595 M: Johannes Berg <johannes@sipsolutions.net> 1596 1596 L: linuxppc-dev@lists.ozlabs.org 1597 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 1597 + L: linux-sound@vger.kernel.org 1598 1598 S: Maintained 1599 1599 F: sound/aoa/ 1600 1600 ··· 2091 2091 2092 2092 ARM/Amlogic Meson SoC Sound Drivers 2093 2093 M: Jerome Brunet <jbrunet@baylibre.com> 2094 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 2094 + L: linux-sound@vger.kernel.org 2095 2095 S: Maintained 2096 2096 F: Documentation/devicetree/bindings/sound/amlogic* 2097 2097 F: sound/soc/meson/ ··· 2129 2129 ARM/APPLE MACHINE SOUND DRIVERS 2130 2130 M: Martin Povišer <povik+lin@cutebit.org> 2131 2131 L: asahi@lists.linux.dev 2132 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 2132 + L: linux-sound@vger.kernel.org 2133 2133 S: Maintained 2134 2134 F: Documentation/devicetree/bindings/sound/adi,ssm3515.yaml 2135 2135 F: Documentation/devicetree/bindings/sound/apple,* ··· 3732 3732 3733 3733 AXENTIA ASOC DRIVERS 3734 3734 M: Peter Rosin <peda@axentia.se> 3735 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 3735 + L: linux-sound@vger.kernel.org 3736 3736 S: Maintained 3737 3737 F: Documentation/devicetree/bindings/sound/axentia,* 3738 3738 F: sound/soc/atmel/tse850-pcm5142.c ··· 4851 4851 4852 4852 BT87X AUDIO DRIVER 4853 4853 M: Clemens Ladisch <clemens@ladisch.de> 4854 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 4854 + L: linux-sound@vger.kernel.org 4855 4855 S: Maintained 4856 4856 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 4857 4857 F: Documentation/sound/cards/bt87x.rst ··· 4913 4913 4914 4914 C-MEDIA CMI8788 DRIVER 4915 4915 M: Clemens Ladisch <clemens@ladisch.de> 4916 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 4916 + L: linux-sound@vger.kernel.org 4917 4917 S: Maintained 4918 4918 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 4919 4919 F: sound/pci/oxygen/ ··· 8254 8254 8255 8255 EDIROL UA-101/UA-1000 DRIVER 8256 8256 M: Clemens Ladisch <clemens@ladisch.de> 8257 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 8257 + L: linux-sound@vger.kernel.org 8258 8258 S: Maintained 8259 8259 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 8260 8260 F: sound/usb/misc/ua101.c ··· 8816 8816 FIREWIRE AUDIO DRIVERS and IEC 61883-1/6 PACKET STREAMING ENGINE 8817 8817 M: Clemens Ladisch <clemens@ladisch.de> 8818 8818 M: Takashi Sakamoto <o-takashi@sakamocchi.jp> 8819 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 8819 + L: linux-sound@vger.kernel.org 8820 8820 S: Maintained 8821 8821 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 8822 8822 F: include/uapi/sound/firewire.h ··· 8890 8890 8891 8891 FOCUSRITE SCARLETT2 MIXER DRIVER (Scarlett Gen 2+ and Clarett) 8892 8892 M: Geoffrey D. Bennett <g@b4.vu> 8893 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 8893 + L: linux-sound@vger.kernel.org 8894 8894 S: Maintained 8895 8895 W: https://github.com/geoffreybennett/scarlett-gen2 8896 8896 B: https://github.com/geoffreybennett/scarlett-gen2/issues ··· 9211 9211 M: Xiubo Li <Xiubo.Lee@gmail.com> 9212 9212 R: Fabio Estevam <festevam@gmail.com> 9213 9213 R: Nicolin Chen <nicoleotsuka@gmail.com> 9214 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 9214 + L: linux-sound@vger.kernel.org 9215 9215 L: linuxppc-dev@lists.ozlabs.org 9216 9216 S: Maintained 9217 9217 F: sound/soc/fsl/fsl* ··· 9221 9221 M: J.M.B. Downing <jonathan.downing@nautel.com> 9222 9222 M: Piotr Wojtaszczyk <piotr.wojtaszczyk@timesys.com> 9223 9223 R: Vladimir Zapolskiy <vz@mleia.com> 9224 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 9224 + L: linux-sound@vger.kernel.org 9225 9225 L: linuxppc-dev@lists.ozlabs.org 9226 9226 S: Maintained 9227 9227 F: Documentation/devicetree/bindings/sound/nxp,lpc3220-i2s.yaml ··· 9229 9229 9230 9230 FREESCALE SOC SOUND QMC DRIVER 9231 9231 M: Herve Codina <herve.codina@bootlin.com> 9232 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 9232 + L: linux-sound@vger.kernel.org 9233 9233 L: linuxppc-dev@lists.ozlabs.org 9234 9234 S: Maintained 9235 9235 F: Documentation/devicetree/bindings/sound/fsl,qmc-audio.yaml ··· 11156 11156 11157 11157 INFINEON PEB2466 ASoC CODEC 11158 11158 M: Herve Codina <herve.codina@bootlin.com> 11159 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 11159 + L: linux-sound@vger.kernel.org 11160 11160 S: Maintained 11161 11161 F: Documentation/devicetree/bindings/sound/infineon,peb2466.yaml 11162 11162 F: sound/soc/codecs/peb2466.c ··· 11319 11319 M: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> 11320 11320 M: Kai Vehmanen <kai.vehmanen@linux.intel.com> 11321 11321 R: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev> 11322 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 11322 + L: linux-sound@vger.kernel.org 11323 11323 S: Supported 11324 11324 F: sound/soc/intel/ 11325 11325 ··· 12003 12003 12004 12004 IRON DEVICE AUDIO CODEC DRIVERS 12005 12005 M: Kiseok Jo <kiseok.jo@irondevice.com> 12006 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 12006 + L: linux-sound@vger.kernel.org 12007 12007 S: Maintained 12008 12008 F: Documentation/devicetree/bindings/sound/irondevice,* 12009 12009 F: sound/soc/codecs/sma* ··· 13954 13954 13955 13955 MAX9860 MONO AUDIO VOICE CODEC DRIVER 13956 13956 M: Peter Rosin <peda@axentia.se> 13957 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 13957 + L: linux-sound@vger.kernel.org 13958 13958 S: Maintained 13959 13959 F: Documentation/devicetree/bindings/sound/max9860.txt 13960 13960 F: sound/soc/codecs/max9860.* ··· 15087 15087 15088 15088 MICROCHIP AUDIO ASOC DRIVERS 15089 15089 M: Claudiu Beznea <claudiu.beznea@tuxon.dev> 15090 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 15090 + L: linux-sound@vger.kernel.org 15091 15091 S: Supported 15092 15092 F: Documentation/devicetree/bindings/sound/atmel* 15093 15093 F: Documentation/devicetree/bindings/sound/axentia,tse850-pcm5142.txt ··· 15959 15959 15960 15960 NATIVE INSTRUMENTS USB SOUND INTERFACE DRIVER 15961 15961 M: Daniel Mack <zonque@gmail.com> 15962 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 15962 + L: linux-sound@vger.kernel.org 15963 15963 S: Maintained 15964 15964 W: http://www.native-instruments.com 15965 15965 F: sound/usb/caiaq/ ··· 16730 16730 16731 16731 NXP SGTL5000 DRIVER 16732 16732 M: Fabio Estevam <festevam@gmail.com> 16733 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 16733 + L: linux-sound@vger.kernel.org 16734 16734 S: Maintained 16735 16735 F: Documentation/devicetree/bindings/sound/fsl,sgtl5000.yaml 16736 16736 F: sound/soc/codecs/sgtl5000* ··· 16754 16754 16755 16755 NXP TFA9879 DRIVER 16756 16756 M: Peter Rosin <peda@axentia.se> 16757 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 16757 + L: linux-sound@vger.kernel.org 16758 16758 S: Maintained 16759 16759 F: Documentation/devicetree/bindings/sound/nxp,tfa9879.yaml 16760 16760 F: sound/soc/codecs/tfa9879* ··· 16766 16766 16767 16767 NXP/Goodix TFA989X (TFA1) DRIVER 16768 16768 M: Stephan Gerhold <stephan@gerhold.net> 16769 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 16769 + L: linux-sound@vger.kernel.org 16770 16770 S: Maintained 16771 16771 F: Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml 16772 16772 F: sound/soc/codecs/tfa989x.c ··· 16852 16852 OMAP AUDIO SUPPORT 16853 16853 M: Peter Ujfalusi <peter.ujfalusi@gmail.com> 16854 16854 M: Jarkko Nikula <jarkko.nikula@bitmer.com> 16855 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 16855 + L: linux-sound@vger.kernel.org 16856 16856 L: linux-omap@vger.kernel.org 16857 16857 S: Maintained 16858 16858 F: sound/soc/ti/n810.c ··· 17409 17409 17410 17410 OPL4 DRIVER 17411 17411 M: Clemens Ladisch <clemens@ladisch.de> 17412 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 17412 + L: linux-sound@vger.kernel.org 17413 17413 S: Maintained 17414 17414 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 17415 17415 F: sound/drivers/opl4/ ··· 18792 18792 18793 18793 QCOM AUDIO (ASoC) DRIVERS 18794 18794 M: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 18795 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 18795 + L: linux-sound@vger.kernel.org 18796 18796 L: linux-arm-msm@vger.kernel.org 18797 18797 S: Supported 18798 18798 F: Documentation/devicetree/bindings/soc/qcom/qcom,apr* ··· 19654 19654 19655 19655 RENESAS IDT821034 ASoC CODEC 19656 19656 M: Herve Codina <herve.codina@bootlin.com> 19657 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 19657 + L: linux-sound@vger.kernel.org 19658 19658 S: Maintained 19659 19659 F: Documentation/devicetree/bindings/sound/renesas,idt821034.yaml 19660 19660 F: sound/soc/codecs/idt821034.c ··· 20405 20405 20406 20406 SAMSUNG AUDIO (ASoC) DRIVERS 20407 20407 M: Sylwester Nawrocki <s.nawrocki@samsung.com> 20408 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 20408 + L: linux-sound@vger.kernel.org 20409 20409 S: Maintained 20410 20410 B: mailto:linux-samsung-soc@vger.kernel.org 20411 20411 F: Documentation/devicetree/bindings/sound/samsung* ··· 20941 20941 20942 20942 SERIAL LOW-POWER INTER-CHIP MEDIA BUS (SLIMbus) 20943 20943 M: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 20944 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 20944 + L: linux-sound@vger.kernel.org 20945 20945 S: Maintained 20946 20946 F: Documentation/devicetree/bindings/slimbus/ 20947 20947 F: drivers/slimbus/ ··· 21375 21375 F: drivers/i2c/busses/i2c-synquacer.c 21376 21376 21377 21377 SOCIONEXT UNIPHIER SOUND DRIVER 21378 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 21378 + L: linux-sound@vger.kernel.org 21379 21379 S: Orphan 21380 21380 F: sound/soc/uniphier/ 21381 21381 ··· 21634 21634 21635 21635 SOUND - COMPRESSED AUDIO 21636 21636 M: Vinod Koul <vkoul@kernel.org> 21637 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 21637 + L: linux-sound@vger.kernel.org 21638 21638 S: Supported 21639 21639 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 21640 21640 F: Documentation/sound/designs/compress-offload.rst ··· 21697 21697 M: Bard Liao <yung-chuan.liao@linux.intel.com> 21698 21698 R: Pierre-Louis Bossart <pierre-louis.bossart@linux.dev> 21699 21699 R: Sanyog Kale <sanyog.r.kale@intel.com> 21700 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 21700 + L: linux-sound@vger.kernel.org 21701 21701 S: Supported 21702 21702 T: git git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire.git 21703 21703 F: Documentation/driver-api/soundwire/ ··· 22170 22170 22171 22171 STI AUDIO (ASoC) DRIVERS 22172 22172 M: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> 22173 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 22173 + L: linux-sound@vger.kernel.org 22174 22174 S: Maintained 22175 22175 F: Documentation/devicetree/bindings/sound/st,sti-asoc-card.txt 22176 22176 F: sound/soc/sti/ ··· 22191 22191 STM32 AUDIO (ASoC) DRIVERS 22192 22192 M: Olivier Moysan <olivier.moysan@foss.st.com> 22193 22193 M: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> 22194 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 22194 + L: linux-sound@vger.kernel.org 22195 22195 S: Maintained 22196 22196 F: Documentation/devicetree/bindings/iio/adc/st,stm32-dfsdm-adc.yaml 22197 22197 F: Documentation/devicetree/bindings/sound/st,stm32-*.yaml ··· 22894 22894 22895 22895 TEXAS INSTRUMENTS ASoC DRIVERS 22896 22896 M: Peter Ujfalusi <peter.ujfalusi@gmail.com> 22897 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 22897 + L: linux-sound@vger.kernel.org 22898 22898 S: Maintained 22899 22899 F: Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml 22900 22900 F: sound/soc/ti/ ··· 22903 22903 M: Shenghao Ding <shenghao-ding@ti.com> 22904 22904 M: Kevin Lu <kevin-lu@ti.com> 22905 22905 M: Baojun Xu <baojun.xu@ti.com> 22906 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 22906 + L: linux-sound@vger.kernel.org 22907 22907 S: Maintained 22908 22908 F: Documentation/devicetree/bindings/sound/tas2552.txt 22909 22909 F: Documentation/devicetree/bindings/sound/ti,tas2562.yaml ··· 23271 23271 TI LM49xxx FAMILY ASoC CODEC DRIVERS 23272 23272 M: M R Swami Reddy <mr.swami.reddy@ti.com> 23273 23273 M: Vishwas A Deshpande <vishwas.a.deshpande@ti.com> 23274 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 23274 + L: linux-sound@vger.kernel.org 23275 23275 S: Maintained 23276 23276 F: sound/soc/codecs/isabelle* 23277 23277 F: sound/soc/codecs/lm49453* ··· 23286 23286 23287 23287 TI PCM3060 ASoC CODEC DRIVER 23288 23288 M: Kirill Marinushkin <kmarinushkin@birdec.com> 23289 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 23289 + L: linux-sound@vger.kernel.org 23290 23290 S: Maintained 23291 23291 F: Documentation/devicetree/bindings/sound/pcm3060.txt 23292 23292 F: sound/soc/codecs/pcm3060* 23293 23293 23294 23294 TI TAS571X FAMILY ASoC CODEC DRIVER 23295 23295 M: Kevin Cernekee <cernekee@chromium.org> 23296 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 23296 + L: linux-sound@vger.kernel.org 23297 23297 S: Odd Fixes 23298 23298 F: sound/soc/codecs/tas571x* 23299 23299 ··· 23321 23321 23322 23322 TI TWL4030 SERIES SOC CODEC DRIVER 23323 23323 M: Peter Ujfalusi <peter.ujfalusi@gmail.com> 23324 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 23324 + L: linux-sound@vger.kernel.org 23325 23325 S: Maintained 23326 23326 F: sound/soc/codecs/twl4030* 23327 23327 ··· 23997 23997 23998 23998 USB MIDI DRIVER 23999 23999 M: Clemens Ladisch <clemens@ladisch.de> 24000 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 24000 + L: linux-sound@vger.kernel.org 24001 24001 S: Maintained 24002 24002 T: git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git 24003 24003 F: sound/usb/midi.* ··· 24657 24657 M: Anton Yakovlev <anton.yakovlev@opensynergy.com> 24658 24658 M: "Michael S. Tsirkin" <mst@redhat.com> 24659 24659 L: virtualization@lists.linux.dev 24660 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 24660 + L: linux-sound@vger.kernel.org 24661 24661 S: Maintained 24662 24662 F: include/uapi/linux/virtio_snd.h 24663 24663 F: sound/virtio/* ··· 25386 25386 XEN SOUND FRONTEND DRIVER 25387 25387 M: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> 25388 25388 L: xen-devel@lists.xenproject.org (moderated for non-subscribers) 25389 - L: alsa-devel@alsa-project.org (moderated for non-subscribers) 25389 + L: linux-sound@vger.kernel.org 25390 25390 S: Supported 25391 25391 F: sound/xen/* 25392 25392
+1 -1
include/sound/hdaudio.h
··· 590 590 void snd_hdac_stream_sync(struct hdac_stream *azx_dev, bool start, 591 591 unsigned int streams); 592 592 void snd_hdac_stream_timecounter_init(struct hdac_stream *azx_dev, 593 - unsigned int streams); 593 + unsigned int streams, bool start); 594 594 int snd_hdac_get_stream_stripe_ctl(struct hdac_bus *bus, 595 595 struct snd_pcm_substream *substream); 596 596
+1 -1
sound/aoa/codecs/onyx.c
··· 1040 1040 } 1041 1041 1042 1042 static const struct i2c_device_id onyx_i2c_id[] = { 1043 - { "MAC,pcm3052", 0 }, 1043 + { "MAC,pcm3052" }, 1044 1044 { } 1045 1045 }; 1046 1046 MODULE_DEVICE_TABLE(i2c,onyx_i2c_id);
+1 -1
sound/aoa/codecs/tas.c
··· 927 927 } 928 928 929 929 static const struct i2c_device_id tas_i2c_id[] = { 930 - { "MAC,tas3004", 0 }, 930 + { "MAC,tas3004" }, 931 931 { } 932 932 }; 933 933 MODULE_DEVICE_TABLE(i2c,tas_i2c_id);
+1 -1
sound/core/compress_offload.c
··· 288 288 289 289 stream = &data->stream; 290 290 guard(mutex)(&stream->device->lock); 291 - /* write is allowed when stream is running or has been steup */ 291 + /* write is allowed when stream is running or has been setup */ 292 292 switch (stream->runtime->state) { 293 293 case SNDRV_PCM_STATE_SETUP: 294 294 case SNDRV_PCM_STATE_PREPARED:
+2
sound/core/control.c
··· 1641 1641 count = info->owner; 1642 1642 if (count == 0) 1643 1643 count = 1; 1644 + if (count > MAX_CONTROL_COUNT) 1645 + return -EINVAL; 1644 1646 1645 1647 /* Arrange access permissions if needed. */ 1646 1648 access = info->access;
+10 -4
sound/core/init.c
··· 654 654 } 655 655 EXPORT_SYMBOL(snd_card_free); 656 656 657 + /* check, if the character is in the valid ASCII range */ 658 + static inline bool safe_ascii_char(char c) 659 + { 660 + return isascii(c) && isalnum(c); 661 + } 662 + 657 663 /* retrieve the last word of shortname or longname */ 658 664 static const char *retrieve_id_from_card_name(const char *name) 659 665 { 660 666 const char *spos = name; 661 667 662 668 while (*name) { 663 - if (isspace(*name) && isalnum(name[1])) 669 + if (isspace(*name) && safe_ascii_char(name[1])) 664 670 spos = name + 1; 665 671 name++; 666 672 } ··· 693 687 { 694 688 char *id = card->id; 695 689 696 - while (*nid && !isalnum(*nid)) 690 + while (*nid && !safe_ascii_char(*nid)) 697 691 nid++; 698 692 if (isdigit(*nid)) 699 693 *id++ = isalpha(*src) ? *src : 'D'; 700 694 while (*nid && (size_t)(id - card->id) < sizeof(card->id) - 1) { 701 - if (isalnum(*nid)) 695 + if (safe_ascii_char(*nid)) 702 696 *id++ = *nid; 703 697 nid++; 704 698 } ··· 793 787 794 788 for (idx = 0; idx < copy; idx++) { 795 789 c = buf[idx]; 796 - if (!isalnum(c) && c != '_' && c != '-') 790 + if (!safe_ascii_char(c) && c != '_' && c != '-') 797 791 return -EINVAL; 798 792 } 799 793 memcpy(buf1, buf, copy);
+2 -2
sound/core/oss/mixer_oss.c
··· 900 900 struct slot *p = chn->private_data; 901 901 if (p) { 902 902 if (p->allocated && p->assigned) { 903 - kfree_const(p->assigned->name); 904 - kfree_const(p->assigned); 903 + kfree(p->assigned->name); 904 + kfree(p->assigned); 905 905 } 906 906 kfree(p); 907 907 }
+1 -1
sound/core/oss/rate.c
··· 294 294 default: 295 295 break; 296 296 } 297 - return 0; /* silenty ignore other actions */ 297 + return 0; /* silently ignore other actions */ 298 298 } 299 299 300 300 int snd_pcm_plugin_build_rate(struct snd_pcm_substream *plug,
+1 -1
sound/core/pcm_native.c
··· 3115 3115 } c; 3116 3116 } __packed; 3117 3117 3118 - /* recalcuate the boundary within 32bit */ 3118 + /* recalculate the boundary within 32bit */ 3119 3119 static snd_pcm_uframes_t recalculate_boundary(struct snd_pcm_runtime *runtime) 3120 3120 { 3121 3121 snd_pcm_uframes_t boundary;
+1 -1
sound/core/sound.c
··· 133 133 /* /dev/aloadSEQ */ 134 134 snd_request_other(minor); 135 135 } 136 - mutex_lock(&sound_mutex); /* reacuire lock */ 136 + mutex_lock(&sound_mutex); /* reacquire lock */ 137 137 return snd_minors[minor]; 138 138 } 139 139 #else /* !CONFIG_MODULES */
+6 -1
sound/hda/hdac_stream.c
··· 657 657 * snd_hdac_stream_timecounter_init - initialize time counter 658 658 * @azx_dev: HD-audio core stream (master stream) 659 659 * @streams: bit flags of streams to set up 660 + * @start: true for PCM trigger start, false for other cases 660 661 * 661 662 * Initializes the time counter of streams marked by the bit flags (each 662 663 * bit corresponds to the stream index). ··· 665 664 * updated accordingly, too. 666 665 */ 667 666 void snd_hdac_stream_timecounter_init(struct hdac_stream *azx_dev, 668 - unsigned int streams) 667 + unsigned int streams, bool start) 669 668 { 670 669 struct hdac_bus *bus = azx_dev->bus; 671 670 struct snd_pcm_runtime *runtime = azx_dev->substream->runtime; 672 671 struct hdac_stream *s; 673 672 bool inited = false; 674 673 u64 cycle_last = 0; 674 + 675 + if (!start) 676 + goto skip; 675 677 676 678 list_for_each_entry(s, &bus->stream_list, list) { 677 679 if ((streams & (1 << s->index))) { ··· 686 682 } 687 683 } 688 684 685 + skip: 689 686 snd_pcm_gettime(runtime, &runtime->trigger_tstamp); 690 687 runtime->trigger_tstamp_latched = true; 691 688 }
+2 -2
sound/isa/gus/gus_pcm.c
··· 364 364 365 365 bpos = get_bpos(pcmp, voice, pos, len); 366 366 if (bpos < 0) 367 - return pos; 367 + return bpos; 368 368 if (copy_from_iter(runtime->dma_area + bpos, len, src) != len) 369 369 return -EFAULT; 370 370 return playback_copy_ack(substream, bpos, len); ··· 381 381 382 382 bpos = get_bpos(pcmp, voice, pos, len); 383 383 if (bpos < 0) 384 - return pos; 384 + return bpos; 385 385 snd_pcm_format_set_silence(runtime->format, runtime->dma_area + bpos, 386 386 bytes_to_samples(runtime, count)); 387 387 return playback_copy_ack(substream, bpos, len);
+1 -1
sound/pci/hda/cs35l41_hda_i2c.c
··· 39 39 } 40 40 41 41 static const struct i2c_device_id cs35l41_hda_i2c_id[] = { 42 - { "cs35l41-hda", 0 }, 42 + { "cs35l41-hda" }, 43 43 {} 44 44 }; 45 45
+1 -1
sound/pci/hda/hda_codec.c
··· 1734 1734 /** 1735 1735 * snd_hda_add_nid - Assign a NID to a control element 1736 1736 * @codec: HD-audio codec 1737 - * @nid: corresponding NID (optional) 1738 1737 * @kctl: the control element to assign 1739 1738 * @index: index to kctl 1739 + * @nid: corresponding NID (optional) 1740 1740 * 1741 1741 * Add the given control element to an array inside the codec instance. 1742 1742 * This function is used when #snd_hda_ctl_add cannot be used for 1:1
+1 -2
sound/pci/hda/hda_controller.c
··· 275 275 spin_lock(&bus->reg_lock); 276 276 /* reset SYNC bits */ 277 277 snd_hdac_stream_sync_trigger(hstr, false, sbits, sync_reg); 278 - if (start) 279 - snd_hdac_stream_timecounter_init(hstr, sbits); 278 + snd_hdac_stream_timecounter_init(hstr, sbits, start); 280 279 spin_unlock(&bus->reg_lock); 281 280 return 0; 282 281 }
+1 -1
sound/pci/hda/hda_controller.h
··· 28 28 #else 29 29 #define AZX_DCAPS_I915_COMPONENT 0 /* NOP */ 30 30 #endif 31 - #define AZX_DCAPS_AMD_ALLOC_FIX (1 << 14) /* AMD allocation workaround */ 31 + /* 14 unused */ 32 32 #define AZX_DCAPS_CTX_WORKAROUND (1 << 15) /* X-Fi workaround */ 33 33 #define AZX_DCAPS_POSFIX_LPIB (1 << 16) /* Use LPIB as default */ 34 34 #define AZX_DCAPS_AMD_WORKAROUND (1 << 17) /* AMD-specific workaround */
+2 -2
sound/pci/hda/hda_generic.c
··· 1383 1383 struct nid_path *path; 1384 1384 hda_nid_t pin = pins[i]; 1385 1385 1386 - if (!spec->obey_preferred_dacs) { 1386 + if (!spec->preferred_dacs) { 1387 1387 path = snd_hda_get_path_from_idx(codec, path_idx[i]); 1388 1388 if (path) { 1389 1389 badness += assign_out_path_ctls(codec, path); ··· 1395 1395 if (dacs[i]) { 1396 1396 if (is_dac_already_used(codec, dacs[i])) 1397 1397 badness += bad->shared_primary; 1398 - } else if (spec->obey_preferred_dacs) { 1398 + } else if (spec->preferred_dacs) { 1399 1399 badness += BAD_NO_PRIMARY_DAC; 1400 1400 } 1401 1401
-1
sound/pci/hda/hda_generic.h
··· 232 232 unsigned int power_down_unused:1; /* power down unused widgets */ 233 233 unsigned int dac_min_mute:1; /* minimal = mute for DACs */ 234 234 unsigned int suppress_vmaster:1; /* don't create vmaster kctls */ 235 - unsigned int obey_preferred_dacs:1; /* obey preferred_dacs assignment */ 236 235 237 236 /* other internal flags */ 238 237 unsigned int no_analog:1; /* digital I/O only */
+1 -9
sound/pci/hda/hda_intel.c
··· 40 40 41 41 #ifdef CONFIG_X86 42 42 /* for snoop control */ 43 - #include <linux/dma-map-ops.h> 44 43 #include <asm/set_memory.h> 45 44 #include <asm/cpufeature.h> 46 45 #endif ··· 306 307 307 308 /* quirks for ATI HDMI with snoop off */ 308 309 #define AZX_DCAPS_PRESET_ATI_HDMI_NS \ 309 - (AZX_DCAPS_PRESET_ATI_HDMI | AZX_DCAPS_AMD_ALLOC_FIX) 310 + (AZX_DCAPS_PRESET_ATI_HDMI | AZX_DCAPS_SNOOP_OFF) 310 311 311 312 /* quirks for AMD SB */ 312 313 #define AZX_DCAPS_PRESET_AMD_SB \ ··· 1705 1706 1706 1707 if (chip->driver_caps & AZX_DCAPS_SNOOP_OFF) 1707 1708 snoop = false; 1708 - 1709 - #ifdef CONFIG_X86 1710 - /* check the presence of DMA ops (i.e. IOMMU), disable snoop conditionally */ 1711 - if ((chip->driver_caps & AZX_DCAPS_AMD_ALLOC_FIX) && 1712 - !get_dma_ops(chip->card->dev)) 1713 - snoop = false; 1714 - #endif 1715 1709 1716 1710 chip->snoop = snoop; 1717 1711 if (!snoop) {
+27 -13
sound/pci/hda/patch_conexant.c
··· 166 166 167 167 static void cx_fixup_headset_recog(struct hda_codec *codec) 168 168 { 169 - unsigned int mic_persent; 169 + unsigned int mic_present; 170 170 171 171 /* fix some headset type recognize fail issue, such as EDIFIER headset */ 172 - /* set micbiasd output current comparator threshold from 66% to 55%. */ 172 + /* set micbias output current comparator threshold from 66% to 55%. */ 173 173 snd_hda_codec_write(codec, 0x1c, 0, 0x320, 0x010); 174 - /* set OFF voltage for DFET from -1.2V to -0.8V, set headset micbias registor 174 + /* set OFF voltage for DFET from -1.2V to -0.8V, set headset micbias register 175 175 * value adjustment trim from 2.2K ohms to 2.0K ohms. 176 176 */ 177 177 snd_hda_codec_write(codec, 0x1c, 0, 0x3b0, 0xe10); 178 178 /* fix reboot headset type recognize fail issue */ 179 - mic_persent = snd_hda_codec_read(codec, 0x19, 0, AC_VERB_GET_PIN_SENSE, 0x0); 180 - if (mic_persent & AC_PINSENSE_PRESENCE) 179 + mic_present = snd_hda_codec_read(codec, 0x19, 0, AC_VERB_GET_PIN_SENSE, 0x0); 180 + if (mic_present & AC_PINSENSE_PRESENCE) 181 181 /* enable headset mic VREF */ 182 182 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24); 183 183 else ··· 249 249 { 250 250 unsigned int mic_present; 251 251 252 - /* In cx8070 and sn6140, the node 16 can only be config to headphone or disabled, 253 - * the node 19 can only be config to microphone or disabled. 254 - * Check hp&mic tag to process headset pulgin&plugout. 252 + /* In cx8070 and sn6140, the node 16 can only be configured to headphone or disabled, 253 + * the node 19 can only be configured to microphone or disabled. 254 + * Check hp&mic tag to process headset plugin & plugout. 255 255 */ 256 256 mic_present = snd_hda_codec_read(codec, 0x19, 0, AC_VERB_GET_PIN_SENSE, 0x0); 257 257 if (!(mic_present & AC_PINSENSE_PRESENCE)) /* mic plugout */ ··· 816 816 {} 817 817 }; 818 818 819 + /* pincfg quirk for Tuxedo Sirius; 820 + * unfortunately the (PCI) SSID conflicts with System76 Pangolin pang14, 821 + * which has incompatible pin setup, so we check the codec SSID (luckily 822 + * different one!) and conditionally apply the quirk here 823 + */ 824 + static void cxt_fixup_sirius_top_speaker(struct hda_codec *codec, 825 + const struct hda_fixup *fix, 826 + int action) 827 + { 828 + /* ignore for incorrectly picked-up pang14 */ 829 + if (codec->core.subsystem_id == 0x278212b3) 830 + return; 831 + /* set up the top speaker pin */ 832 + if (action == HDA_FIXUP_ACT_PRE_PROBE) 833 + snd_hda_codec_set_pincfg(codec, 0x1d, 0x82170111); 834 + } 835 + 819 836 static const struct hda_fixup cxt_fixups[] = { 820 837 [CXT_PINCFG_LENOVO_X200] = { 821 838 .type = HDA_FIXUP_PINS, ··· 993 976 .v.pins = cxt_pincfg_sws_js201d, 994 977 }, 995 978 [CXT_PINCFG_TOP_SPEAKER] = { 996 - .type = HDA_FIXUP_PINS, 997 - .v.pins = (const struct hda_pintbl[]) { 998 - { 0x1d, 0x82170111 }, 999 - { } 1000 - }, 979 + .type = HDA_FIXUP_FUNC, 980 + .v.func = cxt_fixup_sirius_top_speaker, 1001 981 }, 1002 982 }; 1003 983
+6 -3
sound/pci/hda/patch_realtek.c
··· 587 587 switch (codec->core.vendor_id) { 588 588 case 0x10ec0236: 589 589 case 0x10ec0256: 590 + case 0x10ec0257: 590 591 case 0x19e58326: 591 592 case 0x10ec0283: 592 593 case 0x10ec0285: ··· 6645 6644 }; 6646 6645 struct alc_spec *spec = codec->spec; 6647 6646 6648 - if (action == HDA_FIXUP_ACT_PRE_PROBE) { 6647 + if (action == HDA_FIXUP_ACT_PRE_PROBE) 6649 6648 spec->gen.preferred_dacs = preferred_pairs; 6650 - spec->gen.obey_preferred_dacs = 1; 6651 - } 6652 6649 } 6653 6650 6654 6651 /* The DAC of NID 0x3 will introduce click/pop noise on headphones, so invalidate it */ ··· 10348 10349 SND_PCI_QUIRK(0x103c, 0x8896, "HP EliteBook 855 G8 Notebook PC", ALC285_FIXUP_HP_MUTE_LED), 10349 10350 SND_PCI_QUIRK(0x103c, 0x8898, "HP EliteBook 845 G8 Notebook PC", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST), 10350 10351 SND_PCI_QUIRK(0x103c, 0x88d0, "HP Pavilion 15-eh1xxx (mainboard 88D0)", ALC287_FIXUP_HP_GPIO_LED), 10352 + SND_PCI_QUIRK(0x103c, 0x88dd, "HP Pavilion 15z-ec200", ALC285_FIXUP_HP_MUTE_LED), 10351 10353 SND_PCI_QUIRK(0x103c, 0x8902, "HP OMEN 16", ALC285_FIXUP_HP_MUTE_LED), 10352 10354 SND_PCI_QUIRK(0x103c, 0x890e, "HP 255 G8 Notebook PC", ALC236_FIXUP_HP_MUTE_LED_COEFBIT2), 10353 10355 SND_PCI_QUIRK(0x103c, 0x8919, "HP Pavilion Aero Laptop 13-be0xxx", ALC287_FIXUP_HP_GPIO_LED), ··· 10490 10490 SND_PCI_QUIRK(0x103c, 0x8ca2, "HP ZBook Power", ALC236_FIXUP_HP_GPIO_LED), 10491 10491 SND_PCI_QUIRK(0x103c, 0x8ca4, "HP ZBook Fury", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), 10492 10492 SND_PCI_QUIRK(0x103c, 0x8ca7, "HP ZBook Fury", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), 10493 + SND_PCI_QUIRK(0x103c, 0x8caf, "HP Elite mt645 G8 Mobile Thin Client", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF), 10493 10494 SND_PCI_QUIRK(0x103c, 0x8cbd, "HP Pavilion Aero Laptop 13-bg0xxx", ALC245_FIXUP_HP_X360_MUTE_LEDS), 10494 10495 SND_PCI_QUIRK(0x103c, 0x8cdd, "HP Spectre", ALC287_FIXUP_CS35L41_I2C_2), 10495 10496 SND_PCI_QUIRK(0x103c, 0x8cde, "HP Spectre", ALC287_FIXUP_CS35L41_I2C_2), ··· 10843 10842 SND_PCI_QUIRK(0x17aa, 0x38cd, "Y790 VECO DUAL", ALC287_FIXUP_TAS2781_I2C), 10844 10843 SND_PCI_QUIRK(0x17aa, 0x38d2, "Lenovo Yoga 9 14IMH9", ALC287_FIXUP_YOGA9_14IMH9_BASS_SPK_PIN), 10845 10844 SND_PCI_QUIRK(0x17aa, 0x38d7, "Lenovo Yoga 9 14IMH9", ALC287_FIXUP_YOGA9_14IMH9_BASS_SPK_PIN), 10845 + SND_PCI_QUIRK(0x17aa, 0x38df, "Y990 YG DUAL", ALC287_FIXUP_TAS2781_I2C), 10846 10846 SND_PCI_QUIRK(0x17aa, 0x38f9, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2), 10847 10847 SND_PCI_QUIRK(0x17aa, 0x38fa, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2), 10848 10848 SND_PCI_QUIRK(0x17aa, 0x3902, "Lenovo E50-80", ALC269_FIXUP_DMIC_THINKPAD_ACPI), ··· 10880 10878 SND_PCI_QUIRK(0x1854, 0x048a, "LG gram 17 (17ZD90R)", ALC298_FIXUP_SAMSUNG_AMP_V2_4_AMPS), 10881 10879 SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MACH-WX9", ALC256_FIXUP_HUAWEI_MACH_WX9_PINS), 10882 10880 SND_PCI_QUIRK(0x19e5, 0x320f, "Huawei WRT-WX9 ", ALC256_FIXUP_ASUS_MIC_NO_PRESENCE), 10881 + SND_PCI_QUIRK(0x19e5, 0x3212, "Huawei KLV-WX9 ", ALC256_FIXUP_ACER_HEADSET_MIC), 10883 10882 SND_PCI_QUIRK(0x1b35, 0x1235, "CZC B20", ALC269_FIXUP_CZC_B20), 10884 10883 SND_PCI_QUIRK(0x1b35, 0x1236, "CZC TMI", ALC269_FIXUP_CZC_TMI), 10885 10884 SND_PCI_QUIRK(0x1b35, 0x1237, "CZC L101", ALC269_FIXUP_CZC_L101),
+1 -1
sound/pci/hda/tas2781_hda_i2c.c
··· 951 951 }; 952 952 953 953 static const struct i2c_device_id tas2781_hda_i2c_id[] = { 954 - { "tas2781-hda", 0 }, 954 + { "tas2781-hda" }, 955 955 {} 956 956 }; 957 957
-5
sound/soc/amd/acp/acp-sdw-sof-mach.c
··· 400 400 return ret; 401 401 } 402 402 403 - /* SoC card */ 404 - static const char sdw_card_long_name[] = "AMD Soundwire SOF"; 405 - 406 403 static int mc_probe(struct platform_device *pdev) 407 404 { 408 405 struct snd_soc_acpi_mach *mach = dev_get_platdata(&pdev->dev); ··· 459 462 " cfg-amp:%d", amp_num); 460 463 if (!card->components) 461 464 return -ENOMEM; 462 - 463 - card->long_name = sdw_card_long_name; 464 465 465 466 /* Register the card */ 466 467 ret = devm_snd_soc_register_card(card->dev, card);
+7
sound/soc/amd/yc/acp6x-mach.c
··· 448 448 .driver_data = &acp6x_card, 449 449 .matches = { 450 450 DMI_MATCH(DMI_BOARD_VENDOR, "HP"), 451 + DMI_MATCH(DMI_BOARD_NAME, "8A7F"), 452 + } 453 + }, 454 + { 455 + .driver_data = &acp6x_card, 456 + .matches = { 457 + DMI_MATCH(DMI_BOARD_VENDOR, "HP"), 451 458 DMI_MATCH(DMI_BOARD_NAME, "8B27"), 452 459 } 453 460 },
+3
sound/soc/atmel/mchp-pdmc.c
··· 302 302 if (!substream) 303 303 return -ENODEV; 304 304 305 + if (!substream->runtime) 306 + return 0; /* just for avoiding error from alsactl restore */ 307 + 305 308 map = mchp_pdmc_chmap_get(substream, info); 306 309 if (!map) 307 310 return -EINVAL;
+1 -1
sound/soc/codecs/cs35l45-tables.c
··· 315 315 { 0x3B, 24576000 }, 316 316 }; 317 317 318 - unsigned int cs35l45_get_clk_freq_id(unsigned int freq) 318 + int cs35l45_get_clk_freq_id(unsigned int freq) 319 319 { 320 320 int i; 321 321
+1 -1
sound/soc/codecs/cs35l45.h
··· 507 507 extern const struct regmap_config cs35l45_i2c_regmap; 508 508 extern const struct regmap_config cs35l45_spi_regmap; 509 509 int cs35l45_apply_patch(struct cs35l45_private *cs35l45); 510 - unsigned int cs35l45_get_clk_freq_id(unsigned int freq); 510 + int cs35l45_get_clk_freq_id(unsigned int freq); 511 511 int cs35l45_probe(struct cs35l45_private *cs35l45); 512 512 void cs35l45_remove(struct cs35l45_private *cs35l45); 513 513
+1 -1
sound/soc/codecs/lpass-rx-macro.c
··· 958 958 { CDC_RX_BCL_VBAT_PK_EST2, 0x01 }, 959 959 { CDC_RX_BCL_VBAT_PK_EST3, 0x40 }, 960 960 { CDC_RX_BCL_VBAT_RF_PROC1, 0x2A }, 961 - { CDC_RX_BCL_VBAT_RF_PROC1, 0x00 }, 961 + { CDC_RX_BCL_VBAT_RF_PROC2, 0x00 }, 962 962 { CDC_RX_BCL_VBAT_TAC1, 0x00 }, 963 963 { CDC_RX_BCL_VBAT_TAC2, 0x18 }, 964 964 { CDC_RX_BCL_VBAT_TAC3, 0x18 },
+4 -1
sound/soc/fsl/fsl_sai.c
··· 613 613 614 614 val_cr4 |= FSL_SAI_CR4_FRSZ(slots); 615 615 616 + /* Set to avoid channel swap */ 617 + val_cr4 |= FSL_SAI_CR4_FCONT; 618 + 616 619 /* Set to output mode to avoid tri-stated data pins */ 617 620 if (tx) 618 621 val_cr4 |= FSL_SAI_CR4_CHMOD; ··· 702 699 703 700 regmap_update_bits(sai->regmap, FSL_SAI_xCR4(tx, ofs), 704 701 FSL_SAI_CR4_SYWD_MASK | FSL_SAI_CR4_FRSZ_MASK | 705 - FSL_SAI_CR4_CHMOD_MASK, 702 + FSL_SAI_CR4_CHMOD_MASK | FSL_SAI_CR4_FCONT_MASK, 706 703 val_cr4); 707 704 regmap_update_bits(sai->regmap, FSL_SAI_xCR5(tx, ofs), 708 705 FSL_SAI_CR5_WNW_MASK | FSL_SAI_CR5_W0W_MASK |
+1
sound/soc/fsl/fsl_sai.h
··· 137 137 138 138 /* SAI Transmit and Receive Configuration 4 Register */ 139 139 140 + #define FSL_SAI_CR4_FCONT_MASK BIT(28) 140 141 #define FSL_SAI_CR4_FCONT BIT(28) 141 142 #define FSL_SAI_CR4_FCOMB_SHIFT BIT(26) 142 143 #define FSL_SAI_CR4_FCOMB_SOFT BIT(27)
+1
sound/soc/fsl/imx-card.c
··· 710 710 711 711 data->plat_data = plat_data; 712 712 data->card.dev = &pdev->dev; 713 + data->card.owner = THIS_MODULE; 713 714 714 715 dev_set_drvdata(&pdev->dev, &data->card); 715 716 snd_soc_card_set_drvdata(&data->card, data);
+12
sound/soc/intel/boards/sof_sdw.c
··· 800 800 char *cpu_dai_name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d Pin", i); 801 801 char *codec_name = devm_kasprintf(dev, GFP_KERNEL, "i2c-%s:0%d", 802 802 ssp_info->acpi_id, j++); 803 + if (!name || !cpu_dai_name || !codec_name) 804 + return -ENOMEM; 805 + 803 806 int playback = ssp_info->dais[0].direction[SNDRV_PCM_STREAM_PLAYBACK]; 804 807 int capture = ssp_info->dais[0].direction[SNDRV_PCM_STREAM_CAPTURE]; 805 808 ··· 869 866 for (i = 0; i < hdmi_num; i++) { 870 867 char *name = devm_kasprintf(dev, GFP_KERNEL, "iDisp%d", i + 1); 871 868 char *cpu_dai_name = devm_kasprintf(dev, GFP_KERNEL, "iDisp%d Pin", i + 1); 869 + if (!name || !cpu_dai_name) 870 + return -ENOMEM; 871 + 872 872 char *codec_name, *codec_dai_name; 873 873 874 874 if (intel_ctx->hdmi.idisp_codec) { ··· 882 876 codec_name = "snd-soc-dummy"; 883 877 codec_dai_name = "snd-soc-dummy-dai"; 884 878 } 879 + 880 + if (!codec_dai_name) 881 + return -ENOMEM; 885 882 886 883 ret = asoc_sdw_init_simple_dai_link(dev, *dai_links, be_id, name, 887 884 1, 0, // HDMI only supports playback ··· 909 900 SOF_BT_OFFLOAD_SSP_SHIFT; 910 901 char *name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d-BT", port); 911 902 char *cpu_dai_name = devm_kasprintf(dev, GFP_KERNEL, "SSP%d Pin", port); 903 + if (!name || !cpu_dai_name) 904 + return -ENOMEM; 905 + 912 906 int ret; 913 907 914 908 ret = asoc_sdw_init_simple_dai_link(dev, *dai_links, be_id, name,
+2
sound/soc/intel/common/soc-acpi-intel-arl-match.c
··· 191 191 .num_adr = ARRAY_SIZE(cs42l43_0_adr), 192 192 .adr_d = cs42l43_0_adr, 193 193 }, 194 + {} 194 195 }; 195 196 196 197 static const struct snd_soc_acpi_link_adr arl_cs42l43_l2[] = { ··· 200 199 .num_adr = ARRAY_SIZE(cs42l43_2_adr), 201 200 .adr_d = cs42l43_2_adr, 202 201 }, 202 + {} 203 203 }; 204 204 205 205 static const struct snd_soc_acpi_link_adr arl_cs42l43_l2_cs35l56_l3[] = {
+1
sound/soc/intel/common/soc-acpi-intel-rpl-match.c
··· 198 198 .num_adr = ARRAY_SIZE(cs42l43_0_adr), 199 199 .adr_d = cs42l43_0_adr, 200 200 }, 201 + {} 201 202 }; 202 203 203 204 static const struct snd_soc_acpi_link_adr rpl_sdca_3_in_1[] = {
+1
sound/soc/qcom/sm8250.c
··· 174 174 175 175 static const struct of_device_id snd_sm8250_dt_match[] = { 176 176 {.compatible = "qcom,sm8250-sndcard"}, 177 + {.compatible = "qcom,qrb4210-rb2-sndcard"}, 177 178 {.compatible = "qcom,qrb5165-rb5-sndcard"}, 178 179 {} 179 180 };
+2 -2
sound/soc/soc-topology.c
··· 889 889 return ret; 890 890 891 891 /* register dynamic object */ 892 - sbe = (struct soc_bytes_ext *)&kc.private_value; 892 + sbe = (struct soc_bytes_ext *)kc.private_value; 893 893 894 894 INIT_LIST_HEAD(&sbe->dobj.list); 895 895 sbe->dobj.type = SND_SOC_DOBJ_BYTES; ··· 923 923 return ret; 924 924 925 925 /* register dynamic object */ 926 - sm = (struct soc_mixer_control *)&kc.private_value; 926 + sm = (struct soc_mixer_control *)kc.private_value; 927 927 928 928 INIT_LIST_HEAD(&sm->dobj.list); 929 929 sm->dobj.type = SND_SOC_DOBJ_MIXER;
+1 -1
sound/usb/line6/podhd.c
··· 507 507 [LINE6_PODHD500X] = { 508 508 .id = "PODHD500X", 509 509 .name = "POD HD500X", 510 - .capabilities = LINE6_CAP_CONTROL 510 + .capabilities = LINE6_CAP_CONTROL | LINE6_CAP_HWMON_CTL 511 511 | LINE6_CAP_PCM | LINE6_CAP_HWMON, 512 512 .altsetting = 1, 513 513 .ep_ctrl_r = 0x81,
+4
sound/usb/quirks.c
··· 2221 2221 QUIRK_FLAG_DISABLE_AUTOSUSPEND), 2222 2222 DEVICE_FLG(0x17aa, 0x104d, /* Lenovo ThinkStation P620 Internal Speaker + Front Headset */ 2223 2223 QUIRK_FLAG_DISABLE_AUTOSUSPEND), 2224 + DEVICE_FLG(0x1852, 0x5062, /* Luxman D-08u */ 2225 + QUIRK_FLAG_ITF_USB_DSD_DAC | QUIRK_FLAG_CTL_MSG_DELAY), 2224 2226 DEVICE_FLG(0x1852, 0x5065, /* Luxman DA-06 */ 2225 2227 QUIRK_FLAG_ITF_USB_DSD_DAC | QUIRK_FLAG_CTL_MSG_DELAY), 2226 2228 DEVICE_FLG(0x1901, 0x0191, /* GE B850V3 CP2114 audio interface */ ··· 2281 2279 QUIRK_FLAG_GENERIC_IMPLICIT_FB), 2282 2280 DEVICE_FLG(0x2b53, 0x0031, /* Fiero SC-01 (firmware v1.1.0) */ 2283 2281 QUIRK_FLAG_GENERIC_IMPLICIT_FB), 2282 + DEVICE_FLG(0x2d95, 0x8011, /* VIVO USB-C HEADSET */ 2283 + QUIRK_FLAG_CTL_MSG_DELAY_1M), 2284 2284 DEVICE_FLG(0x2d95, 0x8021, /* VIVO USB-C-XE710 HEADSET */ 2285 2285 QUIRK_FLAG_CTL_MSG_DELAY_1M), 2286 2286 DEVICE_FLG(0x30be, 0x0101, /* Schiit Hel */
+4
tools/testing/selftests/alsa/Makefile
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 2 # 3 + ifneq ($(shell pkg-config --exists alsa && echo 0 || echo 1),0) 4 + $(error Package alsa not found, please install alsa development package or \ 5 + add directory containing `alsa.pc` in PKG_CONFIG_PATH) 6 + endif 3 7 4 8 CFLAGS += $(shell pkg-config --cflags alsa) $(KHDR_INCLUDES) 5 9 LDLIBS += $(shell pkg-config --libs alsa)