[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CABBYNZLb_yqUsnRzcUxxtFnqEYwhD4hRXaAn-QwT8s6cZvTv_A@mail.gmail.com>
Date: Mon, 21 Apr 2025 15:19:51 -0400
From: Luiz Augusto von Dentz <luiz.dentz@...il.com>
To: Chris Lu <chris.lu@...iatek.com>
Cc: Marcel Holtmann <marcel@...tmann.org>, Johan Hedberg <johan.hedberg@...il.com>,
Sean Wang <sean.wang@...iatek.com>, Jiande Lu <jiande.lu@...iatek.com>,
Will Lee <will-cy.lee@...iatek.com>, SS Wu <ss.wu@...iatek.com>,
Steve Lee <steve.lee@...iatek.com>, linux-bluetooth <linux-bluetooth@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-mediatek <linux-mediatek@...ts.infradead.org>
Subject: Re: [PATCH v1 2/2] Bluetooth: btmtksdio: Do close if SDIO card
removed without close
Hi Chris,
On Mon, Apr 21, 2025 at 3:29 AM Chris Lu <chris.lu@...iatek.com> wrote:
>
> To prevent Bluetooth SDIO card from being physically removed suddenly,
> driver needs to ensure btmtksdio_close is called before btmtksdio_remove
> to disable interrupts and txrx workqueue.
>
> Signed-off-by: Chris Lu <chris.lu@...iatek.com>
Ditto, please add Fixes tag.
> ---
> drivers/bluetooth/btmtksdio.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/bluetooth/btmtksdio.c b/drivers/bluetooth/btmtksdio.c
> index 3c66e3ee9834..c16a3518b8ff 100644
> --- a/drivers/bluetooth/btmtksdio.c
> +++ b/drivers/bluetooth/btmtksdio.c
> @@ -1447,11 +1447,15 @@ static void btmtksdio_remove(struct sdio_func *func)
> if (!bdev)
> return;
>
> + hdev = bdev->hdev;
> +
> + /* Make sure to call btmtksdio_close before removing sdio card */
> + if (test_bit(BTMTKSDIO_FUNC_ENABLED, &bdev->tx_state))
> + btmtksdio_close(hdev);
> +
> /* Be consistent the state in btmtksdio_probe */
> pm_runtime_get_noresume(bdev->dev);
>
> - hdev = bdev->hdev;
> -
> sdio_set_drvdata(func, NULL);
> hci_unregister_dev(hdev);
> hci_free_dev(hdev);
> --
> 2.45.2
>
--
Luiz Augusto von Dentz
Powered by blists - more mailing lists