Linux bluetooth development
 help / color / mirror / Atom feed
From: Jakub Pawlowski <jpawlowski@google.com>
To: linux-bluetooth@vger.kernel.org
Cc: Jakub Pawlowski <jpawlowski@google.com>
Subject: [PATCH v3 2/8] core/adapter: Refactor of scan type
Date: Tue, 24 Mar 2015 00:57:14 -0700	[thread overview]
Message-ID: <1427183840-8089-2-git-send-email-jpawlowski@google.com> (raw)
In-Reply-To: <1427183840-8089-1-git-send-email-jpawlowski@google.com>

This patch replaces scan type with defined constants, and creates
new method that might be used to get currently avaliable scan type.
---
 src/adapter.c | 28 ++++++++++++++++++++--------
 1 file changed, 20 insertions(+), 8 deletions(-)

diff --git a/src/adapter.c b/src/adapter.c
index 6eeb2f9..be8f5db 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -88,6 +88,9 @@
 #define TEMP_DEV_TIMEOUT (3 * 60)
 #define BONDING_TIMEOUT (2 * 60)
 
+#define SCAN_TYPE_BREDR (1 << BDADDR_BREDR)
+#define SCAN_TYPE_LE ((1 << BDADDR_LE_PUBLIC) | (1 << BDADDR_LE_RANDOM))
+
 static DBusConnection *dbus_conn = NULL;
 
 static bool kernel_conn_control = false;
@@ -1185,7 +1188,7 @@ static gboolean passive_scanning_timeout(gpointer user_data)
 
 	adapter->passive_scan_timeout = 0;
 
-	cp.type = (1 << BDADDR_LE_PUBLIC) | (1 << BDADDR_LE_RANDOM);
+	cp.type = SCAN_TYPE_LE;
 
 	mgmt_send(adapter->mgmt, MGMT_OP_START_DISCOVERY,
 				adapter->dev_id, sizeof(cp), &cp,
@@ -1327,6 +1330,21 @@ static void cancel_passive_scanning(struct btd_adapter *adapter)
 	}
 }
 
+static uint8_t get_current_type(struct btd_adapter *adapter)
+{
+	uint8_t type;
+
+	if (adapter->current_settings & MGMT_SETTING_BREDR)
+		type = SCAN_TYPE_BREDR;
+	else
+		type = 0;
+
+	if (adapter->current_settings & MGMT_SETTING_LE)
+		type |= SCAN_TYPE_LE;
+
+	return type;
+}
+
 static void trigger_start_discovery(struct btd_adapter *adapter, guint delay);
 
 static void start_discovery_complete(uint8_t status, uint16_t length,
@@ -1372,13 +1390,7 @@ static gboolean start_discovery_timeout(gpointer user_data)
 
 	adapter->discovery_idle_timeout = 0;
 
-	if (adapter->current_settings & MGMT_SETTING_BREDR)
-		new_type = (1 << BDADDR_BREDR);
-	else
-		new_type = 0;
-
-	if (adapter->current_settings & MGMT_SETTING_LE)
-		new_type |= (1 << BDADDR_LE_PUBLIC) | (1 << BDADDR_LE_RANDOM);
+	new_type = get_current_type(adapter);
 
 	if (adapter->discovery_enable == 0x01) {
 		/*
-- 
2.2.0.rc0.207.ga3a616c


  reply	other threads:[~2015-03-24  7:57 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-24  7:57 [PATCH v3 1/8] core: device: add device_set_rssi_no_delta Jakub Pawlowski
2015-03-24  7:57 ` Jakub Pawlowski [this message]
2015-03-24  9:18   ` [PATCH v3 2/8] core/adapter: Refactor of scan type Luiz Augusto von Dentz
2015-03-24 19:54     ` Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 3/8] core: adapter: Add SetDiscoveryFilter method Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 4/8] core: adapter: Add parameter parsing to SetDiscoveryFilter Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 5/8] core: adapter: set the filter for each discovery client Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 6/8] core: adapter: start proper discovery depending on filter type Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 7/8] core: adapter: filter discovery results when filered discovery is used Jakub Pawlowski
2015-03-24  7:57 ` [PATCH v3 8/8] client: main: add support for SetDiscoveryFilter Jakub Pawlowski
2015-03-24  9:35   ` Luiz Augusto von Dentz
2015-03-24 20:03     ` Jakub Pawlowski

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=1427183840-8089-2-git-send-email-jpawlowski@google.com \
    --to=jpawlowski@google.com \
    --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