Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5119222f authored by Anatol Pomozov's avatar Anatol Pomozov Committed by Mark Brown
Browse files

ASoC: max98357a: Make 'sdmode-gpios' dts property optional



The option is not needed if chip is always on or managed by some other part
of system like platform card driver.

Signed-off-by: default avatarAnatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent d770e558
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -4,7 +4,11 @@ This node models the Maxim MAX98357A DAC.

Required properties:
- compatible   : "maxim,max98357a"
- sdmode-gpios : GPIO specifier for the GPIO -> DAC SDMODE pin

Optional properties:
- sdmode-gpios : GPIO specifier for the chip's SD_MODE pin.
        If this option is not specified then driver does not manage
        the pin state (e.g. chip is always on).

Example:

+4 −1
Original line number Diff line number Diff line
@@ -31,6 +31,9 @@ static int max98357a_daiops_trigger(struct snd_pcm_substream *substream,
{
	struct gpio_desc *sdmode = snd_soc_dai_get_drvdata(dai);

	if (!sdmode)
		return 0;

	switch (cmd) {
	case SNDRV_PCM_TRIGGER_START:
	case SNDRV_PCM_TRIGGER_RESUME:
@@ -60,7 +63,7 @@ static int max98357a_codec_probe(struct snd_soc_codec *codec)
{
	struct gpio_desc *sdmode;

	sdmode = devm_gpiod_get(codec->dev, "sdmode", GPIOD_OUT_LOW);
	sdmode = devm_gpiod_get_optional(codec->dev, "sdmode", GPIOD_OUT_LOW);
	if (IS_ERR(sdmode)) {
		dev_err(codec->dev, "%s() unable to get sdmode GPIO: %ld\n",
				__func__, PTR_ERR(sdmode));