Diff between fe29cf0f5aa2e868a8670b0bd618368f23e3fa8c and 333fb02e6889ec13a3aa32cc3775f9c378955594

Changed Files

File Additions Deletions Status
tools/3dsp.c +19 -5 modified

Full Patch

diff --git a/tools/3dsp.c b/tools/3dsp.c
index 4969287..78ca7dc 100644
--- a/tools/3dsp.c
+++ b/tools/3dsp.c
@@ -125,7 +125,7 @@ static void start_inquiry(void)
 						inquiry_started, NULL, NULL);
 }
 
-static void slave_broadcast_receive(const void *data, uint8_t size,
+static void set_slave_broadcast_receive(const void *data, uint8_t size,
 							void *user_data)
 {
 	printf("Slave broadcast receiption enabled\n");
@@ -156,8 +156,8 @@ static void sync_train_received(const void *data, uint8_t size,
 	memcpy(cmd.map, evt->map, 10);
 
 	bt_hci_send(hci_dev, BT_HCI_CMD_SET_SLAVE_BROADCAST_RECEIVE,
-					&cmd, sizeof(cmd),
-					slave_broadcast_receive, NULL, NULL);
+				&cmd, sizeof(cmd),
+				set_slave_broadcast_receive, NULL, NULL);
 }
 
 static void brcm_sync_train_received(const void *data, uint8_t size,
@@ -185,8 +185,8 @@ static void brcm_sync_train_received(const void *data, uint8_t size,
 	memcpy(cmd.map, evt->map, 10);
 
 	bt_hci_send(hci_dev, BT_HCI_CMD_SET_SLAVE_BROADCAST_RECEIVE,
-					&cmd, sizeof(cmd),
-					slave_broadcast_receive, NULL, NULL);
+				&cmd, sizeof(cmd),
+				set_slave_broadcast_receive, NULL, NULL);
 }
 
 static void truncated_page_complete(const void *data, uint8_t size,
@@ -229,6 +229,18 @@ static void slave_broadcast_timeout(const void *data, uint8_t size,
 							NULL, NULL, NULL);
 }
 
+static void slave_broadcast_receive(const void *data, uint8_t size,
+							void *user_data)
+{
+	struct bt_hci_cmd_read_clock cmd;
+
+	cmd.handle = cpu_to_le16(0x0000);
+	cmd.type = 0x00;
+
+	bt_hci_send(hci_dev, BT_HCI_CMD_READ_CLOCK, &cmd, sizeof(cmd),
+							NULL, NULL, NULL);
+}
+
 static void ext_inquiry_result(const void *data, uint8_t size, void *user_data)
 {
 	const struct bt_hci_evt_ext_inquiry_result *evt = data;
@@ -312,6 +324,8 @@ static void start_glasses(void)
 					truncated_page_complete, NULL, NULL);
 	bt_hci_register(hci_dev, BT_HCI_EVT_SLAVE_BROADCAST_TIMEOUT,
 					slave_broadcast_timeout, NULL, NULL);
+	bt_hci_register(hci_dev, BT_HCI_EVT_SLAVE_BROADCAST_RECEIVE,
+					slave_broadcast_receive, NULL, NULL);
 
 	start_inquiry();
 }