Re: [Bluez-devel] forcing SCO connection patch

From: Marcel Holtmann
Date: Mon Feb 25 2008 - 22:07:45 EST


Hi Louis,

I fixed all of errors except 80 characters warning.
Thanks

Louis JANG

Signed-off-by: Louis JANG <louis@xxxxxxxx>

--- linux-2.6.23/net/bluetooth/hci_event.c.orig 2008-02-25 17:17:11.000000000 +0900
+++ linux-2.6.23/net/bluetooth/hci_event.c 2008-02-25 17:30:23.000000000 +0900
@@ -1313,8 +1313,17 @@
hci_dev_lock(hdev);

conn = hci_conn_hash_lookup_ba(hdev, ev->link_type, &ev->bdaddr);
- if (!conn)
- goto unlock;
+ if (!conn) {
+ if (ev->link_type != ACL_LINK) {
+ __u8 link_type = (ev->link_type == ESCO_LINK) ? SCO_LINK : ESCO_LINK;
+
+ conn = hci_conn_hash_lookup_ba(hdev, link_type, &ev->bdaddr);
+ if (conn)
+ conn->type = ev->link_type;
+ }
+ if (!conn)
+ goto unlock;
+ }

NAK. There is no need to check for ACL_LINK. The sync_complete will only be called for SCO or eSCO connections.

diff -uNr linux-2.6.23/include/net/bluetooth-orig/sco.h linux-2.6.23/ include/net/bluetooth/sco.h
--- linux-2.6.23/include/net/bluetooth-orig/sco.h 2007-10-10 05:31:38.000000000 +0900
+++ linux-2.6.23/include/net/bluetooth/sco.h 2008-02-25 18:04:20.000000000 +0900
@@ -51,6 +51,8 @@
__u8 dev_class[3];
};

+#define SCO_FORCESCO 0x03
+

NAK. We don't need this. And even if we really would want this, we would do it via extra parameters inside sockaddr_sco. In that case we would do it right and exposing eSCO settings and not some boolean parameter.

Regards

Marcel

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/