Mark Brown
a7ec043e60
ASoC: DT matching and header cleanups
...
Merge series from Rob Herring <robh@kernel.org >:
This is a series is part of ongoing clean-ups related to device
matching and DT related implicit includes. Essentially of_device.h has
a bunch of implicit includes and generally isn't needed any nore except
for of_match_device(). As we also generally want to get rid of
of_match_device() as well, I've done that so we're not updating the
includes twice.
2023-10-09 23:14:18 +01:00
Mark Brown
f0d82f073d
Convert Mediatek ASoC codecs to use GPIO descriptors
...
Merge series from Linus Walleij <linus.walleij@linaro.org >:
Convert over the Mediatek codecs to use GPIO descriptors.
One few-liner affects gpiolib-of.h, I don't think there
will be conflicts so I suggest that all of this can be
merged through ASoC after review.
2023-10-09 19:51:57 +01:00
Mark Brown
fee44f43b2
Convert Rockchip ASoC drivers to GPIO descriptors
...
Merge series from Linus Walleij <linus.walleij@linaro.org >:
The Rockchip drivers are pretty straight-forward to convert
over to using GPIO descriptors.
2023-10-09 18:40:19 +01:00
Linus Walleij
3b5d22bdf3
ASoC: mt8192-afe-gpio: Drop unused include
...
This driver includes the legacy GPIO header <linux/gpio.h> but
is not using any symbols from it. AFE has a custom GPIO
implementation that is not using the kernel GPIO framework.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-8-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:50 +01:00
Linus Walleij
73e1f8a05b
ASoC: mt8186-mt6366-rt1019-rt5682s: Drop unused include
...
This driver includes the legacy GPIO header <linux/gpio.h> but
is not using any symbols from it. AFE has a custom GPIO
implementation that is not using the kernel GPIO framework,
so it need not include it either.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-7-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:49 +01:00
Linus Walleij
6dffd1f38a
ASoC: mt8173-rt5650: Drop unused includes
...
This driver includes the legacy GPIO header <linux/gpio.h> and
<linux/of_gpio.h> but does not use any symbols from either of
them so drop the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-6-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:48 +01:00
Linus Walleij
cb1c18e8a7
ASoC: mt8173-rt5650-rt5676: Drop unused includes
...
This driver includes the legacy GPIO header <linux/gpio.h> and
<linux/of_gpio.h> but does not use any symbols from either of
them so drop the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-5-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:47 +01:00
Linus Walleij
94a7f61821
ASoC: mt8173-rt5650-rt5514: Drop unused includes
...
This driver includes the legacy GPIO header <linux/gpio.h> and
<linux/of_gpio.h> but does not use any symbols from either of
them so drop the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-4-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:46 +01:00
Linus Walleij
b1306c3b61
ASoC: mt8173-max98090: Drop unused include
...
This driver includes the legacy GPIO header <linux/gpio.h> but
is not using any symbols from it. Drop the include.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-3-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:45 +01:00
Linus Walleij
654a237240
ASoC: mediatek: mt2701-cs42448: Convert to GPIO descriptors
...
The driver is pretty straight-forward to convert to use GPIO
descriptors, however a separate patch is needed to accept
the DT GPIO resources ending with "-gpio1" and "-gpio2"
instead of the standard "-gpio" or "-gpios" name convention.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-2-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:44 +01:00
Linus Walleij
9e189e80dc
gpiolib: of: Add quirk for mt2701-cs42448 ASoC sound
...
These gpio names are due to old DT bindings not following the
"-gpio"/"-gpios" conventions. Handle it using a quirk so the
driver can just look up the GPIOs.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Link: https://lore.kernel.org/r/20231006-descriptors-asoc-mediatek-v1-1-07fe79f337f5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 14:27:43 +01:00
Krzysztof Kozlowski
72151ad0cb
ASoC: codecs: wsa-macro: fix uninitialized stack variables with name prefix
...
Driver compares widget name in wsa_macro_spk_boost_event() widget event
callback, however it does not handle component's name prefix. This
leads to using uninitialized stack variables as registers and register
values. Handle gracefully such case.
Fixes: 2c4066e5d4 ("ASoC: codecs: lpass-wsa-macro: add dapm widgets and route")
Cc: stable@vger.kernel.org
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Link: https://lore.kernel.org/r/20231003155422.801160-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:20 +01:00
Krzysztof Kozlowski
528a4a0bb0
ASoC: qcom: reduce number of binding headers includes
...
Move the includes of binding headers from Qualcomm SoC sound drivers
headers to unit files actually using these bindings. This reduces the
amount of work for C preprocessor and makes usage of bindings easier to
follow. No impact expected on the final binaries.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Link: https://lore.kernel.org/r/20231005075250.88159-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:19 +01:00
Krzysztof Kozlowski
0f729a285b
ASoC: qcom: explicitly include binding headers when used
...
Few units use qcom,lpass.h binding headers but they rely on them being
included through a different header. Make the usage explicit which
allows easier to find the users of a header.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org >
Link: https://lore.kernel.org/r/20231005075250.88159-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:18 +01:00
Pierre-Louis Bossart
d65d4a2c38
ASoC: SOF: sof-client: fix build when only IPC4 is selected
...
When IPC3 is not selected, sof-client.c still makes a hard-coded
reference to an IPC3-specific function:
ERROR: modpost: "sof_ipc3_do_rx_work" [sound/soc/sof/snd-sof.ko]
undefined!
Fix by making the code conditional.
Closes: https://github.com/thesofproject/linux/issues/4581
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org >
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com >
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com >
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com >
Link: https://lore.kernel.org/r/20231006084041.18100-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:17 +01:00
Linus Walleij
329b017ccd
ASoC: rockchip: Drop includes from Rockchip RT5645
...
The Rockchip RT5645 ASoC driver includes two legacy GPIO
headers but doesn't use symbols from any of them. Delete
the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230929-descriptors-asoc-rockchip-v2-4-2d2c0e043aab@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:14 +01:00
Linus Walleij
7214141067
ASoC: rockchip: Drop includes from Rockchip MAX98090
...
The Rockchip MAX98090 ASoC driver includes two legacy GPIO
headers but doesn't use symbols from any of them. Delete
the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230929-descriptors-asoc-rockchip-v2-3-2d2c0e043aab@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:13 +01:00
Linus Walleij
3116dc2e16
ASoC: rockchip: Drop includes from RK3399
...
The RK3399 ASoC driver includes two legacy GPIO headers but
doesn't use symbols from any of them. Delete the includes.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230929-descriptors-asoc-rockchip-v2-2-2d2c0e043aab@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:12 +01:00
Linus Walleij
15b26d8165
ASoC: rockchip: Convert RK3288 HDMI to GPIO descriptors
...
This converts the Rockchip RK3288 HDMI driver to use GPIO
descriptors:
- Look up the HP EN GPIO as an optional descriptor and handle
it directly, the gpiod API is NULL-tolerant so no special
guards are needed.
- Let the Jack detection core obtain and handle the HP detection
GPIO, just pass the right name and gpiod_dev and it will
do the job. Make sure to check that the GPIO property
is there first, so it becomes optional.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Link: https://lore.kernel.org/r/20230929-descriptors-asoc-rockchip-v2-1-2d2c0e043aab@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:14:12 +01:00
Rob Herring
9958d85968
ASoC: Use device_get_match_data()
...
Use preferred device_get_match_data() instead of of_match_device() to
get the driver match data. With this, adjust the includes to explicitly
include the correct headers.
Signed-off-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-5-13a4f0f7fee6@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:13:59 +01:00
Rob Herring
ec5236c2e6
ASoC: qcom/lpass: Constify struct lpass_variant
...
'struct lpass_variant' is used for driver match data which is supposed to
be constant. It's not modified anywhere, so it's just a matter of adding
'const' everywhere.
Signed-off-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-4-13a4f0f7fee6@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:13:58 +01:00
Rob Herring
fe26425518
ASoC: da7218: Use i2c_get_match_data()
...
Use preferred i2c_get_match_data() instead of of_match_device() and
i2c_match_id() to get the driver match data. With this, adjust the
includes to explicitly include the correct headers.
Avoid using 0 for enum da7218_dev_id so that no match data can be
distinguished.
Signed-off-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-3-13a4f0f7fee6@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:13:57 +01:00
Rob Herring
56c075b2d3
ASoC: Drop unnecessary of_match_device() calls
...
If probe is reached, we've already matched the device and in the case of
DT matching, the struct device_node pointer will be set. Therefore, there
is no need to call of_match_device() in probe.
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Signed-off-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-2-13a4f0f7fee6@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:13:57 +01:00
Rob Herring
340d79a14d
ASoC: Explicitly include correct DT includes
...
The DT of_device.h and of_platform.h date back to the separate
of_platform_bus_type before it was merged into the regular platform bus.
As part of that merge prepping Arm DT support 13 years ago, they
"temporarily" include each other. They also include platform_device.h
and of.h. As a result, there's a pretty much random mix of those include
files used throughout the tree. In order to detangle these headers and
replace the implicit includes with struct declarations, users need to
explicitly include the correct includes.
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com >
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com >
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Reviewed-by: Claudiu Beznea <claudiu.beznea@tuxon.dev > # for at91
Signed-off-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20231006-dt-asoc-header-cleanups-v3-1-13a4f0f7fee6@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-09 13:13:56 +01:00
Mark Brown
85a6af284d
ASoC: SOF: ipc4: Take priority into cosideration when
...
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com >:
Add pipeline priority support for IPC4: Add support for parsing pipeline
priorities from the topology. This will be used to break the tie between
pipelines to set the trigger order when multiple pipelines are triggered
simultaneously.
2023-10-06 15:39:19 +01:00
Mark Brown
e22ece0f65
ASoC: cs35l56: Update hibernate/wake sequences and
...
Merge series from Richard Fitzgerald <rf@opensource.cirrus.com >:
Update the hibernate and wake command sequences to meet the latest
datasheet specification and enable hibernation for I2C and SPI control
interfaces.
Richard Fitzgerald (1):
ASoC: cs35l56: Enable low-power hibernation mode on SPI
Simon Trimmer (3):
ASoC: cs35l56: Change hibernate sequence to use allow auto hibernate
ASoC: cs35l56: Wake transactions need to be issued twice
ASoC: cs35l56: Enable low-power hibernation mode on i2c
include/sound/cs35l56.h | 1 +
sound/soc/codecs/cs35l56-i2c.c | 1 +
sound/soc/codecs/cs35l56-shared.c | 66 +++++++++++++++++++------------
sound/soc/codecs/cs35l56-spi.c | 1 +
4 files changed, 43 insertions(+), 26 deletions(-)
--
2.30.2
2023-10-06 15:32:31 +01:00
Kees Cook
4b226f1542
MAINTAINERS: Include sof headers under ASoC
...
Add missing sof header files for ASoC.
Suggested-by: Mark Brown <broonie@kernel.org >
Link: https://lore.kernel.org/lkml/f258a7e6-0728-4f55-a71a-6e99113ce7e5@sirena.org.uk
Signed-off-by: Kees Cook <keescook@chromium.org >
Link: https://lore.kernel.org/r/20231005025618.work.355-kees@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:32:00 +01:00
Richard Fitzgerald
634ed138d8
ASoC: cs35l56: Enable low-power hibernation mode on SPI
...
Hibernation can be enabled on SPI-connected devices now that
the hibernate and wake sequences have been updated to work
with wake-on-MOSI.
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231006111039.101914-5-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:29 +01:00
Simon Trimmer
79b101947a
ASoC: cs35l56: Enable low-power hibernation mode on i2c
...
This can now be re-enabled as the sequence to reliably wake the device
has been implemented in the shared code.
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com >
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231006111039.101914-4-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:28 +01:00
Simon Trimmer
3df761bdbc
ASoC: cs35l56: Wake transactions need to be issued twice
...
As the dummy wake is a toggling signal (either I2C or SPI activity) it
is not guaranteed to meet the minimum asserted hold time for a wake
signal. In this case the wake must guarantee rising edges separated by
at least the minimum hold time.
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com >
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231006111039.101914-3-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:27 +01:00
Simon Trimmer
a47cf4dac7
ASoC: cs35l56: Change hibernate sequence to use allow auto hibernate
...
If the hardware uses SPI_MOSI, I2C_SCL or I2C_SDA as the wake source
the bus activity of sending HIBERNATE_NOW will wake up the amps that
were already put into hibernate.
ALLOW_AUTO_HIBERNATE tells the firmware to hibernate itself after a
timeout of a few seconds, giving the driver instances time to send this
before any amps have gone into hibernate.
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com >
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231006111039.101914-2-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:26 +01:00
Rander Wang
4df7d6a61f
ASoC: SOF: IPC4: sort pipeline based on priority
...
The pipeline priority is set in topology and driver should sort pipeline
based on priority for trigger order.
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com >
Signed-off-by: Rander Wang <rander.wang@intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com >
Link: https://lore.kernel.org/r/20231006084454.19170-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:23 +01:00
Rander Wang
ae67b6371d
ASoC: SOF: IPC4: get pipeline priority from topology
...
Driver set pipeline priority according to priority setting in topology.
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com >
Signed-off-by: Rander Wang <rander.wang@intel.com >
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com >
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com >
Link: https://lore.kernel.org/r/20231006084454.19170-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-06 12:30:22 +01:00
Kees Cook
2175362f59
MAINTAINERS: Include additional ASoC paths
...
Make sure a few other paths are correctly sent to the ASoC maintainers.
Link: https://lore.kernel.org/lkml/63dd3676.170a0220.1f1b2.3244@mx.google.com/
Cc: Mark Brown <broonie@kernel.org >
Signed-off-by: Kees Cook <keescook@chromium.org >
Link: https://lore.kernel.org/r/20231004193441.work.109-kees@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-04 20:40:04 +01:00
Simon Trimmer
c98a0a83dc
ASoC: cs35l56: Initialise a variable to silence possible static analysis error
...
read_poll_timeout() is a macro and val will be populated before use,
however some static analysis tools treat it as a function and warn of
uninitialised variable usage.
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com >
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231004144203.151775-1-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-04 16:09:15 +01:00
Kees Cook
80e698e2df
ASoC: soc-dapm: Annotate struct snd_soc_dapm_widget_list with __counted_by
...
Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for
array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).
As found with Coccinelle[1], add __counted_by for struct snd_soc_dapm_widget_list.
Additionally, since the element count member must be set before accessing
the annotated flexible array member, move its initialization earlier.
Cc: Liam Girdwood <lgirdwood@gmail.com >
Cc: Mark Brown <broonie@kernel.org >
Cc: Jaroslav Kysela <perex@perex.cz >
Cc: Takashi Iwai <tiwai@suse.com >
Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org >
Cc: alsa-devel@alsa-project.org
Cc: linux-hardening@vger.kernel.org
Link: https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci [1]
Signed-off-by: Kees Cook <keescook@chromium.org >
Reviewed-by: "Gustavo A. R. Silva" <gustavoars@kernel.org >
Link: https://lore.kernel.org/r/20231003232852.work.257-kees@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-04 12:56:21 +01:00
Bragatheswaran Manickavel
943bcc742e
ASoC: dt-bindings: rt5616: Convert to dtschema
...
Convert the rt5616 audio CODEC bindings to DT schema
Signed-off-by: Bragatheswaran Manickavel <bragathemanick0908@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20230930165050.7793-1-bragathemanick0908@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-03 14:51:20 +01:00
Simon Trimmer
d4e1417bb9
ASoC: cs35l56: Remove unused hibernate wake constants
...
The two CS35L56_HIBERNATE_WAKE_* constants in cs35l56.h aren't used by
any of the driver code.
Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com >
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20231003093418.21600-1-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-03 14:51:19 +01:00
Mark Brown
4c9d0d6f63
Remove reset GPIO for AW88261
...
Merge series from Luca Weiss <luca.weiss@fairphone.com >:
The AW88261 chip doesn't have a reset gpio, so remove it from the
bindings and from the driver.
2023-10-03 14:21:12 +01:00
Joerg Schambacher
736b884a7b
ASoC: pcm512x: Adds bindings for TAS575x devices
...
The TAS5754/6 power amplifiers use the same pcm512x driver with
only minor restictions described in the bindings document.
Signed-off-by: Joerg Schambacher <joerg.hifiberry@gmail.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Link: https://lore.kernel.org/r/20230929150555.405388-1-joerg.hifiberry@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 19:42:46 +01:00
Joerg Schambacher
1f81780526
ASoC: Adds support for TAS575x to the pcm512x driver
...
Enables the existing pcm512x driver to control the almost
compatible TAS5754 and -76 amplifers. Both amplifiers support
only an I2C interface and the internal PLL must be always
on to provide necessary clocks to the amplifier section.
Tested on TAS5756 with support from Andreas Arbesser-Krasser
from Texas Instruments <a-krasser@ti.com >
Signed-off-by: Joerg Schambacher <joerg.hifiberry@gmail.com >
Link: https://lore.kernel.org/r/20230929150722.405415-1-joerg.hifiberry@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 19:42:45 +01:00
Luca Weiss
4eed047b76
ASoC: codecs: aw88261: Remove non-existing reset gpio
...
According to the AW88261 datasheet (V1.1) and device schematics I have
access to, there is no reset gpio present on the AW88261. Remove it.
Signed-off-by: Luca Weiss <luca.weiss@fairphone.com >
Link: https://lore.kernel.org/r/20231002-aw88261-reset-v2-2-837cb1e7b95c@fairphone.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 19:39:51 +01:00
Luca Weiss
c7b94e8614
ASoC: dt-bindings: awinic,aw88395: Remove reset-gpios from AW88261
...
The AW88261 chip doesn't have a reset GPIO, so disallow providing
reset-gpios.
At the same time also don't keep reset-gpios required for AW88395. This
is both because the Linux driver has it optional, and it also simplifies
the bindings by not introducing another conditional.
Signed-off-by: Luca Weiss <luca.weiss@fairphone.com >
Link: https://lore.kernel.org/r/20231002-aw88261-reset-v2-1-837cb1e7b95c@fairphone.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 19:39:50 +01:00
Mark Brown
a9b696c851
GPIO descriptors for TI ASoC codecs
...
Merge series from Linus Walleij <linus.walleij@linaro.org >:
This cleans up and rewrites the GPIO usage in the TI
ASoC components to use GPIO descriptors exclusively.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
---
Linus Walleij (5):
ASoC: ti: Convert N810 ASoC to GPIO descriptors
ASoC: ti: Convert RX51 to use exclusively GPIO descriptors
ASoC: ti: Convert TWL4030 to use GPIO descriptors
ASoC: ti: Convert Pandora ASoC to GPIO descriptors
ASoC: ti: osk5912: Drop unused include
arch/arm/mach-omap2/board-n8x0.c | 10 +++++
arch/arm/mach-omap2/pdata-quirks.c | 10 +++++
include/linux/platform_data/omap-twl4030.h | 3 --
sound/soc/ti/n810.c | 31 ++++++++-------
sound/soc/ti/omap-twl4030.c | 20 ++++------
sound/soc/ti/omap3pandora.c | 63 +++++++++++-------------------
sound/soc/ti/osk5912.c | 1 -
sound/soc/ti/rx51.c | 19 ++-------
8 files changed, 72 insertions(+), 85 deletions(-)
---
base-commit: 0bb80ecc33
change-id: 20230922-descriptors-asoc-ti-a852eff479ed
Best regards,
--
Linus Walleij <linus.walleij@linaro.org >
2023-10-02 16:17:47 +01:00
Shenghao Ding
4c556d1ea5
ASoC: tas2781: fixed compiling issue in m68k
...
fixed m68k compiling issue: mapping table can save code field; storing the
dev_idx as a member of block can reduce unnecessary time and system
resource comsumption of dev_idx mapping every time the block data writing
to the dsp.
Signed-off-by: Shenghao Ding <shenghao-ding@ti.com >
Link: https://lore.kernel.org/r/20231002090434.1896-1-shenghao-ding@ti.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:27 +01:00
Amadeusz Sławiński
045059e4d3
ASoC: Intel: avs: Remove unused variable
...
Recent commit removed the only user of bus variable in
avs_dai_fe_prepare(), also remove the variable itself.
Reported-by: kernel test robot <lkp@intel.com >
Closes: https://lore.kernel.org/oe-kbuild-all/202309292121.5DdaNpLj-lkp@intel.com/
Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com >
Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com >
Link: https://lore.kernel.org/r/20231002084629.903103-1-amadeuszx.slawinski@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:26 +01:00
Gustavo A. R. Silva
3746284c23
ASoC: SOF: ipc4-topology: Use size_add() in call to struct_size()
...
If, for any reason, the open-coded arithmetic causes a wraparound,
the protection that `struct_size()` adds against potential integer
overflows is defeated. Fix this by hardening call to `struct_size()`
with `size_add()`.
Fixes: f9efae9549 ("ASoC: SOF: ipc4-topology: Add support for base config extension")
Signed-off-by: "Gustavo A. R. Silva" <gustavoars@kernel.org >
Reviewed-by: Kees Cook <keescook@chromium.org >
Link: https://lore.kernel.org/r/ZQSr15AYJpDpipg6@work
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:25 +01:00
Linus Walleij
67ebde4203
ASoC: ti: osk5912: Drop unused include
...
This driver includes the legacy header <linux/gpio.h> but doesn't
use it. Drop the include.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com >
Link: https://lore.kernel.org/r/20230926-descriptors-asoc-ti-v1-5-60cf4f8adbc5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:22 +01:00
Linus Walleij
319e6ac143
ASoC: ti: Convert Pandora ASoC to GPIO descriptors
...
The Pandora uses GPIO descriptors pretty much exclusively, but not
for ASoC, so let's fix it. Register the pins in a descriptor table
in the machine since the ASoC device is not using device tree.
Use static locals for the GPIO descriptors because I'm not able
to experient with better state storage on any real hardware. Others
using the Pandora can come afterwards and improve this.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com >
Link: https://lore.kernel.org/r/20230926-descriptors-asoc-ti-v1-4-60cf4f8adbc5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:21 +01:00
Linus Walleij
1b8a62937e
ASoC: ti: Convert TWL4030 to use GPIO descriptors
...
The TWL4030 is actually only ever populated from the device tree,
so we can just pass the right device and headphone jack GPIO name
to snd_soc_jack_add_gpios() and it will pick the right GPIO right
from the device tree.
The platform data patch is unused (no in-tree users of the pdata
method) but these can use GPIO descriptor tables rather than global
GPIO numbers if they need this.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com >
Link: https://lore.kernel.org/r/20230926-descriptors-asoc-ti-v1-3-60cf4f8adbc5@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org >
2023-10-02 14:06:20 +01:00