Re: [PATCH] ASoC: TWL4030: Disable DACs in analog loopback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > > But I'm afraid, this patch does break the Digital loopback,
> > > which needs the DACs to be powered, in case when the capture
> > > path is set in analog mode the ADC(s) also need to be powered.

> > I think that digital loopback should mix TX with RX only when
> > both digital paths are enabled, i.e. in a full-duplex scenario.

> Well, yes... short of. You can still enable the digital 
> loopback without active stream. The TWL codec will be in the same
> state as it if you are using full duplex mode. The only difference
> is that the CPU dai is not running.
> The analog loopback also mixing the RX and TX data, but in 
> the analog domain. If you have only the loopback enabled (analog or
> digital) the RX path is silent in both cases...

I got your point, thanks for the explanation. I think that we can take
this part of the patch:

+	/* Enable master analog loopback mode if any analog switch is enabled*/
+	misc = twl4030_read_reg_cache(w->codec, TWL4030_REG_MISC_SET_1);
+	if (twl4030->bypass_state & 0xF)
+		misc |= TWL4030_FMLOOP_EN;
+	else
+		misc &= ~TWL4030_FMLOOP_EN;
+	twl4030_write(w->codec, TWL4030_REG_MISC_SET_1, misc);

This bit MISC_SET_1[FMLOOP_EN] needs to set to 1 when any of the analog
bypass switches are enabled. Without setting this bit, the loopback is
kind of weak.

If it's fine for you, I can create a new patch for supporting the
VDL analog bypass switch and add above change in that same patch.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux