On Thu, Jun 24, 2010 at 8:05 PM, Liam Girdwood <lrg@xxxxxxxxxxxxxxx> wrote: > On Thu, 2010-06-24 at 19:54 +0400, Vladimir Zapolskiy wrote: >> Hi, >> >> On Thu, Jun 24, 2010 at 5:49 PM, Liam Girdwood <lrg@xxxxxxxxxxxxxxx> wrote: >> > On Thu, 2010-06-24 at 17:38 +0400, Vladimir Zapolskiy wrote: > >> >> @@ -559,9 +546,11 @@ static int uda134x_soc_probe(struct platform_device *pdev) >> >> codec->num_dai = 1; >> >> codec->read = uda134x_read_reg_cache; >> >> codec->write = uda134x_write; >> >> -#ifdef POWER_OFF_ON_STANDBY >> >> - codec->set_bias_level = uda134x_set_bias_level; >> >> -#endif >> >> + >> >> + if (!pd->is_powered_on_standby) { >> >> + codec->set_bias_level = uda134x_set_bias_level; >> > >> > The codec ops pointers have moved in multi-component. Can you put this >> > check in your uda134x_set_bias_level() instead. >> > >> Not sure I understand the problem, and I do not see a simple solution >> for actual bugfix in patch 2/2, if this check is placed in >> uda134x_set_bias_level(). Please could you provide me with a hint or >> link to some codec source file? > > I was meaning something like :- > > uda134x_set_bias_level() > { > if (pd->is_powered_on_standby) > return > > /* rest of func */ > > } > Thank you, good that I meant the same. But that makes quite impossible to set a mandatory bias level on initialization without additional code complication. > The multi-component branch makes codec->set_bias_level a driver level > operation (that can be shared amongst other uda134x codec devices so we > cant change this at runtime) > Looks like I miss something, because in codec drivers I observe codec->set_bias_level is set in probe function, like it is in uda134x. Would it be better just to drop a condition of pd->is_powered_on_standby? What do you think? Vladimir _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel