lkml.org 
[lkml]   [2020]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] ASoC: ti: Allocate dais dynamically for TDM and audio graph card
Hi,

On Fri, Feb 14, 2020 at 09:09:46AM -0800, Tony Lindgren wrote:
> * Sebastian Reichel <sre@kernel.org> [200214 13:05]:
> > On Thu, Feb 13, 2020 at 05:34:54PM -0800, Tony Lindgren wrote:
> > > And bluetooth would be similar to cpcap_audio and mot_mdm6600_audio
> > > above.
> >
> > My understanding is, that CPU is not involved for calls (except for
> > setting up cpcap registers correctly). Basically McBSP3 should
> > remain idle for a call and data goes directly from modem to cpcap.
> > The same should work for modem <-> BT, except that CPCAP seems to
> > always provide the clock. That would imply a direct link between
> > modem and codec / BT?
>
> Yes the direct link is i2s. I'm ot sure if mcbsp can be idle during
> voice call though, I guess it should be doable since mcbsp is not
> the clock master :)
>
> > > My guess is that only cpcap registers and clock rate needs to be
> > > changed for bluetooth audio BTW, so if somebody havs a bluetooth
> > > headset just do the following in Android:
> > >
> > > # cpcaprw --all > /tmp/before
> > > configure bluetooth headset for audio in android and start
> > > playing some music or make a phone call
> > > ...
> > > # cpcaprw --all > /tmp/after
> > > stop playing music or phone call
> > > ...
> > > diff -u /tmp/before /tmp/after
> > >
> > > The registers will be different for a bluetooth phone call and
> > > playing music.
> >
> > I can provider register values once I find some time.

[NI] Normal idle (no BT headset connected)
[BI] Bluetooth idle (with BT headset connected)
[BC] Bluetooth call in progress
[NC] Normal call in progress (BT headset disabled)

[NI] => [BI] => [BC] => [NC]
CPCAP_REG_VAUDIOC 0x0065 => 0x0065 => 0x0065 => 0x0025
CPCAP_REG_CC 0x0000 => 0x0000 => 0x6000 => 0x60df
CPCAP_REG_CDI 0x0040 => 0x0000 => 0xaa40 => 0xae0a
CPCAP_REG_SDAC -------------- 0x0000 --------------
CPCAP_REG_SDACDI -------------- 0x0004 --------------
CPCAP_REG_TXI 0x0804 => 0x0004 => 0x0000 => 0x0cc6
CPCAP_REG_TXMP 0x079c => 0x079c => 0x0400 => 0x0673
CPCAP_REG_RXOA 0x0000 => 0x0000 => 0x0001 => 0x0001
CPCAP_REG_RXVC 0x0d34 => 0x0d34 => 0x0000 => 0x0b2c
CPCAP_REG_RXCOA 0x0000 => 0x0000 => 0x0000 => 0x0601
CPCAP_REG_RXSDOA 0x0000 => 0x0000 => 0x0600 => 0x0600
CPCAP_REG_RXEPOA -------------- 0x0400 --------------
CPCAP_REG_RXLL -------------- 0x0000 --------------
CPCAP_REG_A2LA -------------- 0x0030 --------------
CPCAP_REG_MIPIS1 -------------- 0x0000 --------------
CPCAP_REG_MIPIS2 -------------- 0x0000 --------------
CPCAP_REG_MIPIS3 -------------- 0x0000 --------------
CPCAP_REG_LVAB -------------- 0x0000 --------------

-- Sebastian
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2020-02-18 15:05    [W:0.117 / U:4.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site