From: Johan Hedberg Date: Mon, 16 Jul 2012 13:12:12 +0000 (+0300) Subject: Bluetooth: Use delayed init for Three-wire UART X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=cd1b44255c498d122220f5280c6cdbf7749c764b;p=openwrt%2Fstaging%2Fblogic.git Bluetooth: Use delayed init for Three-wire UART This patch takes into use the delayed initialization feature that the Bluetooth UART framework provides. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo Padovan --- diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c index 022a6bcb4323..3c0e17b4602d 100644 --- a/drivers/bluetooth/hci_h5.c +++ b/drivers/bluetooth/hci_h5.c @@ -138,6 +138,8 @@ static int h5_open(struct hci_uart *hu) h5->timer.function = h5_timed_event; h5->timer.data = (unsigned long) hu; + set_bit(HCI_UART_INIT_PENDING, &hu->hdev_flags); + /* Send initial sync request */ h5_link_control(hu, sync, sizeof(sync)); mod_timer(&h5->timer, jiffies + H5_SYNC_TIMEOUT); @@ -229,6 +231,7 @@ static void h5_handle_internal_rx(struct hci_uart *hu) h5_link_control(hu, conf_req, 3); } else if (memcmp(data, conf_rsp, 2) == 0) { BT_DBG("Three-wire init sequence complete"); + hci_uart_init_ready(hu); return; } else { BT_DBG("Link Control: 0x%02hhx 0x%02hhx", data[0], data[1]);