From patchwork Thu Dec 27 07:31:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Balakrishna Godavarthi X-Patchwork-Id: 10743541 X-Patchwork-Delegate: agross@codeaurora.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1861F746 for ; Thu, 27 Dec 2018 07:32:34 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 067442863C for ; Thu, 27 Dec 2018 07:32:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EF00228647; Thu, 27 Dec 2018 07:32:33 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E69732863C for ; Thu, 27 Dec 2018 07:32:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729733AbeL0HcG (ORCPT ); Thu, 27 Dec 2018 02:32:06 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:50110 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729457AbeL0HcG (ORCPT ); Thu, 27 Dec 2018 02:32:06 -0500 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 805EA60918; Thu, 27 Dec 2018 07:32:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1545895925; bh=btUQQKXgsCdglwp3vBDfEEuIUYTBwupLr+lr7XfUx4Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Hk6kiVG17OqrD339DSZJr9onwSHh6hcsFR7kAaCk0b1DVSufI6hWmzNxBBk7EwRxF G6tWkE42n75Mjweph0mzcM1tIh9IuGX1iqAZO/HHtWG8+nMfm1ULNrFvYQQIorh5uI DSyN06SUhMw1z6dWLYBO+jbOgQmXBtgPZneAH3RM= Received: from bgodavar-linux.qualcomm.com (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: bgodavar@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id B21656085C; Thu, 27 Dec 2018 07:31:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1545895919; bh=btUQQKXgsCdglwp3vBDfEEuIUYTBwupLr+lr7XfUx4Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EQICjDx8inkYKF5RhZnrFtSIHfDcs9Pl4LFMNE9cbVK0fK0+q4trZf0HCDC2wRYYa 2BKBloTpVzIBo8dcwHXZr+LVWww8PlkWF+jh65BjsaAGmmUZIPGEp8kYrC92LCkFq6 M/CPD89+qSqti+BtXwXBCDM+ZM0pyDR7gaEueBvk= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org B21656085C Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=bgodavar@codeaurora.org From: Balakrishna Godavarthi To: marcel@holtmann.org, johan.hedberg@gmail.com Cc: mka@chromium.org, linux-kernel@vger.kernel.org, linux-bluetooth@vger.kernel.org, hemantg@codeaurora.org, linux-arm-msm@vger.kernel.org, Balakrishna Godavarthi Subject: [PATCH v6 4/6] Bluetooth: hci_qca: Disable IBS state machine and flush Tx buffer Date: Thu, 27 Dec 2018 13:01:34 +0530 Message-Id: <20181227073136.8431-5-bgodavar@codeaurora.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181227073136.8431-1-bgodavar@codeaurora.org> References: <20181227073136.8431-1-bgodavar@codeaurora.org> MIME-Version: 1.0 Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP During hci down we observed IBS sleep commands are queued in the Tx buffer and hci_uart_write_work is sending data to the chip which is not required as the chip is powered off. This patch will disable IBS and flush the Tx buffer before we turn off the chip. Signed-off-by: Balakrishna Godavarthi --- drivers/bluetooth/hci_qca.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c index 0751b2359f6f..4677a6a2716a 100644 --- a/drivers/bluetooth/hci_qca.c +++ b/drivers/bluetooth/hci_qca.c @@ -1287,6 +1287,8 @@ static void qca_power_shutdown(struct hci_uart *hu) * still open, discard all the garbage data received on the Rx line. */ set_bit(STATE_DISCARD_RX, &qca->flags); + clear_bit(STATE_IN_BAND_SLEEP_ENABLED, &qca->flags); + qca_flush(hu); host_set_baudrate(hu, 2400); qca_send_power_pulse(hu, QCA_WCN3990_POWEROFF_PULSE); qca_power_setup(hu, false);