From: "Gustavo F. Padovan" <padovan@profusion.mobi>
To: Anderson Briglia <anderson.briglia@openbossa.org>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: [PATCH 1/2] Bluetooth: Implement LE Set Advertise Enable cmd
Date: Thu, 9 Sep 2010 17:31:09 -0300 [thread overview]
Message-ID: <20100909203109.GQ16973@vigoh> (raw)
In-Reply-To: <4C893A05.3010103@openbossa.org>
* Anderson Briglia <anderson.briglia@openbossa.org> [2010-09-09 15:48:21 -0400]:
> On 09/08/2010 05:43 PM, Gustavo F. Padovan wrote:
> > Hi Anderson,
> >
> > * Anderson Briglia<anderson.briglia@openbossa.org> [2010-08-23 15:30:14 -0400]:
> >
> >
> >> This patch implements LE Set Advertise Enable command for dual mode and
> >> Low Energy hci controllers. It also adds new HCI flags in order to
> >> indicate the Advertising state for userland applications and kernel
> >> itself.
> >>
> >> Signed-off-by: Anderson Briglia<anderson.briglia@openbossa.org>
> >> ---
> >> include/net/bluetooth/hci.h | 6 ++++++
> >> net/bluetooth/hci_event.c | 27 +++++++++++++++++++++++++++
> >> 2 files changed, 33 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h
> >> index bcbdd6d..cae1816 100644
> >> --- a/include/net/bluetooth/hci.h
> >> +++ b/include/net/bluetooth/hci.h
> >> @@ -76,6 +76,7 @@ enum {
> >> HCI_INQUIRY,
> >>
> >> HCI_RAW,
> >>
> > Skip a line here and then add the new LE commands
> >
> >
> >> + HCI_LE_ADV,
> >> };
> >>
> >> /* HCI ioctl defines */
> >> @@ -593,6 +594,11 @@ struct hci_rp_read_bd_addr {
> >> bdaddr_t bdaddr;
> >> } __packed;
> >>
> >> +/* --- HCI LE Commands --- */
> >> +#define HCI_OP_LE_SET_ADVERTISE_ENABLE 0x200a
> >> + #define ADVERTISE_ENABLED 0x01
> >> + #define ADVERTISE_DISABLED 0x00
> >> +
> >> /* ---- HCI Events ---- */
> >> #define HCI_EV_INQUIRY_COMPLETE 0x01
> >>
> >> diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> >> index bfef5ba..c86c655 100644
> >> --- a/net/bluetooth/hci_event.c
> >> +++ b/net/bluetooth/hci_event.c
> >> @@ -822,6 +822,29 @@ static void hci_cs_exit_sniff_mode(struct hci_dev *hdev, __u8 status)
> >> hci_dev_unlock(hdev);
> >> }
> >>
> >> +static void hci_cc_le_set_advertise(struct hci_dev *hdev, struct sk_buff *skb)
> >> +{
> >> + __u8 status = *((__u8 *) skb->data);
> >> + void *sent;
> >> +
> >> + BT_DBG("%s status 0x%x", hdev->name, status);
> >> +
> >> + sent = hci_sent_cmd_data(hdev, HCI_OP_LE_SET_ADVERTISE_ENABLE);
> >> + if (!sent)
> >> + return;
> >> +
> >> + if (!status) {
> >> + __u8 param = *((__u8 *) sent);
> >> +
> >> + clear_bit(HCI_LE_ADV,&hdev->flags);
> >> +
> >> + if (param& ADVERTISE_ENABLED)
> >> + set_bit(HCI_LE_ADV,&hdev->flags);
> >>
> > We could do that this way:
> >
> > if (param == ADVERTISE_ENABLED)
> > set_bit(HCI_LE_ADV,&hdev->flags);
> > else
> > clear_bit(HCI_LE_ADV,&hdev->flags);
> >
>
> Actually I just followed the design implemented on previous functions..
> If you check this file you could note this.
Actually not, the standard there is using if..else. Only
hci_cc_write_scan_enable() does clear_bit() if() set_bit().
--
Gustavo F. Padovan
ProFUSION embedded systems - http://profusion.mobi
prev parent reply other threads:[~2010-09-09 20:31 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-23 19:30 [PATCH 1/2] Bluetooth: Implement LE Set Advertise Enable cmd Anderson Briglia
2010-08-23 19:30 ` [PATCH 2/2] Bluetooth: Implement LE Set Scan " Anderson Briglia
2010-09-08 22:05 ` Gustavo F. Padovan
2010-09-08 21:43 ` [PATCH 1/2] Bluetooth: Implement LE Set Advertise " Gustavo F. Padovan
2010-09-08 22:06 ` Gustavo F. Padovan
2010-09-09 19:48 ` Anderson Briglia
2010-09-09 20:31 ` Gustavo F. Padovan [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=20100909203109.GQ16973@vigoh \
--to=padovan@profusion.mobi \
--cc=anderson.briglia@openbossa.org \
--cc=linux-bluetooth@vger.kernel.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;
as well as URLs for NNTP newsgroup(s).