* [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper
@ 2012-11-15 16:14 Andrei Emeltchenko
2012-11-15 16:14 ` [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
` (3 more replies)
0 siblings, 4 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-15 16:14 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Use helper instead of test_bit. This is the only place left using
test CONF_CONNECT_PEND flag.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 04e26e6..751d8a7 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -6469,7 +6469,7 @@ int l2cap_security_cfm(struct hci_conn *hcon, u8 status, u8 encrypt)
continue;
}
- if (test_bit(CONF_CONNECT_PEND, &chan->conf_state)) {
+ if (!__l2cap_no_conn_pending(chan)) {
l2cap_chan_unlock(chan);
continue;
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req
2012-11-15 16:14 [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Andrei Emeltchenko
@ 2012-11-15 16:14 ` Andrei Emeltchenko
2012-11-15 23:56 ` Marcel Holtmann
2012-11-15 16:14 ` [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization Andrei Emeltchenko
` (2 subsequent siblings)
3 siblings, 1 reply; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-15 16:14 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
When receiving Physical Link Completed event we need to create L2CAP
channel with L2CAP Create Chan Request. Current code was sending
this command only if connection was pending (which is probably
needed in channel move case). If channel is not moved but created
Create Chan should be sent for outgoing channel which is checked
with BT_CONNECT flag.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 29 ++++++++++++++++++-----------
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 751d8a7..f6a8960 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -4594,15 +4594,31 @@ void l2cap_move_start(struct l2cap_chan *chan)
static void l2cap_do_create(struct l2cap_chan *chan, int result,
u8 local_amp_id, u8 remote_amp_id)
{
+ BT_DBG("chan %p state %s %u -> %u", chan, state_to_string(chan->state),
+ local_amp_id, remote_amp_id);
+
chan->fcs = L2CAP_FCS_NONE;
- if (!test_bit(CONF_CONNECT_PEND, &chan->conf_state)) {
+ /* Outgoing channel on AMP */
+ if (chan->state == BT_CONNECT) {
+ if (result == L2CAP_CR_SUCCESS) {
+ chan->local_amp_id = local_amp_id;
+ l2cap_send_create_chan_req(chan, remote_amp_id);
+ } else {
+ /* Revert to BR/EDR connect */
+ l2cap_send_conn_req(chan);
+ }
+
+ return;
+ }
+
+ /* Incoming channel on AMP */
+ if (__l2cap_no_conn_pending(chan)) {
struct l2cap_conn_rsp rsp;
char buf[128];
rsp.scid = cpu_to_le16(chan->dcid);
rsp.dcid = cpu_to_le16(chan->scid);
- /* Incoming channel on AMP */
if (result == L2CAP_CR_SUCCESS) {
/* Send successful response */
rsp.result = __constant_cpu_to_le16(L2CAP_CR_SUCCESS);
@@ -4624,15 +4640,6 @@ static void l2cap_do_create(struct l2cap_chan *chan, int result,
l2cap_build_conf_req(chan, buf), buf);
chan->num_conf_req++;
}
- } else {
- /* Outgoing channel on AMP */
- if (result == L2CAP_CR_SUCCESS) {
- chan->local_amp_id = local_amp_id;
- l2cap_send_create_chan_req(chan, remote_amp_id);
- } else {
- /* Revert to BR/EDR connect */
- l2cap_send_conn_req(chan);
- }
}
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization
2012-11-15 16:14 [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Andrei Emeltchenko
2012-11-15 16:14 ` [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
@ 2012-11-15 16:14 ` Andrei Emeltchenko
2012-11-15 23:53 ` Marcel Holtmann
2012-11-15 16:14 ` [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
2012-11-15 23:53 ` [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Marcel Holtmann
3 siblings, 1 reply; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-15 16:14 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
local_amp_id is already set in l2cap_connect() which is called several
lines above.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index f6a8960..33eb3f4 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -4360,7 +4360,6 @@ static int l2cap_create_channel_req(struct l2cap_conn *conn,
BT_DBG("mgr %p bredr_chan %p hs_hcon %p", mgr, chan, hs_hcon);
- chan->local_amp_id = req->amp_id;
mgr->bredr_chan = chan;
chan->hs_hcon = hs_hcon;
conn->mtu = hdev->block_mtu;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt
2012-11-15 16:14 [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Andrei Emeltchenko
2012-11-15 16:14 ` [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
2012-11-15 16:14 ` [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization Andrei Emeltchenko
@ 2012-11-15 16:14 ` Andrei Emeltchenko
2012-11-15 23:54 ` Marcel Holtmann
2012-11-19 21:28 ` Gustavo Padovan
2012-11-15 23:53 ` [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Marcel Holtmann
3 siblings, 2 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-15 16:14 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
local_amp_id is used in l2cap_physical_cfm and shall be set up
before calling it.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/amp.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/bluetooth/amp.c b/net/bluetooth/amp.c
index eb61aaa..ac9e8fe 100644
--- a/net/bluetooth/amp.c
+++ b/net/bluetooth/amp.c
@@ -392,6 +392,7 @@ void amp_physical_cfm(struct hci_conn *bredr_hcon, struct hci_conn *hs_hcon)
set_bit(FLAG_EFS_ENABLE, &bredr_chan->flags);
bredr_chan->remote_amp_id = hs_hcon->remote_id;
+ bredr_chan->local_amp_id = hs_hcon->hdev->id;
bredr_chan->hs_hcon = hs_hcon;
bredr_chan->conn->mtu = hs_hcon->hdev->block_mtu;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper
2012-11-15 16:14 [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Andrei Emeltchenko
` (2 preceding siblings ...)
2012-11-15 16:14 ` [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
@ 2012-11-15 23:53 ` Marcel Holtmann
3 siblings, 0 replies; 15+ messages in thread
From: Marcel Holtmann @ 2012-11-15 23:53 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
> Use helper instead of test_bit. This is the only place left using
> test CONF_CONNECT_PEND flag.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/l2cap_core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Regards
Marcel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization
2012-11-15 16:14 ` [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization Andrei Emeltchenko
@ 2012-11-15 23:53 ` Marcel Holtmann
0 siblings, 0 replies; 15+ messages in thread
From: Marcel Holtmann @ 2012-11-15 23:53 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
> local_amp_id is already set in l2cap_connect() which is called several
> lines above.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/l2cap_core.c | 1 -
> 1 file changed, 1 deletion(-)
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Regards
Marcel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt
2012-11-15 16:14 ` [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
@ 2012-11-15 23:54 ` Marcel Holtmann
2012-11-19 21:28 ` Gustavo Padovan
1 sibling, 0 replies; 15+ messages in thread
From: Marcel Holtmann @ 2012-11-15 23:54 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
> local_amp_id is used in l2cap_physical_cfm and shall be set up
> before calling it.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/amp.c | 1 +
> 1 file changed, 1 insertion(+)
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Regards
Marcel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req
2012-11-15 16:14 ` [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
@ 2012-11-15 23:56 ` Marcel Holtmann
0 siblings, 0 replies; 15+ messages in thread
From: Marcel Holtmann @ 2012-11-15 23:56 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
> When receiving Physical Link Completed event we need to create L2CAP
> channel with L2CAP Create Chan Request. Current code was sending
> this command only if connection was pending (which is probably
> needed in channel move case). If channel is not moved but created
> Create Chan should be sent for outgoing channel which is checked
> with BT_CONNECT flag.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/l2cap_core.c | 29 ++++++++++++++++++-----------
> 1 file changed, 18 insertions(+), 11 deletions(-)
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Regards
Marcel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt
2012-11-15 16:14 ` [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
2012-11-15 23:54 ` Marcel Holtmann
@ 2012-11-19 21:28 ` Gustavo Padovan
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
1 sibling, 1 reply; 15+ messages in thread
From: Gustavo Padovan @ 2012-11-19 21:28 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
* Andrei Emeltchenko <Andrei.Emeltchenko.news@gmail.com> [2012-11-15 18:14:56 +0200]:
> From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
>
> local_amp_id is used in l2cap_physical_cfm and shall be set up
> before calling it.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/amp.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/net/bluetooth/amp.c b/net/bluetooth/amp.c
> index eb61aaa..ac9e8fe 100644
> --- a/net/bluetooth/amp.c
> +++ b/net/bluetooth/amp.c
> @@ -392,6 +392,7 @@ void amp_physical_cfm(struct hci_conn *bredr_hcon, struct hci_conn *hs_hcon)
>
> set_bit(FLAG_EFS_ENABLE, &bredr_chan->flags);
> bredr_chan->remote_amp_id = hs_hcon->remote_id;
> + bredr_chan->local_amp_id = hs_hcon->hdev->id;
> bredr_chan->hs_hcon = hs_hcon;
> bredr_chan->conn->mtu = hs_hcon->hdev->block_mtu;
I was able to apply patches 1 and 3 to bluetooth-next. The other 2 doesn't
apply for some reason, please rebase. Thanks.
Gustavo
^ permalink raw reply [flat|nested] 15+ messages in thread
* [RFC 0/4] Bluetooth: AMP fixes
2012-11-19 21:28 ` Gustavo Padovan
@ 2012-11-20 15:16 ` Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 1/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
` (3 more replies)
0 siblings, 4 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-20 15:16 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Set of fixes fixing remaining issues after merging Mat and mine patches.
Andrei Emeltchenko (4):
Bluetooth: Fix sending L2CAP Create Chan Req
Bluetooth: Set local_amp_id after getting Phylink Completed evt
Bluetooth: Improve error message printing
Bluetooth: AMP: Set no FCS for incoming L2CAP chan
net/bluetooth/amp.c | 1 +
net/bluetooth/l2cap_core.c | 32 ++++++++++++++++++++------------
2 files changed, 21 insertions(+), 12 deletions(-)
--
1.7.10.4
^ permalink raw reply [flat|nested] 15+ messages in thread
* [RFC 1/4] Bluetooth: Fix sending L2CAP Create Chan Req
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
@ 2012-11-20 15:16 ` Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 2/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
` (2 subsequent siblings)
3 siblings, 0 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-20 15:16 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
When receiving Physical Link Completed event we need to create L2CAP
channel with L2CAP Create Chan Request. Current code was sending
this command only if connection was pending (which is probably
needed in channel move case). If channel is not moved but created
Create Chan should be sent for outgoing channel which is checked
with BT_CONNECT flag.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 29 ++++++++++++++++++-----------
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 3ed9393..7114bdf 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -4517,15 +4517,31 @@ void l2cap_move_start(struct l2cap_chan *chan)
static void l2cap_do_create(struct l2cap_chan *chan, int result,
u8 local_amp_id, u8 remote_amp_id)
{
+ BT_DBG("chan %p state %s %u -> %u", chan, state_to_string(chan->state),
+ local_amp_id, remote_amp_id);
+
chan->fcs = L2CAP_FCS_NONE;
- if (!test_bit(CONF_CONNECT_PEND, &chan->conf_state)) {
+ /* Outgoing channel on AMP */
+ if (chan->state == BT_CONNECT) {
+ if (result == L2CAP_CR_SUCCESS) {
+ chan->local_amp_id = local_amp_id;
+ l2cap_send_create_chan_req(chan, remote_amp_id);
+ } else {
+ /* Revert to BR/EDR connect */
+ l2cap_send_conn_req(chan);
+ }
+
+ return;
+ }
+
+ /* Incoming channel on AMP */
+ if (__l2cap_no_conn_pending(chan)) {
struct l2cap_conn_rsp rsp;
char buf[128];
rsp.scid = cpu_to_le16(chan->dcid);
rsp.dcid = cpu_to_le16(chan->scid);
- /* Incoming channel on AMP */
if (result == L2CAP_CR_SUCCESS) {
/* Send successful response */
rsp.result = __constant_cpu_to_le16(L2CAP_CR_SUCCESS);
@@ -4547,15 +4563,6 @@ static void l2cap_do_create(struct l2cap_chan *chan, int result,
l2cap_build_conf_req(chan, buf), buf);
chan->num_conf_req++;
}
- } else {
- /* Outgoing channel on AMP */
- if (result == L2CAP_CR_SUCCESS) {
- chan->local_amp_id = local_amp_id;
- l2cap_send_create_chan_req(chan, remote_amp_id);
- } else {
- /* Revert to BR/EDR connect */
- l2cap_send_conn_req(chan);
- }
}
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 2/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 1/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
@ 2012-11-20 15:16 ` Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 3/4] Bluetooth: Improve error message printing Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan Andrei Emeltchenko
3 siblings, 0 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-20 15:16 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
local_amp_id is used in l2cap_physical_cfm and shall be set up
before calling it.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/amp.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/bluetooth/amp.c b/net/bluetooth/amp.c
index 0258b26..1b0d92c 100644
--- a/net/bluetooth/amp.c
+++ b/net/bluetooth/amp.c
@@ -390,6 +390,7 @@ void amp_physical_cfm(struct hci_conn *bredr_hcon, struct hci_conn *hs_hcon)
set_bit(FLAG_EFS_ENABLE, &bredr_chan->flags);
bredr_chan->remote_amp_id = hs_hcon->remote_id;
+ bredr_chan->local_amp_id = hs_hcon->hdev->id;
bredr_chan->hs_hcon = hs_hcon;
bredr_chan->conn->mtu = hs_hcon->hdev->block_mtu;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 3/4] Bluetooth: Improve error message printing
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 1/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 2/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
@ 2012-11-20 15:16 ` Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan Andrei Emeltchenko
3 siblings, 0 replies; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-20 15:16 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Instead of printing:
"[ 7763.082007] Bluetooth: 2"
print something like:
"[ 7763.082007] Bluetooth: Trailing bytes: 2 in sframe"
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 7114bdf..f44c542 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -6091,7 +6091,7 @@ static int l2cap_data_rcv(struct l2cap_chan *chan, struct sk_buff *skb)
control->super);
if (len != 0) {
- BT_ERR("%d", len);
+ BT_ERR("Trailing bytes: %d in sframe", len);
l2cap_send_disconn_req(chan->conn, chan, ECONNRESET);
goto drop;
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
` (2 preceding siblings ...)
2012-11-20 15:16 ` [RFC 3/4] Bluetooth: Improve error message printing Andrei Emeltchenko
@ 2012-11-20 15:16 ` Andrei Emeltchenko
2012-11-20 17:56 ` Gustavo Padovan
3 siblings, 1 reply; 15+ messages in thread
From: Andrei Emeltchenko @ 2012-11-20 15:16 UTC (permalink / raw)
To: linux-bluetooth
From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
When receiving L2CAP Create Channel Request set the channel as
L2CAP_FCS_NONE. Then in "L2CAP Config req" following field will
be set: "FCS Option 0x00 (No FCS)". So by default High Speed
channels have no FCS.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
---
net/bluetooth/l2cap_core.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index f44c542..b52f66d 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -4286,6 +4286,7 @@ static int l2cap_create_channel_req(struct l2cap_conn *conn,
mgr->bredr_chan = chan;
chan->hs_hcon = hs_hcon;
+ chan->fcs = L2CAP_FCS_NONE;
conn->mtu = hdev->block_mtu;
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan
2012-11-20 15:16 ` [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan Andrei Emeltchenko
@ 2012-11-20 17:56 ` Gustavo Padovan
0 siblings, 0 replies; 15+ messages in thread
From: Gustavo Padovan @ 2012-11-20 17:56 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth
Hi Andrei,
* Andrei Emeltchenko <Andrei.Emeltchenko.news@gmail.com> [2012-11-20 17:16:22 +0200]:
> From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
>
> When receiving L2CAP Create Channel Request set the channel as
> L2CAP_FCS_NONE. Then in "L2CAP Config req" following field will
> be set: "FCS Option 0x00 (No FCS)". So by default High Speed
> channels have no FCS.
>
> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> ---
> net/bluetooth/l2cap_core.c | 1 +
> 1 file changed, 1 insertion(+)
All 4 patches have been applied to bluetooth-next. Thanks.
Gustavo
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2012-11-20 17:56 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-15 16:14 [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Andrei Emeltchenko
2012-11-15 16:14 ` [RFC 2/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
2012-11-15 23:56 ` Marcel Holtmann
2012-11-15 16:14 ` [RFC 3/4] Bluetooth: Remove unneeded local_amp_id initialization Andrei Emeltchenko
2012-11-15 23:53 ` Marcel Holtmann
2012-11-15 16:14 ` [RFC 4/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
2012-11-15 23:54 ` Marcel Holtmann
2012-11-19 21:28 ` Gustavo Padovan
2012-11-20 15:16 ` [RFC 0/4] Bluetooth: AMP fixes Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 1/4] Bluetooth: Fix sending L2CAP Create Chan Req Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 2/4] Bluetooth: Set local_amp_id after getting Phylink Completed evt Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 3/4] Bluetooth: Improve error message printing Andrei Emeltchenko
2012-11-20 15:16 ` [RFC 4/4] Bluetooth: AMP: Set no FCS for incoming L2CAP chan Andrei Emeltchenko
2012-11-20 17:56 ` Gustavo Padovan
2012-11-15 23:53 ` [RFC 1/4] Bluetooth: Use __l2cap_no_conn_pending helper Marcel Holtmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).