]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
Bluetooth: btmtksdio: update register CSDIOCSR operation
authorSean Wang <sean.wang@mediatek.com>
Mon, 18 Oct 2021 21:30:17 +0000 (05:30 +0800)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 25 Oct 2021 13:36:23 +0000 (15:36 +0200)
That is a preliminary patch to introduce mt7921s support.

Update register CSDIOCSR operation that is suggested from the vendor
driver and is compatible to the all devices.

Co-developed-by: Mark-yw Chen <mark-yw.chen@mediatek.com>
Signed-off-by: Mark-yw Chen <mark-yw.chen@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btmtksdio.c

index f712b52e57977a5e2dc2996a26c6444ea2095744..3381c884490240fa7bbe5853a377ee3c6ecfbb1e 100644 (file)
@@ -520,8 +520,12 @@ static int btmtksdio_open(struct hci_dev *hdev)
        /* SDIO CMD 5 allows the SDIO device back to idle state an
         * synchronous interrupt is supported in SDIO 4-bit mode
         */
-       sdio_writel(bdev->func, SDIO_INT_CTL | SDIO_RE_INIT_EN,
-                   MTK_REG_CSDIOCSR, &err);
+       val = sdio_readl(bdev->func, MTK_REG_CSDIOCSR, &err);
+       if (err < 0)
+               goto err_release_irq;
+
+       val |= SDIO_INT_CTL;
+       sdio_writel(bdev->func, val, MTK_REG_CSDIOCSR, &err);
        if (err < 0)
                goto err_release_irq;