All of lore.kernel.org
 help / color / mirror / Atom feed
From: Denis Kenzior <denkenz@gmail.com>
To: ofono@ofono.org
Subject: Re: [PATCH] hfpmodem: Delay AT+CLCC request after outgoing callsetup
Date: Wed, 16 Jan 2013 21:37:12 -0600	[thread overview]
Message-ID: <50F771E8.1000305@gmail.com> (raw)
In-Reply-To: <c97f1d8ae1e614a832b53b2b0c6f5da33c710a97.1357896034.git.timo.mueller@bmw-carit.de>

[-- Attachment #1: Type: text/plain, Size: 1882 bytes --]

Hi Timo,

On 01/11/2013 07:00 AM, mail(a)timomueller.eu wrote:
> From: Timo Mueller<timo.mueller@bmw-carit.de>
>
> Currently the list of current calls is requested right after an
> outgoing callsetup has been reported by the AG device. If the AG
> device updates the list after reporting the callsetup the +CLCC
> response may not contain the new call and it is not registered
> with oFono.
>
> AT sequence that exhibited the failure (AG device was a Nokia N9
> placing an outgoing call)
>
> <  \r\n+CIEV: 5,2\r\n

So here it tells us that the callsetup is 2 (e.g. dialing)

>> AT+CLCC\r
> <  \r\nOK\r\n

And then it tells us "There are no calls to see here..."

Big. Fail. ;)

> <  \r\n+VGS=7\r\n
> <  \r\n+VGM=7\r\n
> <  \r\n+CIEV: 5,3\r\n
> <  \r\n+CIEV: 4,1\r\n
> <  \r\n+CIEV: 5,0\r\n
> ---
>   drivers/hfpmodem/voicecall.c | 7 +++++--
>   1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/hfpmodem/voicecall.c b/drivers/hfpmodem/voicecall.c
> index 505601c..c7c5f45 100644
> --- a/drivers/hfpmodem/voicecall.c
> +++ b/drivers/hfpmodem/voicecall.c
> @@ -912,8 +912,11 @@ static void ciev_callsetup_notify(struct ofono_voicecall *vc,
>   		 * from HF: query and sync the phone number.
>   		 * from AG: query and create call.
>   		 */
> -		g_at_chat_send(vd->chat, "AT+CLCC", clcc_prefix,
> -				clcc_poll_cb, vc, NULL);
> +		if (vd->clcc_source)
> +			g_source_remove(vd->clcc_source);
> +
> +		vd->clcc_source = g_timeout_add(POLL_CLCC_DELAY,
> +							poll_clcc, vc);

Actually I really don't like this, you are delaying the call detection 
for all devices (even good ones) because of one broken one.

I'd rather we request the CLCC immediately, but set a flag to retry the 
CLCC after a timeout in case the call list is not what we expected.

>   		break;
>
>   	case 3:

Regards,
-Denis

      reply	other threads:[~2013-01-17  3:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-11 13:00 [PATCH] Delay AT+CLCC request after setup of an outgoing call mail
2013-01-11 13:00 ` [PATCH] hfpmodem: Delay AT+CLCC request after outgoing callsetup mail
2013-01-17  3:37   ` Denis Kenzior [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50F771E8.1000305@gmail.com \
    --to=denkenz@gmail.com \
    --cc=ofono@ofono.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.