From owner-freebsd-bluetooth@FreeBSD.ORG Tue Jun 9 18:18:37 2009 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B9C60106566B for ; Tue, 9 Jun 2009 18:18:37 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp01.one2one.net (smtp01.one2one.net [149.254.200.196]) by mx1.freebsd.org (Postfix) with ESMTP id 7B8D78FC08 for ; Tue, 9 Jun 2009 18:18:37 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from [127.0.0.1] (helo=localhost) by smtpbarns01 with esmtp (Exim 4.50) id 1ME5u4-00061D-3G; Tue, 09 Jun 2009 18:18:32 +0000 Received: from smtpbarns01 ([127.0.0.1]) by localhost (smtpbarns01 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 22901-03; Tue, 9 Jun 2009 19:18:31 +0100 (BST) Received: from [10.216.105.56] (helo=rya-online.net) by smtpbarns01 with smtp (Exim 4.50) id 1ME5u2-000618-Jl; Tue, 09 Jun 2009 18:18:31 +0000 Received: (nullmailer pid 894 invoked by uid 1000); Tue, 09 Jun 2009 18:18:07 -0000 Date: Tue, 9 Jun 2009 19:18:06 +0100 (BST) To: Maksim Yevmenkin , freebsd-bluetooth@freebsd.org User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Message-Id: <1244571487.241431.980.nullmailer@galant.ukfsn.org> From: Iain Hibbert X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at example.com X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: plunky@rya-online.net X-SA-Exim-Scanned: No (on smtpbarns01); SAEximRunCond expanded to false Cc: Subject: bt_dev API X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Jun 2009 18:18:38 -0000 Hi Max, Are you still with us? After some delay (and a tan from last week :) I am about ready with the bt_dev stuff for NetBSD now (latest dump at www.netbsd.org:~plunky/btdev-20090609.tar.gz) some questions re API still to be resolved though - bt_devopen(name, flags) flags argument? BTOPT_DIRECTION BTOPT_TIMESTAMP - bt_devclose(s) should not be required? - ssize_t bt_devsend() return number of bytes sent? - bt_devinfo(name, info) add name argument? - struct bt_devinfo state field needs to be genericalised, regards, iain From owner-freebsd-bluetooth@FreeBSD.ORG Tue Jun 9 22:24:39 2009 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C383A106566B for ; Tue, 9 Jun 2009 22:24:39 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-pz0-f195.google.com (mail-pz0-f195.google.com [209.85.222.195]) by mx1.freebsd.org (Postfix) with ESMTP id 99B758FC15 for ; Tue, 9 Jun 2009 22:24:39 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: by pzk33 with SMTP id 33so319623pzk.3 for ; Tue, 09 Jun 2009 15:24:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=jNqlVP4xTxVr2TEgBeMOfVeVIfpwarvVHiJl67WfBaM=; b=oXSbk4rU0MLjBywXeWME78JFjrp53tpQxIYzXuTB3T1yTlbc6TOZo21+ILjDe2XqfM EpB+dyKIOmo7C+vjaecwOODS5Yd29HTgEUo3qCEk2p9D8qrBnFPUGn/+LovA5ep0iQrl vWy6GZtYLK46I+Xw/Js4gLAgZbuDDkvteSV78= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=i7yk1yQpXIZ/m9dfrJqLz0saqSKJ7On28axb/fo74JEmkgMEJTRq/o+a+wsHXFYWEw I/LGf8rfyo4XHNPPGvNd1NqYIQUlpdU3eAOXWuvcFfJksK0cmDIw26wRldvTO8Zm5yNg tyApOUJ6PGMkrCT5712E7iO2yJH43nLkpkp5g= MIME-Version: 1.0 Received: by 10.114.158.14 with SMTP id g14mr865426wae.150.1244586279219; Tue, 09 Jun 2009 15:24:39 -0700 (PDT) In-Reply-To: <1244571487.241431.980.nullmailer@galant.ukfsn.org> References: <1244571487.241431.980.nullmailer@galant.ukfsn.org> Date: Tue, 9 Jun 2009 15:24:39 -0700 Message-ID: From: Maksim Yevmenkin To: Iain Hibbert Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-bluetooth@freebsd.org Subject: Re: bt_dev API X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Jun 2009 22:24:40 -0000 Iain, > Are you still with us? =A0After some delay (and a tan from last week :) I= am > about ready with the bt_dev stuff for NetBSD now (latest dump at > www.netbsd.org:~plunky/btdev-20090609.tar.gz) sorry. i'm completely swamped at $real_job :( > some questions re API still to be resolved though > > - bt_devopen(name, flags) =A0 =A0 =A0 flags argument? > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0BTOPT_= DIRECTION > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0BTOPT_= TIMESTAMP i guess its fine, but i still kinda like setopt() call. > - bt_devclose(s) =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0should not be required? i'd like to just keep it for clarity. we can turn it into #define if needed > - ssize_t bt_devsend() =A0 =A0 =A0 =A0 =A0return number of bytes sent? sure > - bt_devinfo(name, info) =A0 =A0 =A0 =A0add name argument? no problem > - struct bt_devinfo =A0 =A0 =A0 =A0 =A0 =A0 state field needs to be gener= icalised, i have not look at the source. i'm guessing its probably fine too :) thanks, max From owner-freebsd-bluetooth@FreeBSD.ORG Wed Jun 10 08:17:09 2009 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6EE1D106564A for ; Wed, 10 Jun 2009 08:17:09 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp01.one2one.net (smtp01.one2one.net [149.254.200.196]) by mx1.freebsd.org (Postfix) with ESMTP id ED15C8FC08 for ; Wed, 10 Jun 2009 08:17:08 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from [127.0.0.1] (helo=localhost) by smtpbarns01 with esmtp (Exim 4.50) id 1MEIzY-0004G3-95; Wed, 10 Jun 2009 08:17:04 +0000 Received: from smtpbarns01 ([127.0.0.1]) by localhost (smtpbarns01 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 16285-03; Wed, 10 Jun 2009 09:17:03 +0100 (BST) Received: from [10.216.105.56] (helo=rya-online.net) by smtpbarns01 with smtp (Exim 4.50) id 1MEIzQ-0004Fs-L0; Wed, 10 Jun 2009 08:17:03 +0000 Received: (nullmailer pid 653 invoked by uid 1000); Wed, 10 Jun 2009 08:16:34 -0000 Date: Wed, 10 Jun 2009 09:16:34 +0100 (BST) To: Maksim Yevmenkin In-Reply-To: References: <1244571487.241431.980.nullmailer@galant.ukfsn.org> User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-245128443-1244621794=:879" Message-Id: <1244621794.486063.830.nullmailer@galant.ukfsn.org> From: Iain Hibbert X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at example.com X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: plunky@rya-online.net X-SA-Exim-Scanned: No (on smtpbarns01); SAEximRunCond expanded to false Cc: freebsd-bluetooth@freebsd.org Subject: Re: bt_dev API X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jun 2009 08:17:09 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-245128443-1244621794=:879 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: QUOTED-PRINTABLE On Tue, 9 Jun 2009, Maksim Yevmenkin wrote: > > Are you still with us? =A0After some delay (and a tan from last week :)= I am > > about ready with the bt_dev stuff for NetBSD now (latest dump at > > www.netbsd.org:~plunky/btdev-20090609.tar.gz) > > sorry. i'm completely swamped at $real_job :( sounds like hair loss is imminent, heh :) > > - bt_devopen(name, flags) flags argument? > > i guess its fine, but i still kinda like setopt() call. my reasoning to set it in devopen is that if you open -> bind -> setopt then there is a race condition where you could get packets already in the buffer where you don't get the control messages. anyway I attach a FreeBSD patch for you that implements some changes - note I haven't compile tested it, and I don't know if you need to bump library version but it looks about right - spelling fixes in manpage - add flags argument to bt_devopen() - bt_devopen(NULL, 0) will open for any device - change return value of bt_devsend() - add name argument to bt_devinfo() > > - struct bt_devinfo state field needs to be genericalised, > > i have not look at the source. i'm guessing its probably fine too :) I'm still thinking about how best to do that, will look at the linux sources later to see what might fit. I'm thinking that either a) bt_devinfo structure should be completely MI and have the caller get OS specific information on their own time b) incompletely specify the bt_devinfo structure in the manpage (as in "the bt_devinfo structure contains at least the following fields:") so that callers are not tempted to rely on OS specific data. regards, iain --0-245128443-1244621794=:879 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=diff Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: update libbluetooth Content-Disposition: attachment; filename=diff SW5kZXg6IGJsdWV0b290aC4zDQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS Q1MgZmlsZTogL2hvbWUvbmN2cy9zcmMvbGliL2xpYmJsdWV0b290aC9ibHVl dG9vdGguMyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTANCmRpZmYgLXUg LXIxLjEwIGJsdWV0b290aC4zDQotLS0gYmx1ZXRvb3RoLjMJMjIgQXByIDIw MDkgMTU6NTA6MDMgLTAwMDAJMS4xMA0KKysrIGJsdWV0b290aC4zCTEwIEp1 biAyMDA5IDA4OjAxOjE4IC0wMDAwDQpAQCAtOTcsMTQgKzk3LDE0IEBADQog LkZ0IGludA0KIC5GbiAoYnRfZGV2ZW51bV9jYl90KSAiaW50IHMiICJzdHJ1 Y3QgYnRfZGV2aW5mbyBjb25zdCAqZGkiICJ2b2lkICphcmciDQogLkZ0IGlu dA0KLS5GbiBidF9kZXZpbmZvICJzdHJ1Y3QgYnRfZGV2aW5mbyAqZGkiDQor LkZuIGJ0X2RldmluZm8gImNoYXIgY29uc3QgKmRldm5hbWUiICJzdHJ1Y3Qg YnRfZGV2aW5mbyAqZGkiDQogLkZ0IGludA0KIC5GbiBidF9kZXZlbnVtICJi dF9kZXZlbnVtX2NiX3QgKmNiIiAidm9pZCAqYXJnIg0KIC5GdCBpbnQNCi0u Rm4gYnRfZGV2b3BlbiAiY2hhciBjb25zdCAqZGV2bmFtZSINCisuRm4gYnRf ZGV2b3BlbiAiY2hhciBjb25zdCAqZGV2bmFtZSIgImludCBmbGFncyINCiAu RnQgaW50DQogLkZuIGJ0X2RldmNsb3NlICJpbnQgcyINCi0uRnQgaW50DQor LkZ0IHNzaXplX3QNCiAuRm4gYnRfZGV2c2VuZCAiaW50IHMiICJ1aW50MTZf dCBvcGNvZGUiICJ2b2lkICpwYXJhbSIgInNpemVfdCBwbGVuIg0KIC5GdCBz c2l6ZV90DQogLkZuIGJ0X2RldnJlY3YgImludCBzIiAidm9pZCAqYnVmIiAi c2l6ZV90IHNpemUiICJ0aW1lX3QgdG8iDQpAQCAtMTE1LDEzICsxMTUsMTMg QEANCiAuRnQgdm9pZA0KIC5GbiBidF9kZXZmaWx0ZXJfcGt0X3NldCAic3Ry dWN0IGJ0X2RldmZpbHRlciAqZmlsdGVyIiAidWludDhfdCB0eXBlIg0KIC5G dCB2b2lkDQotLkZuIGJ0X2RldmZpbHRlcl9wa3RfY2x0ICJzdHJ1Y3QgYnRf ZGV2ZmlsdGVyICpmaWx0ZXIiICJ1aW50OF90IHR5cGUiDQorLkZuIGJ0X2Rl dmZpbHRlcl9wa3RfY2xyICJzdHJ1Y3QgYnRfZGV2ZmlsdGVyICpmaWx0ZXIi ICJ1aW50OF90IHR5cGUiDQogLkZ0IGludA0KIC5GbiBidF9kZXZmaWx0ZXJf cGt0X3RzdCAic3RydWN0IGJ0X2RldmZpbHRlciBjb25zdCAqZmlsdGVyIiAi dWludDhfdCB0eXBlIg0KIC5GdCB2b2lkDQogLkZuIGJ0X2RldmZpbHRlcl9l dnRfc2V0ICJzdHJ1Y3QgYnRfZGV2ZmlsdGVyICpmaWx0ZXIiICJ1aW50OF90 IGV2ZW50Ig0KIC5GdCB2b2lkDQotLkZuIGJ0X2RldmZpbHRlcl9ldnRfY2x0 ICJzdHJ1Y3QgYnRfZGV2ZmlsdGVyICpmaWx0ZXIiICJ1aW50OF90IGV2ZW50 Ig0KKy5GbiBidF9kZXZmaWx0ZXJfZXZ0X2NsciAic3RydWN0IGJ0X2RldmZp bHRlciAqZmlsdGVyIiAidWludDhfdCBldmVudCINCiAuRnQgaW50DQogLkZu IGJ0X2RldmZpbHRlcl9ldnRfdHN0ICJzdHJ1Y3QgYnRfZGV2ZmlsdGVyIGNv bnN0ICpmaWx0ZXIiICJ1aW50OF90IGV2ZW50Ig0KIC5GdCBpbnQNCkBAIC0y NzIsMTQgKzI3Miw5IEBADQogLlBwDQogVGhlDQogLkZuIGJ0X2RldmluZm8N Ci1mdW5jdGlvbiBwb3B1bGF0ZXMgcHJvZGl2ZGVkDQorZnVuY3Rpb24gcG9w dWxhdGVzIHByb3ZpZGVkDQogLlZ0IGJ0X2RldmluZm8NCiBzdHJ1Y3R1cmUg d2l0aCB0aGUgaW5mb3JtYXRpb24gYWJvdXQgZ2l2ZW4gQmx1ZXRvb3RoIGRl dmljZS4NCi1UaGUgY2FsbGVyIGlzIGV4cGVjdGVkIHRvIHBhc3MgQmx1ZXRv b3RoIGRldmljZSBuYW1lIGluIHRoZQ0KLS5GYSBkZXZuYW1lDQotZmllbGQg b2YgdGhlIHBhc3NlZA0KLS5WdCBidF9kZXZpbmZvDQotc3RydWN0dXJlLg0K IFRoZSBmdW5jdGlvbiByZXR1cm5zIDAgd2hlbiBzdWNjZXNzZnVsLA0KIG90 aGVyd2lzZSAtMS4NCiBUaGUNCkBAIC0zNjAsNiArMzU1LDIwIEBADQogYW5k IHJldHVybnMgYSBjb25uZWN0ZWQgYW5kIGJvdW5kDQogLkR2IEhDSQ0KIHNv Y2tldCBoYW5kbGUuDQorSWYgdGhlDQorLkZhIGRldm5hbWUNCitpcw0KKy5E diBOVUxMDQordGhlIHNvY2tldCB3aWxsIHJlY2VpdmUgbWVzc2FnZXMgZnJv bSBhbGwgZGV2aWNlcy4NCitBbnkgY29tYmluYXRpb24gb2YgdGhlIGZvbGxv d2luZw0KKy5GYSBmbGFncw0KK21heSBiZSB1c2VkIHRvIHByZS1zZXQgdGhl IHNvY2tldCBvcHRpb25zOg0KKy5CbCAtdGFnIC13aWR0aCAiLkR2IEJUT1BU X0RJUkVDVElPTiINCisuSXQgRHYgQlRPUFRfRElSRUNUSU9ODQorRW5hYmxl IGNvbnRyb2wgbWVzc2FnZXMgb24gZWFjaCBwYWNrZXQgaW5kaWNhdGluZyB0 aGUgZGlyZWN0aW9uIG9mIHRyYXZlbC4NCisuSXQgRHYgQlRPUFRfVElNRVNU QU1QDQorRW5hYmxlIGNvbnRyb2wgbWVzc2FnZXMgcHJvdmlkaW5nIHBhY2tl dCB0aW1lc3RhbXBzLg0KKy5FbA0KIFRoZSBmdW5jdGlvbiByZXR1cm5zIC0x IGlmIGFuIGVycm9yIGhhcyBvY2N1cnJlZC4NCiAuUHANCiBUaGUNCkBAIC0z ODMsNyArMzkyLDcgQEANCiAuWHIgYnRfZGV2b3BlbiAzIC4NCiBUaGUNCiAu RmEgb3Bjb2RlDQotcGFyYW1ldGVyIGlzIGV4cHBlY3RlZCB0byBiZSBpbiB0 aGUgaG9zdCBieXRlIG9yZGVyLg0KK3BhcmFtZXRlciBpcyBleHBlY3RlZCB0 byBiZSBpbiB0aGUgaG9zdCBieXRlIG9yZGVyLg0KIFRoZQ0KIC5GYSBwYXJh bQ0KIGFuZA0KQEAgLTM5NSw3ICs0MDQsNyBAQA0KIC5EdiBIQ0kNCiBmaWx0 ZXIgb24gdGhlIHByb3ZpZGVkIHNvY2tldA0KIC5GYSBzIC4NCi1UaGUgZnVu Y3Rpb24gcmV0dXJucyAwIG9uIHN1Y2Nlc3MsDQorVGhlIGZ1bmN0aW9uIHJl dHVybnMgdGhlIG51bWJlciBvZiBjaGFyYWN0ZXJzIHN1Y2Nlc3NmdWxseSB3 cml0dGVuLA0KIG9yIC0xIGlmIGFuIGVycm9yIG9jY3VycmVkLg0KIC5QcA0K IFRoZQ0KSW5kZXg6IGJsdWV0b290aC5oDQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09DQpSQ1MgZmlsZTogL2hvbWUvbmN2cy9zcmMvbGliL2xpYmJsdWV0b290 aC9ibHVldG9vdGguaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNQ0KZGlm ZiAtdSAtcjEuNSBibHVldG9vdGguaA0KLS0tIGJsdWV0b290aC5oCTIyIEFw ciAyMDA5IDE1OjUwOjAzIC0wMDAwCTEuNQ0KKysrIGJsdWV0b290aC5oCTEw IEp1biAyMDA5IDA4OjAxOjE4IC0wMDAwDQpAQCAtMTU4LDkgKzE1OCw5IEBA DQogDQogdHlwZWRlZiBpbnQJKGJ0X2RldmVudW1fY2JfdCkoaW50LCBzdHJ1 Y3QgYnRfZGV2aW5mbyBjb25zdCAqLCB2b2lkICopOw0KIA0KLWludAkJYnRf ZGV2b3BlbiAoY2hhciBjb25zdCAqZGV2bmFtZSk7DQoraW50CQlidF9kZXZv cGVuIChjaGFyIGNvbnN0ICpkZXZuYW1lLCBpbnQgZmxhZ3MpOw0KIGludAkJ YnRfZGV2Y2xvc2UoaW50IHMpOw0KLWludAkJYnRfZGV2c2VuZCAoaW50IHMs IHVpbnQxNl90IG9wY29kZSwgdm9pZCAqcGFyYW0sIHNpemVfdCBwbGVuKTsN Citzc2l6ZV90CQlidF9kZXZzZW5kIChpbnQgcywgdWludDE2X3Qgb3Bjb2Rl LCB2b2lkICpwYXJhbSwgc2l6ZV90IHBsZW4pOw0KIHNzaXplX3QJCWJ0X2Rl dnJlY3YgKGludCBzLCB2b2lkICpidWYsIHNpemVfdCBzaXplLCB0aW1lX3Qg dG8pOw0KIGludAkJYnRfZGV2cmVxICAoaW50IHMsIHN0cnVjdCBidF9kZXZy ZXEgKnIsIHRpbWVfdCB0byk7DQogaW50CQlidF9kZXZmaWx0ZXIoaW50IHMs IHN0cnVjdCBidF9kZXZmaWx0ZXIgY29uc3QgKm5ldywNCkBAIC0xNzMsMTAg KzE3MywxNyBAQA0KIGludAkJYnRfZGV2ZmlsdGVyX2V2dF90c3Qoc3RydWN0 IGJ0X2RldmZpbHRlciBjb25zdCAqZmlsdGVyLCB1aW50OF90IGV2ZW50KTsN CiBpbnQJCWJ0X2RldmlucXVpcnkoY2hhciBjb25zdCAqZGV2bmFtZSwgdGlt ZV90IGxlbmd0aCwgaW50IG51bV9yc3AsDQogCQkJICAgICAgc3RydWN0IGJ0 X2RldmlucXVpcnkgKippaSk7DQotaW50CQlidF9kZXZpbmZvIChzdHJ1Y3Qg YnRfZGV2aW5mbyAqZGkpOw0KK2ludAkJYnRfZGV2aW5mbyAoY2hhciBjb25z dCAqZGV2bmFtZSwgc3RydWN0IGJ0X2RldmluZm8gKmRpKTsNCiBpbnQJCWJ0 X2RldmVudW0gKGJ0X2RldmVudW1fY2JfdCAqY2IsIHZvaWQgKmFyZyk7DQog DQogLyoNCisgKiBidF9kZXZvcGVuIGZsYWdzDQorICovDQorDQorI2RlZmlu ZQlCVE9QVF9ESVJFQ1RJT04JCSgxIDw8IDApDQorI2RlZmluZQlCVE9QVF9U SU1FU1RBTVAJCSgxIDw8IDEpDQorDQorLyoNCiAgKiBiZGFkZHIgdXRpbGl0 eSBmdW5jdGlvbnMgKGZyb20gTmV0QlNEKQ0KICAqLw0KIA0KSW5kZXg6IGhj aS5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUv bmN2cy9zcmMvbGliL2xpYmJsdWV0b290aC9oY2kuYyx2DQpyZXRyaWV2aW5n IHJldmlzaW9uIDEuMw0KZGlmZiAtdSAtcjEuMyBoY2kuYw0KLS0tIGhjaS5j CTE0IE1heSAyMDA5IDE3OjEwOjE5IC0wMDAwCTEuMw0KKysrIGhjaS5jCTEw IEp1biAyMDA5IDA4OjAxOjE4IC0wMDAwDQpAQCAtNDUsNDAgKzQ1LDUzIEBA DQogc3RhdGljIGNoYXIgKiBidF9kZXYybm9kZSAoY2hhciBjb25zdCAqZGV2 bmFtZSwgY2hhciAqbm9kZW5hbWUsIGludCBubmxlbik7DQogDQogaW50DQot YnRfZGV2b3BlbihjaGFyIGNvbnN0ICpkZXZuYW1lKQ0KK2J0X2Rldm9wZW4o Y2hhciBjb25zdCAqZGV2bmFtZSwgaW50IGZsYWdzKQ0KIHsNCiAJc3RydWN0 IHNvY2thZGRyX2hjaQloYTsNCiAJYmRhZGRyX3QJCWJhOw0KLQlpbnQJCQlz Ow0KKwlpbnQJCQlvcHQsIHM7DQogDQotCWlmIChkZXZuYW1lID09IE5VTEwp IHsNCi0JCWVycm5vID0gRUlOVkFMOw0KLQkJcmV0dXJuICgtMSk7DQotCX0N Ci0NCi0JbWVtc2V0KCZoYSwgMCwgc2l6ZW9mKGhhKSk7DQotCWhhLmhjaV9s ZW4gPSBzaXplb2YoaGEpOw0KLQloYS5oY2lfZmFtaWx5ID0gQUZfQkxVRVRP T1RIOw0KLQ0KLQlpZiAoYnRfYXRvbihkZXZuYW1lLCAmYmEpKSB7DQotCQlp ZiAoIWJ0X2Rldm5hbWUoaGEuaGNpX25vZGUsICZiYSkpDQotCQkJcmV0dXJu ICgtMSk7DQotCX0gZWxzZSBpZiAoYnRfZGV2Mm5vZGUoZGV2bmFtZSwgaGEu aGNpX25vZGUsDQorCWlmIChkZXZuYW1lICE9IE5VTEwpIHsNCisJCW1lbXNl dCgmaGEsIDAsIHNpemVvZihoYSkpOw0KKwkJaGEuaGNpX2xlbiA9IHNpemVv ZihoYSk7DQorCQloYS5oY2lfZmFtaWx5ID0gQUZfQkxVRVRPT1RIOw0KKw0K KwkJaWYgKGJ0X2F0b24oZGV2bmFtZSwgJmJhKSkgew0KKwkJCWlmICghYnRf ZGV2bmFtZShoYS5oY2lfbm9kZSwgJmJhKSkNCisJCQkJcmV0dXJuICgtMSk7 DQorCQl9IGVsc2UgaWYgKGJ0X2RldjJub2RlKGRldm5hbWUsIGhhLmhjaV9u b2RlLA0KIAkJCQkJc2l6ZW9mKGhhLmhjaV9ub2RlKSkgPT0gTlVMTCkgew0K LQkJZXJybm8gPSBFTlhJTzsNCi0JCXJldHVybiAoLTEpOw0KKwkJCWVycm5v ID0gRU5YSU87DQorCQkJcmV0dXJuICgtMSk7DQorCQl9DQogCX0NCiANCiAJ cyA9IHNvY2tldChQRl9CTFVFVE9PVEgsIFNPQ0tfUkFXLCBCTFVFVE9PVEhf UFJPVE9fSENJKTsNCiAJaWYgKHMgPCAwKQ0KIAkJcmV0dXJuICgtMSk7DQog DQotCWlmIChiaW5kKHMsIChzdHJ1Y3Qgc29ja2FkZHIgKikgJmhhLCBzaXpl b2YoaGEpKSA8IDAgfHwNCi0JICAgIGNvbm5lY3QocywgKHN0cnVjdCBzb2Nr YWRkciAqKSAmaGEsIHNpemVvZihoYSkpIDwgMCkgew0KKwlvcHQgPSAxOw0K KwlpZiAoKGZsYWdzICYgQlRPUFRfRElSRUNUSU9OKSAmJiBzZXRzb2Nrb3B0 KHMsIFNPTF9IQ0lfUkFXLA0KKwkgICAgU09fSENJX1JBV19ESVJFQ1RJT04s ICZvcHQsIHNpemVvZihvcHQpKSA8IDApIHsNCiAJCWNsb3NlKHMpOw0KIAkJ cmV0dXJuICgtMSk7DQogCX0NCiANCisJb3B0ID0gMTsNCisJaWYgKChmbGFn cyAmIEJUT1BUX1RJTUVTVEFNUCkgJiYgc2V0c29ja29wdChzLCBTT0xfU09D S0VULA0KKwkgICAgU09fVElNRVNUQU1QLCAmb3B0LCBzaXplb2Yob3B0KSkg PCAwKSB7DQorCQljbG9zZShzKTsNCisJCXJldHVybiAoLTEpOw0KKwl9DQor DQorCWlmIChkZXZuYW1lICE9IE5VTEwpIHsNCisJCWlmIChiaW5kKHMsIChz dHJ1Y3Qgc29ja2FkZHIgKikgJmhhLCBzaXplb2YoaGEpKSA8IDAgfHwNCisJ CSAgICBjb25uZWN0KHMsIChzdHJ1Y3Qgc29ja2FkZHIgKikgJmhhLCBzaXpl b2YoaGEpKSA8IDApIHsNCisJCQljbG9zZShzKTsNCisJCQlyZXR1cm4gKC0x KTsNCisJCX0NCisJfQ0KKw0KIAlyZXR1cm4gKHMpOw0KIH0NCiANCkBAIC04 OCwxMiArMTAxLDEzIEBADQogCXJldHVybiAoY2xvc2UocykpOw0KIH0NCiAN Ci1pbnQNCitzc2l6ZV90DQogYnRfZGV2c2VuZChpbnQgcywgdWludDE2X3Qg b3Bjb2RlLCB2b2lkICpwYXJhbSwgc2l6ZV90IHBsZW4pDQogew0KIAluZ19o Y2lfY21kX3BrdF90CWg7DQogCXN0cnVjdCBpb3ZlYwkJaXZbMl07DQogCWlu dAkJCWl2bjsNCisJc3NpemVfdAkJCW47DQogDQogCWlmICgocGxlbiA9PSAw ICYmIHBhcmFtICE9IE5VTEwpIHx8DQogCSAgICAocGxlbiA+IDAgJiYgcGFy YW0gPT0gTlVMTCkgfHwNCkBAIC0xMTcsMTQgKzEzMSwxNCBAQA0KIAl9IGVs c2UNCiAJCWgubGVuZ3RoID0gMDsNCiANCi0Jd2hpbGUgKHdyaXRldihzLCBp diwgaXZuKSA8IDApIHsNCisJd2hpbGUgKChuID0gd3JpdGV2KHMsIGl2LCBp dm4pKSA8IDApIHsNCiAJCWlmIChlcnJubyA9PSBFQUdBSU4gfHwgZXJybm8g PT0gRUlOVFIpDQogCQkJY29udGludWU7DQogDQogCQlyZXR1cm4gKC0xKTsN CiAJfQ0KIA0KLQlyZXR1cm4gKDApOw0KKwlyZXR1cm4gKG4pOw0KIH0NCiAN CiBzc2l6ZV90DQpAQCAtNTMyLDcgKzU0Niw3IEBADQogfQ0KIA0KIGludA0K LWJ0X2RldmluZm8oc3RydWN0IGJ0X2RldmluZm8gKmRpKQ0KK2J0X2Rldmlu Zm8oY2hhciBjb25zdCAqZGV2bmFtZSwgc3RydWN0IGJ0X2RldmluZm8gKmRp KQ0KIHsNCiAJdW5pb24gew0KIAkJc3RydWN0IG5nX2J0c29ja2V0X2hjaV9y YXdfbm9kZV9zdGF0ZQkJcjA7DQpAQCAtNTU0LDcgKzU2OCw3IEBADQogCQly ZXR1cm4gKC0xKTsNCiAJfQ0KIA0KLQlzID0gYnRfZGV2b3BlbihkaS0+ZGV2 bmFtZSk7DQorCXMgPSBidF9kZXZvcGVuKGRldm5hbWUpOw0KIAlpZiAocyA8 IDApDQogCQlyZXR1cm4gKC0xKTsNCiANCkBAIC02NjIsOCArNjc2LDcgQEAN CiAJfQ0KIA0KIAlmb3IgKGNvdW50ID0gMCwgaSA9IDA7IGkgPCBycC5udW1f bmFtZXM7IGkgKyspIHsNCi0JCXN0cmxjcHkoZGkuZGV2bmFtZSwgcnAubmFt ZXNbaV0ubmFtZSwgc2l6ZW9mKGRpLmRldm5hbWUpKTsNCi0JCWlmIChidF9k ZXZpbmZvKCZkaSkgPCAwKQ0KKwkJaWYgKGJ0X2RldmluZm8ocnAubmFtZXNb aV0ubmFtZSwgJmRpKSA8IDApDQogCQkJY29udGludWU7DQogDQogCQljb3Vu dCArKzsNCg== --0-245128443-1244621794=:879-- From owner-freebsd-bluetooth@FreeBSD.ORG Wed Jun 10 10:06:59 2009 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 86D92106564A for ; Wed, 10 Jun 2009 10:06:59 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp01.one2one.net (smtp01.one2one.net [149.254.200.196]) by mx1.freebsd.org (Postfix) with ESMTP id 1DFC88FC14 for ; Wed, 10 Jun 2009 10:06:51 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from [127.0.0.1] (helo=localhost) by smtpbarns01 with esmtp (Exim 4.50) id 1MEKhj-0005aM-C7; Wed, 10 Jun 2009 10:06:47 +0000 Received: from smtpbarns01 ([127.0.0.1]) by localhost (smtpbarns01 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 21404-03; Wed, 10 Jun 2009 11:06:46 +0100 (BST) Received: from [10.216.105.56] (helo=rya-online.net) by smtpbarns01 with smtp (Exim 4.50) id 1MEKhg-0005a8-6p; Wed, 10 Jun 2009 10:06:46 +0000 Received: (nullmailer pid 18201 invoked by uid 1000); Wed, 10 Jun 2009 10:06:21 -0000 Date: Wed, 10 Jun 2009 11:06:21 +0100 (BST) To: Maksim Yevmenkin In-Reply-To: <1244621794.486063.830.nullmailer@galant.ukfsn.org> References: <1244571487.241431.980.nullmailer@galant.ukfsn.org> <1244621794.486063.830.nullmailer@galant.ukfsn.org> User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Message-Id: <1244628381.118410.14961.nullmailer@galant.ukfsn.org> From: Iain Hibbert X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at example.com X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: plunky@rya-online.net X-SA-Exim-Scanned: No (on smtpbarns01); SAEximRunCond expanded to false Cc: freebsd-bluetooth@freebsd.org Subject: Re: bt_dev API X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jun 2009 10:06:59 -0000 On Wed, 10 Jun 2009, Iain Hibbert wrote: > > > - struct bt_devinfo state field needs to be genericalised, > > > > i have not look at the source. i'm guessing its probably fine too :) > > I'm still thinking about how best to do that, will look at the linux > sources later to see what might fit. I'm thinking that either Ok, BlueZ has a HCI_UP flag that they use to mean device enabled, NetBSD has BTF_UP and FreeBSD has 'state == connected' to mean the same thing (?) So, I propose the simplified 'publicly documented' interface as follows -- Obtain information from a Bluetooth device present in the system. The .Fa info argument is a pointer to a .Ft bt_devinfo structure into which information about device .Fa name is placed. The .Ft bt_devinfo structure contains at least the following fields: .Bd -literal char devname[HCI_DEVNAME_SIZE]; int enabled; /* device is enabled */ /* device information */ bdaddr_t bdaddr; uint8_t features[HCI_FEATURES_SIZE]; uint16_t acl_size; uint16_t sco_size; /* flow control */ uint16_t cmd_free; uint16_t acl_free; uint16_t sco_free; /* statistics */ uint32_t cmd_sent; uint32_t evnt_recv; uint32_t acl_recv; uint32_t acl_sent; uint32_t sco_recv; uint32_t sco_sent; uint32_t bytes_recv; uint32_t bytes_sent; /* device settings */ uint16_t link_policy_info; uint16_t packet_type_info; uint16_t role_switch_info; .Ed .Lp Because a Bluetooth device must be enabled in order to retrieve information, the .Fa enabled flag should be tested to be non-zero before relying on further data. -- So, I dropped all the struct padding as no caller needs to care about it, plus acl_pkts and sco_pkts as from what I can see, they are not properly available (only FreeBSD provides such a 'max' value but its not really part of the HCI spec, devices will only ever provide 'current' value) thoughts? iain From owner-freebsd-bluetooth@FreeBSD.ORG Thu Jun 11 09:31:23 2009 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 040B01065676 for ; Thu, 11 Jun 2009 09:31:23 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp02.one2one.net (smtp02.one2one.net [149.254.192.174]) by mx1.freebsd.org (Postfix) with ESMTP id B628D8FC45 for ; Thu, 11 Jun 2009 09:31:17 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from [127.0.0.1] (helo=localhost) by localhost.t-mobile.co.uk with esmtp (Exim 4.50) id 1MEgcl-0005MF-CK; Thu, 11 Jun 2009 09:31:07 +0000 Received: from localhost.t-mobile.co.uk ([127.0.0.1]) by localhost (smtpbeckt01 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 20487-07; Thu, 11 Jun 2009 10:31:07 +0100 (BST) Received: from [10.215.150.45] (helo=rya-online.net) by localhost.t-mobile.co.uk with smtp (Exim 4.50) id 1MEgcj-0005Lw-RL; Thu, 11 Jun 2009 09:31:07 +0000 Received: (nullmailer pid 526 invoked by uid 1000); Thu, 11 Jun 2009 09:30:42 -0000 Date: Thu, 11 Jun 2009 10:30:42 +0100 (BST) To: Maksim Yevmenkin In-Reply-To: <1244628381.118410.14961.nullmailer@galant.ukfsn.org> References: <1244571487.241431.980.nullmailer@galant.ukfsn.org> <1244621794.486063.830.nullmailer@galant.ukfsn.org> <1244628381.118410.14961.nullmailer@galant.ukfsn.org> User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Message-Id: <1244712642.772200.857.nullmailer@galant.ukfsn.org> From: Iain Hibbert X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at example.com X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: plunky@rya-online.net X-SA-Exim-Scanned: No (on localhost.t-mobile.co.uk); SAEximRunCond expanded to false Cc: freebsd-bluetooth@freebsd.org Subject: Re: bt_dev API X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Jun 2009 09:31:23 -0000 On Wed, 10 Jun 2009, Iain Hibbert wrote: > plus acl_pkts and sco_pkts as from what I can see, they are not properly > available (only FreeBSD provides such a 'max' value but its not really > part of the HCI spec, devices will only ever provide 'current' value) sigh, that is wrong, they come from HCI_CMD_READ_BUFFER_SIZE of course.. iain