aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-11-28ASoC: davinci-mcasp: Update PDIR (pin direction) register handlingPeter Ujfalusi2-32/+85
When McASP is master and the PDIR for the clock pins are configured as outputs before the clocking is configured it will output whatever clock is generated at the moment internally. The clock will switch to the correct rate only when the we start the clock generators. To avoid this we must only set the pin as output after the clock is configured and enabled. AXR pins configured as outputs behaves somehow interesting as well: when McASP is not enabled and the pin is selected as output it will not honor the DISMOD settings for the inactive state, but will pull the pin down. Add a new bitfield and mark the pins there which needs to be output and set the pins only at the time when they will behave correctly. On stream stop configure the pins back to input which makes them to obey the global pin configuration regarding to pull up/down. Signed-off-by: Peter Ujfalusi <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-28ASoC: davinci-mcasp: Clear TXSTAT register before activating serializersPeter Ujfalusi1-0/+2
Follow the guideline from the TRM: Before starting, clear the respective transmitter and receiver status registers To avoid stale state stored in the status registers. Signed-off-by: Peter Ujfalusi <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-28ASoC: Intel: Skylake: Add FW reply for MCLK/SCLK IPCSubhransu S. Prusty1-0/+6
If mclk/sclk is already running, FW responds with IPC reply MCLK/SCLK already running. Add these to the IPC reply lookup table. Signed-off-by: Subhransu S. Prusty <[email protected]> Signed-off-by: Sriram Periyasamy <[email protected]> Signed-off-by: Vinod Koul <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-28ASoC: Intel: Skylake: Make DSP replies more human readableSubhransu S. Prusty1-11/+33
Add more meaning to the IPC replies for easy debugging. Replace the switch case with a lookup table to lookup for the IPC replies and print in human readable form. Signed-off-by: Subhransu S. Prusty <[email protected]> Signed-off-by: Sriram Periyasamy <[email protected]> Signed-off-by: Vinod Koul <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-28ASoC: rsnd: tidyup registering method for rsnd_kctrl_new()Kuninori Morimoto2-8/+12
Current rsnd dvc.c is using flags to avoid duplicating register for MIXer case. OTOH, commit e894efef9ac7 ("ASoC: core: add support to card rebind") allows to rebind sound card without rebinding all drivers. Because of above patch and dvc.c flags, it can't re-register kctrl if only sound card was rebinded, because dvc is keeping old flags. (Of course it will be no problem if rsnd driver also be rebinded, but it is not purpose of above patch). This patch checks current card registered kctrl when registering. In MIXer case, it can avoid duplicate register if card already has same kctrl. In rebind case, it can re-register kctrl because card registered kctl had been removed when unbinding. This patch is updated version of commit b918f1bc7f1ce ("ASoC: rsnd: DVC kctrl sets once") Reported-by: Nguyen Viet Dung <[email protected]> Signed-off-by: Kuninori Morimoto <[email protected]> Tested-by: Nguyen Viet Dung <[email protected]> Cc: Hiroyuki Yokoyama <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-26ASoC: max9867: Fix whitespaceLadislav Michl1-7/+5
Minor changes to match coding style. Signed-off-by: Ladislav Michl <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-26ASoC: soc.h: makes snd_soc_of_parse_audio_prefix() inlineKuninori Morimoto1-3/+9
commit 3b7103562c03c ("ASoC: soc-core: add snd_soc_of_parse_node_prefix()") maked snd_soc_of_parse_audio_prefix() as #define. But it'd be better to make this a static inline rather than a #define. It helps with error messages and type safety. This patch makes it inline. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-26ASoC: rsnd: tidyup for SSIU subnodeKuninori Morimoto1-0/+5
commit da48a6eb82ea2 ("ASoC: rsnd: add SSIU BUSIF support for Document") updated Documentation for SSIU, but 1) we want to keep old/deprecated DMA description, 2) it is missing SSIU subnode properties. This patch tidyup these Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-26ASoC: amd: Fix a NULL vs IS_ERR() check in probeDan Carpenter1-2/+2
The platform_device_register_full() function doesn't return NULL, it returns error pointers. Fixes: 7894a7e7ea3d ("ASoC: amd: create ACP3x PCM platform device") Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLEPeter Ujfalusi1-0/+9
We need to block sleep states which would require longer time to leave than the time the DMA must react to the DMA request in order to keep the FIFO serviced without overrun. Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Jarkko Nikula <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLEPeter Ujfalusi1-1/+42
We need to block sleep states which would require longer time to leave than the time the DMA must react to the DMA request in order to keep the FIFO serviced without under of overrun. Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Jarkko Nikula <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: omap-mcbsp: Fix latency value calculation for pm_qosPeter Ujfalusi1-3/+3
The latency number is in usec for the pm_qos. Correct the calculation to give us the time in usec Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Jarkko Nikula <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-card: tidyup define positionKuninori Morimoto1-5/+5
commit f986907c9225 ("ASoC: audio-graph-card: add widgets and routing for external amplifier support") added new function asoc_graph_card_outdrv_event(), but the inserted position breaks define area. This patch tidyup it Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-card: tidyup typo SND_AUDIO_GRAPH_CARDKuninori Morimoto1-1/+1
1 "simple" is enough on Kconfig help Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-scu-card: tidyup asoc_simple_card_parse_daifmt() timingKuninori Morimoto1-38/+16
Current audio-graph-scu-card driver is parsing codec position for DPCM and consider DAI format. But, current operation is doing totally pointless, because 1) asoc_simple_card_parse_daifmt() will be called not only for 1st codec on current implementation, and it will be used as fixed format 2) it should be called for each CPU/Codec pair. Let's tidyup asoc_simple_card_parse_daifmt() timing. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsingKuninori Morimoto1-0/+7
audio-graph-scu-card.c is supporting "convert-rate/channels" which is used for DPCM. But, sound card might have multi codecs, and each codec might need each convert-rate/channels. This patch supports each codec's convert-rate/channles support. top node convert-rate/channels will overwrite settings if exist. It can't support each codec's convert-rate/channels if sound card had multi codecs without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsing on DocKuninori Morimoto1-1/+1
audio-graph-scu-card.c is supporting "convert-rate/channels" which is used for DPCM. But, sound card might have multi codecs, and each codec might need each convert-rate/channels. This patch supports each codec's convert-rate/channles support. top node convert-rate/channels will overwrite settings if exist. It can't support each codec's convert-rate/channels if sound card had multi codecs without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-scu-card: tidyup "prefix" parsingKuninori Morimoto1-0/+10
audio-graph-scu-card.c is supporting "prefix" which is used to avoid DAI naming conflict when CPU/Codec matching. But, sound card might have multi sub-devices, and each codec might need each prefix. Now, ASoC is supporting snd_soc_of_parse_node_prefix(), let's support it on audio-graph-scu-card, too. It is keeping existing DT style. It can't support each codec's prefix if sound card had multi sub-devices without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: audio-graph-scu-card: tidyup "prefix" parsing on DocKuninori Morimoto1-1/+1
audio-graph-scu-card.c is supporting "prefix" which is used to avoid DAI naming conflict when CPU/Codec matching. But, sound card might have multi sub-devices, and each codec might need each prefix. Now, ASoC is supporting snd_soc_of_parse_node_prefix(), let's support it on audio-graph-scu-card, too. It is keeping existing DT style. It can't support each codec's prefix if sound card had multi sub-devices without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: simple-scu-card: tidyup "prefix" parsingKuninori Morimoto1-0/+7
simple-scu-card.c is supporting "prefix" which is used to avoid DAI naming conflict when CPU/Codec matching. But, sound card might have multi sub-devices, and each codec might need each prefix. Now, ASoC is supporting snd_soc_of_parse_node_prefix(), let's support it on audio-graph-scu-card, too. It is keeping existing DT style. It can't support each codec's prefix if sound card had multi sub-devices without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: simple-scu-card: tidyup "prefix" parsing on DocKuninori Morimoto1-1/+1
simple-scu-card.c is supporting "prefix" which is used to avoid DAI naming conflict when CPU/Codec matching. But, sound card might have multi sub-devices, and each codec might need each prefix. Now, ASoC is supporting snd_soc_of_parse_node_prefix(), let's support it on audio-graph-scu-card, too. It is keeping existing DT style. It can't support each codec's prefix if sound card had multi sub-devices without this patch. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: soc-core: add snd_soc_of_parse_node_prefix()Kuninori Morimoto2-7/+10
Current ASoC has snd_soc_of_parse_audio_prefix() to get codec_conf settings from DT which is used to avoid DAI naming conflict when CPU/Codec matching. Currently, it is parsing from "top node", but, we want to parse from "each sub node" if sound card had multi cpus/codecs. This patch adds new snd_soc_of_parse_node_prefix() to allow parsing settings from selected node. It is keeping existing snd_soc_of_parse_audio_prefix() by using macro. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: simple-amplifier: add VCC regulator widgetVasily Khoruzhick1-0/+4
Amplifier may have assosicated regulator, so add a widget for it and appropriate route. Signed-off-by: Vasily Khoruzhick <[email protected]> Signed-off-by: Chen-Yu Tsai <[email protected]> Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: dt-bindings: add regulator property to simple amplifierVasily Khoruzhick1-0/+5
Amplifier may have associated regulator, so add a property for it. Signed-off-by: Vasily Khoruzhick <[email protected]> Signed-off-by: Chen-Yu Tsai <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supplyChen-Yu Tsai1-0/+2
On the Allwinner A64 SoCs, the audio codec has a built-in headphone amplifier. This amplifier has a power supply separate from the rest of the analog audio circuitry, labeled cpvdd. This patch adds a DAPM widget for this supply, and ties it to the headphone amp widget. Signed-off-by: Chen-Yu Tsai <[email protected]> Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-23ASoC: dt-bindings: sun50i-codec-analog: Add headphone amp regulator supplyChen-Yu Tsai1-0/+2
On the Allwinner A64 SoC, the audio codec has a built-in headphone amplifier. This amplifier has a power supply separate from the rest of the analog audio circuitry. Add a regulator supply property to handle this. Signed-off-by: Chen-Yu Tsai <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: simple_card_utils: remove "option" from ↵Kuninori Morimoto6-13/+8
asoc_simple_card_of_parse_routing() asoc_simple_card_of_parse_routing() had "option" parameter to consider error handling, but it is very pointless parameter. Let's remove it. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: simple-card-utils: tidyup asoc_simple_card_parse_convert()Kuninori Morimoto4-5/+7
Current simple-card-utils has asoc_simple_card_parse_convert() to parse convert channel/rate for be_hw_params_fixup. But, it is parsing from top of node. If sound card had multi subnode, we need to parse it from each sub node. This patch tidyup asoc_simple_card_parse_convert() to allow parsing settings from each node. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: simple-card-utils: accept NULL parameter on asoc_simple_card_xxx()Kuninori Morimoto1-2/+9
If simple-card-utils accept NULL pointer on asoc_simple_card_xxx(), each driver code will be more simple. Let's accept NULL pointer. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: simple-card-utils: remove asoc_simple_card_clk_register()Kuninori Morimoto1-7/+1
asoc_simple_card_clk_register() is used but only 1 user, and very pointless code. Let's remove it. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: rsnd: makes rsnd_ssi_is_dma_mode() staticKuninori Morimoto2-3/+3
ssi.c only is using rsnd_ssi_is_dma_mode(). Let's move it as static function. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: rsnd: tidyup rsnd_parse_connect_ssiu_compatible()Kuninori Morimoto1-2/+4
rsnd_parse_connect_ssiu_compatible() is doing - using rsnd_ssiu_id(), but we use it via rsnd_mod_id() - we can break loop if rsnd_dai_connect() was called This patch fixup these. Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: rsnd: Add device tree support for r8a77995Hiroyuki Yokoyama1-0/+1
Simply document new compat strings. There appears to be no need for a driver updates. Signed-off-by: Hiroyuki Yokoyama <[email protected]> Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: sdm845: Add support for Secondary MI2S interfaceRohit kumar1-0/+18
Add support to configure bit clock for secondary MI2S TX interface. Signed-off-by: Rohit kumar <[email protected]> Acked-by: Srinivas Kandagatla <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-21ASoC: sdm845: Update slot_width for Quaternary TDM portRohit kumar1-4/+5
Change slot_width for quaternary TDM port to 16 and update bclk rate for TDM and MI2S interfaces accordingly. Signed-off-by: Rohit kumar <[email protected]> Acked-by: Srinivas Kandagatla <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-20ASoC: Intel: use platform_data for machine driversPierre-Louis Bossart6-8/+15
For some reason we have different mechanisms for passing data to machine drivers. Use the solution used by Atom/SST and SOF instead of using drv_data as done by Skylake. Signed-off-by: Pierre-Louis Bossart <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-20ASoC: Intel: fix interface for Chromebook machine driversPierre-Louis Bossart7-24/+22
The changes for HDaudio overlooked the fact that the machine drivers used for Chromebooks rely on the dmic number information passed as pdata. Add dmic_num field to standard interface and use standard interface instead of SKL-specific one. Also clean-up pdata definition to remove fields that are no longer used. Fixes: 842bb5135f10 ('ASoC: Intel: use standard interface for Hdaudio machine driver') Signed-off-by: Pierre-Louis Bossart <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-20ASoC: acpi: fix: continue searching when machine is ignoredKeyon Jie1-2/+8
The machine_quirk may return NULL which means the acpi entries should be skipped and search for next matched entry is needed, here add return check here and continue for NULL case. Signed-off-by: Keyon Jie <[email protected]> Signed-off-by: Pierre-Louis Bossart <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-20ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optionalPierre-Louis Bossart3-15/+55
The Skylake driver currently has a set of problems supporting load/unload modules. We need to make the HDaudio codec support optional to help narrow down the issues. Support for HDaudio codecs also leads to a Kconfig issue. We want the hdac_hda codec to be compilable independently of Skylake (e.g. with ALL_CODECS) but when Skylake is selected as built-in the hdac_hda codec needs to use the same option due a a code dependency Solve both problems by adding a user-selectable boolean Kconfig, select HDAC_HDA as needed and make the HDaudio codec support in the Skylake driver optional. Tests on a Chell Chromebook device without HDaudio show no regression for speaker and HDMI playback. This is submitted as an RFC to allow for comments and more validation. Signed-off-by: Pierre-Louis Bossart <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-20ASoC: tlv320aic3x: Add support for CBM_CFS and CBS_CFM clocking modesPeter Ujfalusi1-0/+10
The codec can support any variation of bclk/fs master/slave configuration. Signed-off-by: Peter Ujfalusi <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-19MAINTAINERS: add ASoC maintainers for sound dt-bindingsClément Péron1-0/+1
Sound dt-bindings are applied by ASoC maintainers and should be submit to ASoC list in addition to the devicetree list. Hence, add this information into the MAINTAINERS file. Signed-off-by: Clément Péron <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: rt5663: Fix error handling of regulator_set_loadCheng-Yi Chiang1-9/+12
The default implementation of regulator_set_load returns REGULATOR_MODE_NORMAL, which is positive. [This was a bug which is being fixed but the change is valid anyway -- bronie] rt5663_i2c_probe should only do error handling when return value of regulator_set_load is negative. In this case, rt5663_i2c_probe should return error. Also, consolidate err_irq into err_enable. Fix the missing goto for temporary regmap and rt5663->regmap. Signed-off-by: Cheng-Yi Chiang <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: amd: fix spelling mistake "Inavlid" -> "Invalid"Colin Ian King1-1/+1
There is a spelling mistake in a dev_err message. Fix this. Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: qcom: clean up indentation, remove extraneous tabColin Ian King1-1/+1
The return statement is indented too much by one level, fix this by removing the extraneous tab. Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: arizona: fix indentation issue with return statementColin Ian King1-1/+1
The return statement is indented incorrectly. Fix this by adding in the missing tab. Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: tlv320dac33: clean up indentation, remove extraneous tabColin Ian King1-1/+1
The goto statement is indented too much by one level, fix this by removing the extraneous tab. Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: tlv320aic31xx: asihpi: clean up indentation, remove extraneous tabColin Ian King1-1/+1
The return statement is indented too much by one level, fix this by removing an extraneous tab. Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: Convert a few more users to using %pOFn instead of device_node.nameRob Herring3-6/+6
In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Liam Girdwood <[email protected]> Cc: Mark Brown <[email protected]> Cc: Jaroslav Kysela <[email protected]> Cc: Takashi Iwai <[email protected]> Cc: Olivier Moysan <[email protected]> Cc: Arnaud Pouliquen <[email protected]> Cc: Maxime Coquelin <[email protected]> Cc: Alexandre Torgue <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Signed-off-by: Rob Herring <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-16ASoC: rt5663: Add documentation for power supply supportCheng-Yi Chiang1-0/+6
rt5663 codec driver will support setting CPVDD and AVDD power supply from device tree. Signed-off-by: Cheng-Yi Chiang <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2018-11-15ASoC: Add documentation for pcm3060 property out-single-endedKirill Marinushkin1-0/+6
Output of pcm3060 codec may be configured as single-ended or differential Signed-off-by: Kirill Marinushkin <[email protected]> Signed-off-by: Mark Brown <[email protected]>