diff options
author | Mark Brown <broonie@kernel.org> | 2023-10-03 15:21:12 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2023-10-03 15:21:12 +0200 |
commit | 4c9d0d6f63c72cf121d15ab81ab9e1cdf50ec02c (patch) | |
tree | ceec1e8d71c8adc4b75a79b734b6e448617a8c08 | |
parent | ASoC: pcm512x: Adds bindings for TAS575x devices (diff) | |
parent | ASoC: codecs: aw88261: Remove non-existing reset gpio (diff) | |
download | linux-4c9d0d6f63c72cf121d15ab81ab9e1cdf50ec02c.tar.xz linux-4c9d0d6f63c72cf121d15ab81ab9e1cdf50ec02c.zip |
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.
-rw-r--r-- | Documentation/devicetree/bindings/sound/awinic,aw88395.yaml | 16 | ||||
-rw-r--r-- | sound/soc/codecs/aw88261.c | 15 |
2 files changed, 12 insertions, 19 deletions
diff --git a/Documentation/devicetree/bindings/sound/awinic,aw88395.yaml b/Documentation/devicetree/bindings/sound/awinic,aw88395.yaml index b977d3de87cb..5d5ebc72b721 100644 --- a/Documentation/devicetree/bindings/sound/awinic,aw88395.yaml +++ b/Documentation/devicetree/bindings/sound/awinic,aw88395.yaml @@ -14,9 +14,6 @@ description: digital Smart K audio amplifier with an integrated 10.25V smart boost convert. -allOf: - - $ref: dai-common.yaml# - properties: compatible: enum: @@ -49,9 +46,20 @@ required: - compatible - reg - '#sound-dai-cells' - - reset-gpios - awinic,audio-channel +allOf: + - $ref: dai-common.yaml# + - if: + properties: + compatible: + contains: + enum: + - awinic,aw88261 + then: + properties: + reset-gpios: false + unevaluatedProperties: false examples: diff --git a/sound/soc/codecs/aw88261.c b/sound/soc/codecs/aw88261.c index 45eaf931a69c..e7683f70c2ef 100644 --- a/sound/soc/codecs/aw88261.c +++ b/sound/soc/codecs/aw88261.c @@ -10,7 +10,6 @@ #include <linux/i2c.h> #include <linux/firmware.h> -#include <linux/of_gpio.h> #include <linux/regmap.h> #include <sound/soc.h> #include "aw88261.h" @@ -1175,14 +1174,6 @@ static const struct snd_soc_component_driver soc_codec_dev_aw88261 = { .remove = aw88261_codec_remove, }; -static void aw88261_hw_reset(struct aw88261 *aw88261) -{ - gpiod_set_value_cansleep(aw88261->reset_gpio, 0); - usleep_range(AW88261_1000_US, AW88261_1000_US + 10); - gpiod_set_value_cansleep(aw88261->reset_gpio, 1); - usleep_range(AW88261_1000_US, AW88261_1000_US + 10); -} - static void aw88261_parse_channel_dt(struct aw88261 *aw88261) { struct aw_device *aw_dev = aw88261->aw_pa; @@ -1254,12 +1245,6 @@ static int aw88261_i2c_probe(struct i2c_client *i2c) i2c_set_clientdata(i2c, aw88261); - aw88261->reset_gpio = devm_gpiod_get_optional(&i2c->dev, "reset", GPIOD_OUT_LOW); - if (IS_ERR(aw88261->reset_gpio)) - dev_info(&i2c->dev, "reset gpio not defined\n"); - else - aw88261_hw_reset(aw88261); - aw88261->regmap = devm_regmap_init_i2c(i2c, &aw88261_remap_config); if (IS_ERR(aw88261->regmap)) { ret = PTR_ERR(aw88261->regmap); |