tfa989x
struct tfa989x *tfa989x = snd_soc_component_get_drvdata(component);
gpiod_set_value_cansleep(tfa989x->rcv_gpiod, ucontrol->value.enumerated.item[0]);
struct tfa989x *tfa989x = snd_soc_component_get_drvdata(component);
if (tfa989x->rev->rev == TFA9897_REVISION)
struct tfa989x *tfa989x = data;
regulator_disable(tfa989x->vddd_supply);
struct tfa989x *tfa989x;
tfa989x = devm_kzalloc(dev, sizeof(*tfa989x), GFP_KERNEL);
if (!tfa989x)
tfa989x->rev = rev;
i2c_set_clientdata(i2c, tfa989x);
tfa989x->vddd_supply = devm_regulator_get(dev, "vddd");
if (IS_ERR(tfa989x->vddd_supply))
return dev_err_probe(dev, PTR_ERR(tfa989x->vddd_supply),
if (tfa989x->rev->rev == TFA9897_REVISION) {
tfa989x->rcv_gpiod = devm_gpiod_get_optional(dev, "rcv", GPIOD_OUT_LOW);
if (IS_ERR(tfa989x->rcv_gpiod))
return PTR_ERR(tfa989x->rcv_gpiod);
ret = regulator_enable(tfa989x->vddd_supply);
ret = devm_add_action_or_reset(dev, tfa989x_regulator_disable, tfa989x);