> -----Original Message----- > From: Steve Lee <steve.lee.analog@xxxxxxxxx> > Sent: Wednesday, April 20, 2022 6:49 AM > To: lgirdwood@xxxxxxxxx; broonie@xxxxxxxxxx; perex@xxxxxxxx; > tiwai@xxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; alsa-devel@alsa- > project.org > Cc: krzk@xxxxxxxxxx; Sa, Nuno <Nuno.Sa@xxxxxxxxxx>; Lee, RyanS > <RyanS.Lee@xxxxxxxxxx>; Steve Lee <steve.lee.analog@xxxxxxxxx> > Subject: [V4 1/2] ASoC: max98390: Add reset gpio control > > [External] > > Add reset gpio control to support RESET PIN connected to gpio. > > Signed-off-by: Steve Lee <steve.lee.analog@xxxxxxxxx> > --- > V3 -> V4: change reset gpio control as GPIO_ACTIVE_LOW in DT > > sound/soc/codecs/max98390.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/sound/soc/codecs/max98390.c > b/sound/soc/codecs/max98390.c > index 40fd6f363f35..bdfd6cccc3d2 100644 > --- a/sound/soc/codecs/max98390.c > +++ b/sound/soc/codecs/max98390.c > @@ -1022,6 +1022,7 @@ static int max98390_i2c_probe(struct > i2c_client *i2c, > > struct max98390_priv *max98390 = NULL; > struct i2c_adapter *adapter = i2c->adapter; > + struct gpio_desc *reset_gpio; > > ret = i2c_check_functionality(adapter, > I2C_FUNC_SMBUS_BYTE > @@ -1073,6 +1074,17 @@ static int max98390_i2c_probe(struct > i2c_client *i2c, > return ret; > } > > + reset_gpio = devm_gpiod_get_optional(&i2c->dev, > + "reset", GPIOD_OUT_HIGH); > + > + /* Power on device */ I guess this comment is redundant as you already say "bring out of reset" some lines below. > + if (reset_gpio) { > + usleep_range(1000, 2000); > + /* bring out of reset */ > + gpiod_set_value_cansleep(reset_gpio, 0); > + usleep_range(1000, 2000); > + } > + Anyways, Acked-by: Nuno Sá <nuno.sa@xxxxxxxxxx>