Mark Brown [Thu, 13 Jul 2023 00:13:58 +0000 (01:13 +0100)]
ASoC: wm8988: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8988 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:57 +0000 (01:13 +0100)]
ASoC: wm8985: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8985 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:56 +0000 (01:13 +0100)]
ASoC: wm8983: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8983 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:55 +0000 (01:13 +0100)]
ASoC: wm8978: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8978 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:54 +0000 (01:13 +0100)]
ASoC: wm8971: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8971 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:53 +0000 (01:13 +0100)]
ASoC: wm8955: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8955 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:52 +0000 (01:13 +0100)]
ASoC: wm8940: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the w8940 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:51 +0000 (01:13 +0100)]
ASoC: wm8996: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8996 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:50 +0000 (01:13 +0100)]
ASoC: wm8995: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8995 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:49 +0000 (01:13 +0100)]
ASoC: wm8993: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8993 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:48 +0000 (01:13 +0100)]
ASoC: wm8991: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8991 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:47 +0000 (01:13 +0100)]
ASoC: wm8962: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8962 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:46 +0000 (01:13 +0100)]
ASoC: wm8961: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8961 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:45 +0000 (01:13 +0100)]
ASoC: wm8960: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8960 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:44 +0000 (01:13 +0100)]
ASoC: wm8904: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8904 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:43 +0000 (01:13 +0100)]
ASoC: wm8903: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8903 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:42 +0000 (01:13 +0100)]
ASoC: wm8900: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8900 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:41 +0000 (01:13 +0100)]
ASoC: wm8804: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8804 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:40 +0000 (01:13 +0100)]
ASoC: wm8776: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8776 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:39 +0000 (01:13 +0100)]
ASoC: wm8770: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8770 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:38 +0000 (01:13 +0100)]
ASoC: wm8753: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8753 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:37 +0000 (01:13 +0100)]
ASoC: wm8750: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8750 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:36 +0000 (01:13 +0100)]
ASoC: wm8741: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8741 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:35 +0000 (01:13 +0100)]
ASoC: wm8737: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8737 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:34 +0000 (01:13 +0100)]
ASoC: wm8731: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8731 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:33 +0000 (01:13 +0100)]
ASoC: wm8728: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8728 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:32 +0000 (01:13 +0100)]
ASoC: wm8711: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8711 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:31 +0000 (01:13 +0100)]
ASoC: wm8580: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8580 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:30 +0000 (01:13 +0100)]
ASoC: wm8523: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8523 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:29 +0000 (01:13 +0100)]
ASoC: wm8510: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm8510 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:28 +0000 (01:13 +0100)]
ASoC: wm9090: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm9090 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:27 +0000 (01:13 +0100)]
ASoC: wm9081: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm9081 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:26 +0000 (01:13 +0100)]
ASoC: wm5100: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm5100 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:25 +0000 (01:13 +0100)]
ASoC: wm2200: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wm2200 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:24 +0000 (01:13 +0100)]
ASoC: cs4349: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs4349 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:23 +0000 (01:13 +0100)]
ASoC: cs42xx8: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs42xx8 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:22 +0000 (01:13 +0100)]
ASoC: cs42l56: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs42l56 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:21 +0000 (01:13 +0100)]
ASoC: cs42l52: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs42l52 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:20 +0000 (01:13 +0100)]
ASoC: cs4270: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs4270 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:19 +0000 (01:13 +0100)]
ASoC: cs4265: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs4265 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:18 +0000 (01:13 +0100)]
ASoC: cs42l51: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs42l51 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:17 +0000 (01:13 +0100)]
ASoC: cs35l56: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs35l56 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:16 +0000 (01:13 +0100)]
ASoC: cs35l45: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs35l45 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:15 +0000 (01:13 +0100)]
ASoC: cs35l41: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs35l41 driver to use the more modern data structure.
Mark Brown [Thu, 13 Jul 2023 00:13:14 +0000 (01:13 +0100)]
ASoC: cs35l36: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the cs35l36 driver to use the more modern data structure.
Frank Li [Thu, 13 Jul 2023 22:25:12 +0000 (18:25 -0400)]
ASoC: codec: wm8960: add additional probe check for codec identification
The wm8960 codec is not readable, resulting in a NACK for address 0x3d (8-bit).
This can partially indicate it. For example: wm8962 codec use the same address
but is readable. This additional probe check will help prevent loading the wm8960
module incorrectly on wm8962 hardware.
Mark Brown [Mon, 17 Jul 2023 21:58:36 +0000 (22:58 +0100)]
ASoC: qcom: Use the maple tree register cache
Merge series from Mark Brown <broonie@kernel.org>:
The maple tree register cache should now be a good replacement for the
rbtree cache in almost all situations, update the Qualcomm CODEC drivers
to use the newer cache.
Rob Herring [Fri, 7 Jul 2023 22:17:25 +0000 (16:17 -0600)]
ASoC: dt-bindings: audio-graph-card2: Drop incomplete example
The example in audio-graph-card2 binding is incomplete, uses
undocumented compatibles strings, and doesn't follow typical .dts
formatting. Rather than try to fix with what would probably be a lengthy
example, just drop the example.
Yangtao Li [Tue, 11 Jul 2023 03:48:45 +0000 (11:48 +0800)]
ASoC: tegra: tegra20_ac97: Use devm_platform_get_and_ioremap_resource()
Convert platform_get_resource(), devm_ioremap_resource() to a single
call to devm_platform_get_and_ioremap_resource(), as this is exactly
what this function does.
Yangtao Li [Tue, 11 Jul 2023 03:48:44 +0000 (11:48 +0800)]
ASoC: pxa: Use devm_platform_get_and_ioremap_resource()
Convert platform_get_resource(), devm_ioremap_resource() to a single
call to devm_platform_get_and_ioremap_resource(), as this is exactly
what this function does.
Mark Brown [Wed, 12 Jul 2023 18:29:35 +0000 (19:29 +0100)]
ASoC: wsa883x: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wsa883x driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 18:29:34 +0000 (19:29 +0100)]
ASoC: wsa881x: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wsa881x driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 18:29:33 +0000 (19:29 +0100)]
ASoC: wcd938x: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wcd938x driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 18:29:32 +0000 (19:29 +0100)]
ASoC: wcd9335: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the wcd9335 driver to use the more modern data structure.
Zhu Ning [Fri, 14 Jul 2023 03:24:49 +0000 (11:24 +0800)]
ASoC: codecs: ES8326: Add es8326_mute function
The internal analog power and hp Vref of es8326 should always be on to
reduce pop noise. The HP_VOL and HP_CAL are moved to es8326_mute function
so they are turned on at last and turned off at first.
Also, the calibration should be done manually once during start-up
to reduce DC offset on headphone.
Mark Brown [Thu, 13 Jul 2023 20:23:23 +0000 (21:23 +0100)]
ASoC: ad: Update Analog Devices drivers to maple tree
Merge series from Mark Brown <broonie@kernel.org>:
The maple tree register cache has now got to feature parity with the
rbtree cache, there are some different tradeoffs made and it should be a
better choice for most modern systems. Convert the Analog Devices
drivers to use the more modern data structure.
Signed-off-by: Mark Brown <broonie@kernel.org>
---
Mark Brown (10):
ASoC: ad1836: Update to use maple tree register cache
ASoC: ad1980: Update to use maple tree register cache
ASoC: adau1372: Update to use maple tree register cache
ASoC: adau1373: Update to use maple tree register cache
ASoC: adau1701: Update to use maple tree register cache
ASoC: adau1761: Update to use maple tree register cache
ASoC: adau1781: Update to use maple tree register cache
ASoC: adau1977: Update to use maple tree register cache
ASoC: adau7118: Update to use maple tree register cache
ASoC: adav80x: Update to use maple tree register cache
Mark Brown [Wed, 12 Jul 2023 23:13:59 +0000 (00:13 +0100)]
ASoC: adav80x: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adav80x driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:58 +0000 (00:13 +0100)]
ASoC: adau7118: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau7118 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:57 +0000 (00:13 +0100)]
ASoC: adau1977: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1977 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:56 +0000 (00:13 +0100)]
ASoC: adau1781: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1781 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:55 +0000 (00:13 +0100)]
ASoC: adau1761: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1761 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:54 +0000 (00:13 +0100)]
ASoC: adau1701: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1701 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:53 +0000 (00:13 +0100)]
ASoC: adau1373: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1373 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:52 +0000 (00:13 +0100)]
ASoC: adau1372: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the adau1382 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:51 +0000 (00:13 +0100)]
ASoC: ad1980: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the ad1980 driver to use the more modern data structure.
Mark Brown [Wed, 12 Jul 2023 23:13:50 +0000 (00:13 +0100)]
ASoC: ad1836: Update to use maple tree register cache
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.
Update the ad1836 driver to use the more modern data structure.
This configuration supports JSL boards which implement ALC5650 dual
I2S interface codec. Two DAI links are added: AIF1 (on codec side) for
headphone and AIF2 for speakers.
Mark Brown [Wed, 12 Jul 2023 11:38:07 +0000 (12:38 +0100)]
ASoC: Another set of platform remove conversions
Merge series from Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
Two more drivers were added during the current merge window that
are users of the original .remove callback that I plan to get rid of.
Convert them to .remove_new.
Mark Brown [Wed, 12 Jul 2023 11:37:59 +0000 (12:37 +0100)]
ASoC: rt5677: Refactor GPIO and use
Merge series from Andy Shevchenko <andriy.shevchenko@linux.intel.com>:
The code can be simplified with refactored GPIO parts and with use of
device_get_match_data(). Besides that couple of additional changes,
one for maintenance and one for making IRQ domain agnostic (not being
pinned to OF).
Mark Brown [Wed, 12 Jul 2023 11:37:30 +0000 (12:37 +0100)]
AMD Vangogh support for NAU8821/MAX98388
Merge series from Cristian Ciocaltea <cristian.ciocaltea@collabora.com>:
This patch series extends the Vangogh machine driver to support a variant
based on the Nuvoton NAU88L21 Codec and the Analog Devices MAX98388
Speaker Amplifier.
Mark Brown [Wed, 12 Jul 2023 11:37:23 +0000 (12:37 +0100)]
ASoC: Intel: avs: New boards and fixes to existing
Merge series from Cezary Rojewski <cezary.rojewski@intel.com>:
Series adds support for two boards: es8336 and rt5663. The former is
utilized by some KBL-based tablets whereas the latter unlocks
Chromebooks with rt5663 i2c codecs.
As existing implementation of es8336 (es8316.c) codec driver is not
prepared to cope with KBL-based platforms, couple of small,
clock-related changes precede anything avs-driver related.
The tail of patchset cleans up existing implementation of rt5682.
Mark Brown [Wed, 12 Jul 2023 11:37:15 +0000 (12:37 +0100)]
ASoC: remove copy of intlog10()
Merge series from Andy Shevchenko <andriy.shevchenko@linux.intel.com>:
The first three patches moves intlog10() to be available in entire
kernel. The last one removes copy of it in one driver. Besides already
good Lines of Code (LoC) statistics the upcoming users, if any, can
utilize the exported functions.
The series can be routed via ASoC tree (as Mauro suggested).
Note, int_log.h is separated from math.h due to licensing.
I dunno if we can mix two in a single header file. In any
case we may do it later on.
Mark Brown [Wed, 12 Jul 2023 11:37:07 +0000 (12:37 +0100)]
Add support for IIO devices in ASoC
Merge series from Herve Codina <herve.codina@bootlin.com>:
Several weeks ago, I sent a series [1] for adding a potentiometer as an
auxiliary device in ASoC. The feedback was that the potentiometer should
be directly handled in IIO (as other potentiometers) and something more
generic should be present in ASoC in order to have a binding to import
some IIO devices into sound cards.
The series related to the IIO potentiometer device is already applied.
This series introduces audio-iio-aux. Its goal is to offer the binding
between IIO and ASoC.
It exposes attached IIO devices as ASoC auxiliary devices and allows to
control them through mixer controls.
On my system, the IIO device is a potentiometer and it is present in an
amplifier design present in the audio path.
Maxim Kochetkov [Thu, 22 Jun 2023 20:00:29 +0000 (23:00 +0300)]
ASoC: dwc: Add TDM mode support
Depending on hardware implementaion of DWC I2S controller may support
TDM mode if enabled in SoC at design time.
Unfortunately there is no way to detect TDM capability for DWC by
reading registers. Anyway, if such capability enabled, TDM mode
can be enabled and configured by dai-tdm-slot-* DT options.
Chancel Liu [Sun, 25 Jun 2023 06:54:12 +0000 (14:54 +0800)]
ASoC: imx-pcm-rpmsg: Set PCM hardware parameters separately
Different PCM devices may have different PCM hardware parameters. It
requires PCM hardware parameters set separately if there is more than
one rpmsg sound card.
Required CPU/Codec/Platform dlc (snd_soc_dai_link_component) are similar
but not same, and very complex. Current implementation is very confusable
and it will be more complex if multi Component was supported.
This patch cleanup it.
Kuninori Morimoto [Wed, 21 Jun 2023 02:18:10 +0000 (02:18 +0000)]
ASoC: soc-core.c: initialize dlc on snd_soc_get_dai_id()
Current snd_soc_get_dai_id() is initializing dlc *manually*,
but it will might be a problem if dlc had new extra parameter.
This patch uses default initialization, otherwise, non initialized
part will be strange value.
This is prepare for multi Component support.