linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

      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).