#
ba2a2c37 |
| 02-May-2024 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
ASoC: codecs: Drop explicit initialization of struct i2c_device_id::driver_data to 0
These drivers don't use the driver_data member of struct i2c_device_id, so don't explicitly initialize this membe
ASoC: codecs: Drop explicit initialization of struct i2c_device_id::driver_data to 0
These drivers don't use the driver_data member of struct i2c_device_id, so don't explicitly initialize this member.
This prepares putting driver_data in an anonymous union which requires either no initialization or named designators. But it's also a nice cleanup on its own.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20240502074722.1103986-2-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
00933c49 |
| 12-Feb-2024 |
Yinchuan Guo <guoych37@mail2.sysu.edu.cn> |
ASoC: codecs: fix TYPO 'reguest' to 'request' in error log
This patch corrects a common misspelling of "request" as "reguest" found in error log across multiple files within sound/soc/codecs.
Signe
ASoC: codecs: fix TYPO 'reguest' to 'request' in error log
This patch corrects a common misspelling of "request" as "reguest" found in error log across multiple files within sound/soc/codecs.
Signed-off-by: Yinchuan Guo <guoych37@mail2.sysu.edu.cn> Link: https://msgid.link/r/20240212144247.43744-1-guoych37@mail2.sysu.edu.cn Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
899585d5 |
| 10-Jun-2023 |
Mark Brown <broonie@kernel.org> |
ASoC: rt5651: Use maple tree register cache
The rt5651 can only support single register read and write operations so does not benefit from block writes. This means it gets no benefit from using the
ASoC: rt5651: Use maple tree register cache
The rt5651 can only support single register read and write operations so does not benefit from block writes. This means it gets no benefit from using the rbtree register cache over the maple tree register cache so convert it to use maple trees instead, it is more modern.
Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230609-asoc-rt-maple-v1-10-729c6553cdcf@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
9abcd240 |
| 25-Apr-2023 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
ASoC: Switch i2c drivers back to use .probe()
After commit b8a1a4cd5a98 ("i2c: Provide a temporary .probe_new() call-back type"), all drivers being converted to .probe_new() and then 03c835f498b5 ("
ASoC: Switch i2c drivers back to use .probe()
After commit b8a1a4cd5a98 ("i2c: Provide a temporary .probe_new() call-back type"), all drivers being converted to .probe_new() and then 03c835f498b5 ("i2c: Switch .probe() to not take an id parameter") convert back to (the new) .probe() to be able to eventually drop .probe_new() from struct i2c_driver.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de Link: https://lore.kernel.org/r/20230425095716.331419-1-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org
show more ...
|
#
a524837d |
| 23-Jun-2022 |
Charles Keepax <ckeepax@opensource.cirrus.com> |
ASoC: rt*: Remove now redundant non_legacy_dai_naming flag
The ASoC core has now been changed to default to the non-legacy DAI naming, as such drivers using the new scheme no longer need to specify
ASoC: rt*: Remove now redundant non_legacy_dai_naming flag
The ASoC core has now been changed to default to the non-legacy DAI naming, as such drivers using the new scheme no longer need to specify the non_legacy_dai_naming flag.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220623125250.2355471-57-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
35b88858 |
| 05-Apr-2022 |
Stephen Kitt <steve@sk2.org> |
ASoC: rt*: use simple i2c probe function
The i2c probe functions here don't use the id information provided in their second argument, so the single-parameter i2c probe function ("probe_new") can be
ASoC: rt*: use simple i2c probe function
The i2c probe functions here don't use the id information provided in their second argument, so the single-parameter i2c probe function ("probe_new") can be used instead.
This avoids scanning the identifier tables during probes.
Signed-off-by: Stephen Kitt <steve@sk2.org> Link: https://lore.kernel.org/r/20220405130326.2107293-1-steve@sk2.org Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
6e037b72 |
| 03-Oct-2021 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ
Use the new IRQF_NO_AUTOEN flag when requesting the IRQ, rather then disabling it immediately after requesting it.
This fixes a possible rac
ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ
Use the new IRQF_NO_AUTOEN flag when requesting the IRQ, rather then disabling it immediately after requesting it.
This fixes a possible race where the IRQ might trigger between requesting and disabling it; and this also leads to a small code cleanup.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20211003132255.31743-2-hdegoede@redhat.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
a4db95b2 |
| 24-Sep-2021 |
Colin Ian King <colin.king@canonical.com> |
ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported"
There are spelling mistakes in dev_err error messages. Fix them.
Signed-off-by: Colin Ian King <colin.king@canonical.com> Link: https
ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported"
There are spelling mistakes in dev_err error messages. Fix them.
Signed-off-by: Colin Ian King <colin.king@canonical.com> Link: https://lore.kernel.org/r/20210924231003.144502-1-colin.king@canonical.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
9b9adc5b |
| 02-Mar-2021 |
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> |
ASoC: rt5651: remove useless assignment
cppcheck warning:
sound/soc/codecs/rt5651.c:1786:13: style: Variable 'report' is assigned a value that is never used. [unreadVariable] int report = 0;
ASoC: rt5651: remove useless assignment
cppcheck warning:
sound/soc/codecs/rt5651.c:1786:13: style: Variable 'report' is assigned a value that is never used. [unreadVariable] int report = 0; ^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20210302212527.55158-13-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
33eaffe3 |
| 02-Mar-2021 |
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> |
ASoC: rt5651: clarify expression
cppcheck warning:
sound/soc/codecs/rt5659.c:3515:61: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] (
ASoC: rt5651: clarify expression
cppcheck warning:
sound/soc/codecs/rt5659.c:3515:61: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] (pll_code.m_bp ? 0 : pll_code.m_code) << RT5659_PLL_M_SFT | ^
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20210302212527.55158-12-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
eee51df7 |
| 26-Feb-2021 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
The adc_vol_tlv volume-control has a range from -17.625 dB to +30 dB, not -176.25 dB to + 300 dB. This wrong scale is esp.
ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
The adc_vol_tlv volume-control has a range from -17.625 dB to +30 dB, not -176.25 dB to + 300 dB. This wrong scale is esp. a problem in userspace apps which translate the dB scale to a linear scale. With the logarithmic dB scale being of by a factor of 10 we loose all precision in the lower area of the range when apps translate things to a linear scale.
E.g. the 0 dB default, which corresponds with a value of 47 of the 0 - 127 range for the control, would be shown as 0/100 in alsa-mixer.
Since the centi-dB values used in the TLV struct cannot represent the 0.375 dB step size used by these controls, change the TLV definition for them to specify a min and max value instead of min + stepsize.
Note this mirrors commit 3f31f7d9b540 ("ASoC: rt5670: Fix dac- and adc- vol-tlv values being off by a factor of 10") which made the exact same change to the rt5670 codec driver.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20210226143817.84287-3-hdegoede@redhat.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
467a2553 |
| 16-Jun-2020 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
ASoC: codecs: rt*: rename to snd_soc_component_read()
We need to use snd_soc_component_read() instead of snd_soc_component_read32()
This patch renames _read32() to _read()
Signed-off-by: Kunin
ASoC: codecs: rt*: rename to snd_soc_component_read()
We need to use snd_soc_component_read() instead of snd_soc_component_read32()
This patch renames _read32() to _read()
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/87d05z4mce.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
2bdf194e |
| 27-Sep-2019 |
Jaska Uimonen <jaska.uimonen@intel.com> |
ASoC: intel: bytcr_rt5651: add null check to support_button_press
When removing sof module the support_button_press function will oops because hp_jack pointer is not checked for NULL. So add a check
ASoC: intel: bytcr_rt5651: add null check to support_button_press
When removing sof module the support_button_press function will oops because hp_jack pointer is not checked for NULL. So add a check to fix this.
Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20190927201408.925-2-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
d2912cb1 |
| 04-Jun-2019 |
Thomas Gleixner <tglx@linutronix.de> |
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
Based on 2 normalized pattern(s):
this program is free software you can redistribute it and or modify it under the terms of th
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
Based on 2 normalized pattern(s):
this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation
this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation #
extracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference in 4122 file(s).
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Enrico Weigelt <info@metux.net> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Allison Randal <allison@lohutok.net> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
8a68a509 |
| 05-Mar-2019 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Add support for active-high jack detect
Some boards use a jack-receptacle with a switch which reports the jack-inserted status as active-high, rather then the standard active-low repor
ASoC: rt5651: Add support for active-high jack detect
Some boards use a jack-receptacle with a switch which reports the jack-inserted status as active-high, rather then the standard active-low reporting most jacks use.
This commit adds support for it. This is activated by a boolean "realtek,jack-detect-not-inverted" device-property. The not-inverted in the device-property name, rather then active-high, was chosen to keep the device-property naming consistent with the rt5640 codec driver.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
e20bfeb0 |
| 25-Jan-2019 |
Yizhuo <yzhai003@ucr.edu> |
ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized
In function rt5651_i2c_probe(), local variable "ret" could be uninitialized if function regmap_read() returns -EINV
ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized
In function rt5651_i2c_probe(), local variable "ret" could be uninitialized if function regmap_read() returns -EINVAL. However, this value is used in if statement. This is potentially unsafe.
Signed-off-by: Yizhuo <yzhai003@ucr.edu> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
c2ec9d95 |
| 29-Dec-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Add support for jack detect using an external GPIO
Some board designs hook the jack-detect up to an external GPIO, rather then to one of the codec pins, add support for this.
Figuring
ASoC: rt5651: Add support for jack detect using an external GPIO
Some board designs hook the jack-detect up to an external GPIO, rather then to one of the codec pins, add support for this.
Figuring out which GPIO to use is pretty much board specific so I've chosen to let the machine driver pass the gpio_desc as data argument to snd_soc_component_set_jack() rather then add support for getting the GPIO to the codec driver. This keeps the codec code nice and clean.
Note that using an external GPIO for this conflicts with button-press support, so this commit disables button-press support when an external GPIO is used.
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
d3068735 |
| 29-Dec-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Add ACPI ID 10EC5640
Some BYT platforms have a RT5651 codec while using an ACPI node with a HID of 10EC5640 to describe the coded. Add the 10EC5640 HID to the acpi_device_id list, so t
ASoC: rt5651: Add ACPI ID 10EC5640
Some BYT platforms have a RT5651 codec while using an ACPI node with a HID of 10EC5640 to describe the coded. Add the 10EC5640 HID to the acpi_device_id list, so that the rt5651 will bind to the codec on these devices.
Like the rt5645 and rt5670 drivers which also have the 10EC5640 ACPI HID in their acpi_device_id list for similar reasons, the rt5651 driver checks the codecs device-id register so that it will only bind if the codec actually is a rt5651 and it will ignore actual rt5640 codecs.
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
577dc32f |
| 05-Jan-2019 |
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> |
ASoC: rt5651: fix boolean assignments
Reported by Coccinelle: sound/soc/codecs/rt5651.c:750:2-17: WARNING: Assignment of bool to 0/1 sound/soc/codecs/rt5651.c:754:2-17: WARNING: Assignment of bool t
ASoC: rt5651: fix boolean assignments
Reported by Coccinelle: sound/soc/codecs/rt5651.c:750:2-17: WARNING: Assignment of bool to 0/1 sound/soc/codecs/rt5651.c:754:2-17: WARNING: Assignment of bool to 0/1 sound/soc/codecs/rt5651.c:2192:1-16: WARNING: Assignment of bool to 0/1
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
29ca7d32 |
| 18-Sep-2018 |
zhong jiang <zhongjiang@huawei.com> |
ASoC: remove redundant include
module.h already contained moduleparam.h, so it is safe to remove the redundant include.
The issue is detected with the help of Coccinelle.
Signed-off-by: zhong jia
ASoC: remove redundant include
module.h already contained moduleparam.h, so it is safe to remove the redundant include.
The issue is detected with the help of Coccinelle.
Signed-off-by: zhong jiang <zhongjiang@huawei.com> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
1c96a2f6 |
| 01-Sep-2018 |
David Frey <dpfrey@gmail.com> |
regmap: split up regmap_config.use_single_rw
Split regmap_config.use_single_rw into use_single_read and use_single_write. This change enables drivers of devices which only support bulk operations in
regmap: split up regmap_config.use_single_rw
Split regmap_config.use_single_rw into use_single_read and use_single_write. This change enables drivers of devices which only support bulk operations in one direction to use the regmap_bulk_*() functions for both directions and have their bulk operation split into single operations only when necessary.
Update all struct regmap_config instances where use_single_rw==true to instead set both use_single_read and use_single_write. No attempt was made to evaluate whether it is possible to set only one of use_single_read or use_single_write.
Signed-off-by: David Frey <dpfrey@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
eea16625 |
| 18-Jul-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Add IN3 Boost volume control
Add a mixer control for the IN3 Boost volume, IN3 is used for the headset mic on most devices, so this is necessary to control the headset mic volume.
Sig
ASoC: rt5651: Add IN3 Boost volume control
Add a mixer control for the IN3 Boost volume, IN3 is used for the headset mic on most devices, so this is necessary to control the headset mic volume.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
df1569f2 |
| 04-Jul-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Add button press support
Enable button press detection for headsets by using the ovcd IRQ to get notified of button presses.
This is modelled after (almost exactly copied from) the bu
ASoC: rt5651: Add button press support
Enable button press detection for headsets by using the ovcd IRQ to get notified of button presses.
This is modelled after (almost exactly copied from) the button press code for the rt5640 which has identical ovcd hardware.
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
34c906dd |
| 04-Jul-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL)
Allow the machine driver to disable jack-detect over a suspend/resume by calling snd_soc_component_set_jack(NULL).
Note this rena
ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL)
Allow the machine driver to disable jack-detect over a suspend/resume by calling snd_soc_component_set_jack(NULL).
Note this renames rt5651_set_jack, where all the jack-enable work was done to rt5651_enable_jack_detect. This function can now no longer fail as it does not request the IRQ anymore. It can still be passed an invalid jack source, but that should never happen, so this is now logged and treated as no jack source.
Cc: Carlo Caione <carlo@endlessm.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
#
8d2d7bcd |
| 04-Jul-2018 |
Hans de Goede <hdegoede@redhat.com> |
ASoC: rt5651: Fix workqueue cancel vs irq free race on remove
On removal we must free the IRQ *before* cancelling the jack-detect work, so that the jack-detect work cannot be rescheduled by the IRQ.
ASoC: rt5651: Fix workqueue cancel vs irq free race on remove
On removal we must free the IRQ *before* cancelling the jack-detect work, so that the jack-detect work cannot be rescheduled by the IRQ.
Before this commit we were cancelling the jack-detect work from the driver remove callback, while relying on devm to free the IRQ, which happens after the remove callback.
This is the wrong order. This commit uses a devm-action to register a devm callback which cancels the work, before requesting the IRQ (devm tears things down in reverse order). This also allows us to remove the now empty remove driver callback.
Cc: Carlo Caione <carlo@endlessm.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|