diff mbox

[2/2] ASoC: nau8810: change the target of MIC BIAS supply

Message ID 1525315602-3620-2-git-send-email-KCHSU0@nuvoton.com (mailing list archive)
State New, archived
Headers show

Commit Message

AS50 KCHsu0 May 3, 2018, 2:46 a.m. UTC
The MICBAIS will not supply if there is only one path from MICP to
input boost stage. The driver fixes the issue by changing the supply
target to input boost stage mixer.

Signed-off-by: John Hsu <KCHSU0@nuvoton.com>
---
 sound/soc/codecs/nau8810.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Mark Brown May 3, 2018, 11:10 p.m. UTC | #1
On Thu, May 03, 2018 at 10:46:42AM +0800, John Hsu wrote:
> The MICBAIS will not supply if there is only one path from MICP to
> input boost stage. The driver fixes the issue by changing the supply
> target to input boost stage mixer.

Does the input boost stage actually use the MICBIAS supply directly?
More usually a microphone bias would supply the microphone rather than
anything on the chip itself.
AS50 KCHsu0 May 4, 2018, 1:10 a.m. UTC | #2
On 5/4/2018 7:10 AM, Mark Brown wrote:
> On Thu, May 03, 2018 at 10:46:42AM +0800, John Hsu wrote:
>> The MICBAIS will not supply if there is only one path from MICP to
>> input boost stage. The driver fixes the issue by changing the supply
>> target to input boost stage mixer.
>
> Does the input boost stage actually use the MICBIAS supply directly?
> More usually a microphone bias would supply the microphone rather than
> anything on the chip itself.

The input boost stage has a mixer of two input sources. The normal case
is that MIC goes to input PGA, then to input boot stage. The case is
the original design of the driver. But there is another path that MIC
goes input boot stage directly. The case is less happened but has chance.
Ex. The single-end MIC goes to input boot stage. Therefore, we move
the target of MICBIAS to input boost stage which can supply power for
both cases.



===========================================================================================
The privileged confidential information contained in this email is intended for use only by the addressees as indicated by the original sender of this email. If you are not the addressee indicated in this email or are not responsible for delivery of the email to such a person, please kindly reply to the sender indicating this fact and delete all copies of it from your computer and network server immediately. Your cooperation is highly appreciated. It is advised that any unauthorized use of confidential information of Nuvoton is strictly prohibited; and any information in this email irrelevant to the official business of Nuvoton shall be deemed as neither given nor endorsed by Nuvoton.
Mark Brown May 5, 2018, 1:01 a.m. UTC | #3
On Fri, May 04, 2018 at 09:10:32AM +0800, John Hsu wrote:
> On 5/4/2018 7:10 AM, Mark Brown wrote:
> > On Thu, May 03, 2018 at 10:46:42AM +0800, John Hsu wrote:
> > > The MICBAIS will not supply if there is only one path from MICP to
> > > input boost stage. The driver fixes the issue by changing the supply
> > > target to input boost stage mixer.

> > Does the input boost stage actually use the MICBIAS supply directly?
> > More usually a microphone bias would supply the microphone rather than
> > anything on the chip itself.

> The input boost stage has a mixer of two input sources. The normal case
> is that MIC goes to input PGA, then to input boot stage. The case is
> the original design of the driver. But there is another path that MIC
> goes input boot stage directly. The case is less happened but has chance.
> Ex. The single-end MIC goes to input boot stage. Therefore, we move
> the target of MICBIAS to input boost stage which can supply power for
> both cases.

That's not really answering the question - the issue is that the micbias
is normally connected to the microphone and supplies that, it's not
normally connected to anything in the CODEC itself.  You're talking
about the path for the signal from the microphone which isn't the same
thing as the power to the microphone.  The system could have external
micbiases or use the input for something that isn't actually a
microphone for example.
AS50 KCHsu0 May 7, 2018, 6:57 a.m. UTC | #4
On 5/5/2018 9:01 AM, Mark Brown wrote:
> On Fri, May 04, 2018 at 09:10:32AM +0800, John Hsu wrote:
>> On 5/4/2018 7:10 AM, Mark Brown wrote:
>>> On Thu, May 03, 2018 at 10:46:42AM +0800, John Hsu wrote:
>>>> The MICBAIS will not supply if there is only one path from MICP to
>>>> input boost stage. The driver fixes the issue by changing the supply
>>>> target to input boost stage mixer.
>
>>> Does the input boost stage actually use the MICBIAS supply directly?
>>> More usually a microphone bias would supply the microphone rather than
>>> anything on the chip itself.
>
>> The input boost stage has a mixer of two input sources. The normal case
>> is that MIC goes to input PGA, then to input boot stage. The case is
>> the original design of the driver. But there is another path that MIC
>> goes input boot stage directly. The case is less happened but has chance.
>> Ex. The single-end MIC goes to input boot stage. Therefore, we move
>> the target of MICBIAS to input boost stage which can supply power for
>> both cases.
>
> That's not really answering the question - the issue is that the micbias
> is normally connected to the microphone and supplies that, it's not
> normally connected to anything in the CODEC itself.  You're talking
> about the path for the signal from the microphone which isn't the same
> thing as the power to the microphone.  The system could have external
> micbiases or use the input for something that isn't actually a
> microphone for example.

Yes, you are right. In the driver, we suppose that the input of codec
is microphone always. Therefore, we make the micbias on to provide the
power of microphone automatically if any input path is enabled.
What advice do you have to deal with micbias? Thank you.



===========================================================================================
The privileged confidential information contained in this email is intended for use only by the addressees as indicated by the original sender of this email. If you are not the addressee indicated in this email or are not responsible for delivery of the email to such a person, please kindly reply to the sender indicating this fact and delete all copies of it from your computer and network server immediately. Your cooperation is highly appreciated. It is advised that any unauthorized use of confidential information of Nuvoton is strictly prohibited; and any information in this email irrelevant to the official business of Nuvoton shall be deemed as neither given nor endorsed by Nuvoton.
Mark Brown May 11, 2018, 2:23 a.m. UTC | #5
On Mon, May 07, 2018 at 02:57:28PM +0800, John Hsu wrote:

> Yes, you are right. In the driver, we suppose that the input of codec
> is microphone always. Therefore, we make the micbias on to provide the
> power of microphone automatically if any input path is enabled.
> What advice do you have to deal with micbias? Thank you.

Like I say you should just provide the MICBIAS pin and leave it up to
the machine drivers to connect it to whatever microphones it is being
used with.  This means deleting the route from the driver and (in order
to avoid breaking them) adding the relevant route to any machine drivers
that are in mainline already.
diff mbox

Patch

diff --git a/sound/soc/codecs/nau8810.c b/sound/soc/codecs/nau8810.c
index bfd74b8..988bd18 100644
--- a/sound/soc/codecs/nau8810.c
+++ b/sound/soc/codecs/nau8810.c
@@ -468,9 +468,9 @@  static const struct snd_soc_dapm_route nau8810_dapm_routes[] = {
 	{"ADC", NULL, "PLL", check_mclk_select_pll},
 	{"Input Boost Stage", "PGA Mute Switch", "Input PGA"},
 	{"Input Boost Stage", "PMIC PGA Switch", "MICP"},
+	{"Input Boost Stage", NULL, "Mic Bias"},
 
 	/* Input PGA */
-	{"Input PGA", NULL, "Mic Bias"},
 	{"Input PGA", "MicN Switch", "MICN"},
 	{"Input PGA", "MicP Switch", "MICP"},