On 15/09/2020 12:50:34+0100, Mark Brown wrote: > On Tue, Sep 15, 2020 at 10:26:02AM +0200, Alexandre Belloni wrote: > > On 11/09/2020 19:31:40+0200, Miquel Raynal wrote: > > > > + /* > > > + * Enable the fast charging feature and ensure the needed 40ms ellapsed > > > + * before using the analog circuits. > > > + */ > > > + snd_soc_component_write(component, AIC32X4_REFPOWERUP, > > > + AIC32X4_REFPOWERUP_40MS); > > > + msleep(40); > > > + > > > Maybe the actual REFPOWERUP value could be exposed as a control so > > userspace has a way to set the policy? > > We very rarely do this, there's not usially anything > Could you suggest something then? This mainly changes the power codec power consumption. I guess people will want to trade latency for less consumption. > > I'm not sure it make sense to have the delay in probe because it is not > > enable the analog part of the codec. The delay should probable be after > > the clocks have been set up because the datasheet says that it is mdac > > and madc that is starting the analog circuitry. > > Deferring the delay to a workqueue is the usual thing where there's > concerns about slowing down boot. Well, that was not my concern. I didn't realize Miquel actually used the Force power-up values and though the actual power up happened after configuring the clocks (as is the case for the dafule values). In this case, the delay is at the proper location. -- Alexandre Belloni, Bootlin Embedded Linux and Kernel engineering https://bootlin.com