From: tmonahan@codeaurora.org
To: "David Vrabel" <david.vrabel@csr.com>
Cc: "Inga Stotland" <ingas@codeaurora.org>,
linux-bluetooth@vger.kernel.org, rshaffer@codeaurora.org,
johan.hedberg@gmail.com, marcel@holtmann.org
Subject: Re: Enhancements to allow l2cap channel to use either AMP or BR/EDR
Date: Mon, 2 Aug 2010 09:55:46 -0700 (PDT) [thread overview]
Message-ID: <8bfb018fa669b6ace6840881379a1a01.squirrel@www.codeaurora.org> (raw)
Hi, David,
>> AMP vs BR/EDR preference for L2CAP channel can be configured as command
line argument using new option "-J". Possible values:
>> "require_br_edr",
>> "prefer_amp",
>> "prefer_br_edr"
>> If no preference indicated, the default is set to require BR/EDR.
>
> I think an explicit channel move command and a channel move complete
event are what many applications/profiles will need to be able to use an
AMP effectively.
A future AMP policy setting of "manual" could certainly give each
application the freedom to move an l2cap channel at will, after applying
its own decision making process. However, with that freedom comes the
responsibility of processing the AMP related events and initiating the AMP
commands to make the decision. For example, the application needs to know
if AMP controllers are available both locally and remotely, which in turn
requires initiating the AMP discovery process and looking over the
available local HCI devices; a loss of the physical link event means the
application must move the link back to BR/EDR, etc. All of the additional
machinery to accomplish that could indeed be exposed for use by
applications. I think such an approach, if really needed, would not
conflict with these proposed policies that hide all of that within the
kernel.
To illustrate how these policies simplify applications, consider OBEX. An
OBEX server application would choose "prefer_br_edr", thus leaving the
remote OBEX client to decide and initiate the channel move to an AMP, and
thus granting advance permission to the kernel for the move to take place.
The OBEX client could examine the size of an upcoming transfer and choose
"prefer_amp", thereby instructing the kernel to initiate the move to an
AMP if all local and remote conditions allow it. Thus, the OBEX client and
server applications make simplistic decisions to set up AMP, and can focus
on moving data over the l2cap channel, leaving the management of what
medium the data flows over up to the kernel, who keeps it transparent. In
this way, work to make an existing profile "AMP aware" is also minimal.
In the discussion with Marcel regarding our AMP proposal in March ("RFC:
QuIC's AMP + eL2CAP Technical Plans"), where we had listed these AMP
control policies, he seemed to indicate that these policies would
automatically trigger AMP discovery within the kernel, which it will. As
he said, "Less options are less confusing for users" (apologies in advance
if I misinterpreted his answer).
Best regards,
Tim Monahan-Mitchell
--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
next reply other threads:[~2010-08-02 16:55 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-02 16:55 tmonahan [this message]
2010-08-02 18:53 ` Enhancements to allow l2cap channel to use either AMP or BR/EDR Marcel Holtmann
2010-08-02 22:41 ` Kevin Hayes
2010-08-02 22:58 ` Marcel Holtmann
2010-08-03 0:51 ` Kevin Hayes
[not found] ` <B7132A25476D334D9130FE7532F2A56310A0B08A61@SC1EXMB-MBCL.global.athero s.com>
2010-08-03 1:30 ` Peter Krystad
2010-08-03 1:59 ` Marcel Holtmann
2010-08-03 8:07 ` Gustavo F. Padovan
2010-08-03 13:40 ` Tim Monahan-Mitchell
2010-08-03 1:59 ` Marcel Holtmann
2010-08-03 4:47 ` Kevin Hayes
2010-08-03 12:59 ` David Vrabel
2010-08-03 16:14 ` Marcel Holtmann
-- strict thread matches above, loose matches on Subject: below --
2010-07-30 18:30 Inga Stotland
2010-08-02 12:04 ` David Vrabel
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=8bfb018fa669b6ace6840881379a1a01.squirrel@www.codeaurora.org \
--to=tmonahan@codeaurora.org \
--cc=david.vrabel@csr.com \
--cc=ingas@codeaurora.org \
--cc=johan.hedberg@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=marcel@holtmann.org \
--cc=rshaffer@codeaurora.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox