From patchwork Sun Nov 26 19:18:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Kemnade X-Patchwork-Id: 169897 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp2644238vqx; Sun, 26 Nov 2023 11:19:11 -0800 (PST) X-Google-Smtp-Source: AGHT+IEUvyqU2U7DRFp8wbUsj4hwMJk7Q+IfBMXNd3OS33VZXexMV1LOuJ5c7ZzpG5BjVYPDj4oc X-Received: by 2002:a05:6a00:a0b:b0:6be:559:d030 with SMTP id p11-20020a056a000a0b00b006be0559d030mr8713967pfh.19.1701026350973; Sun, 26 Nov 2023 11:19:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701026350; cv=none; d=google.com; s=arc-20160816; b=Vg64iC/B0OiwXjv5nC93L6HdhF70sV9D+/1LpZm22U7GtBb65q/3qCUMP0nUeH9U3P U3M01hbIJ8p3zhGZ1A5hdW6KQy0GOIHcH1JlsGLB3j3d9nQnvQZ/S2UiUsHpS591yYR3 2uG66VC52YikTCBmOFDTTjgz0LixOCBoy9o+oghba5dXg9p0L9+DzSHmn4qQwbQPIkuC 3rfS9ziQf8UdRvb4Fe9DtrdPO/zdHk0EAG75fATUsPZdCYh8fh6rlb7csQSh4cPfOulF 7WMrxsxVEXK8dvNrW3zvN+ILGetbCT1a3Zg67x2IZbWnK/uckTj7hf6Gxa0Ctfu+wEyD 8XRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from; bh=9lL1jaqptesPyMzwn0qxQg6ZfG8Lnf8cRGymKFQXYjU=; fh=LG9dKayB47Aw5OhgE4A33oFKes3+TtS9nbezIo8wrtw=; b=wGguFVNGfXmR5Ss1OVcf6/8fy49pNc3a1o6KHcmGZykTi4EvXkkUZzUQBf84M6nsXA Y0A4SOLgzv8cKb9ATxhrlY0L4Zsi9u9hQUiwePYLPaEMEpRtQ/0zqA3YBA8KaD/X86ir svJh8qw6Den8FC9NASYG0YuXZ1wcmaDzX+uhX0DgE4aRnH/69kZuA24wFKpLuUY0VSAa 7NjWchKDV7y4w8m0GXYIv3JygPQcA9dMcr8InhVjG0XbOyU/i2PvXjxy2aPwZdX6hsew FzIeDXxtDbRDmucFE5ZzeFkmC4Dza0w/QuaWVBPP6uatj8dy3D4pjFcHpzpAebDzPv5C Fgww== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id 29-20020a630c5d000000b005bdbd1fe067si8390649pgm.141.2023.11.26.11.19.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Nov 2023 11:19:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 490428086506; Sun, 26 Nov 2023 11:19:05 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229472AbjKZTSu (ORCPT + 99 others); Sun, 26 Nov 2023 14:18:50 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229436AbjKZTSs (ORCPT ); Sun, 26 Nov 2023 14:18:48 -0500 Received: from mail.andi.de1.cc (mail.andi.de1.cc [IPv6:2a02:c205:3004:2154::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 33B1BFA for ; Sun, 26 Nov 2023 11:18:53 -0800 (PST) Received: from p200301077700a9001a3da2fffebfd33a.dip0.t-ipconnect.de ([2003:107:7700:a900:1a3d:a2ff:febf:d33a] helo=aktux) by mail.andi.de1.cc with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r7KeS-006khP-Q1; Sun, 26 Nov 2023 20:18:44 +0100 Received: from andi by aktux with local (Exim 4.96) (envelope-from ) id 1r7KeS-000Slf-0U; Sun, 26 Nov 2023 20:18:44 +0100 From: Andreas Kemnade To: marcel@holtmann.org, johan.hedberg@gmail.com, luiz.dentz@gmail.com, johan@kernel.org, arnd@arndb.de, gregkh@linuxfoundation.org, andreas@kemnade.info, linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, tomi.valkeinen@ideasonboard.com, Tony Lindgren , =?utf-8?q?P=C3=A9ter_Ujfalusi?= , robh@kernel.org Subject: [RFC PATCH 1/3] gnss: Add AI2 protocol used by some TI combo chips. Date: Sun, 26 Nov 2023 20:18:38 +0100 Message-Id: <20231126191840.110564-2-andreas@kemnade.info> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231126191840.110564-1-andreas@kemnade.info> References: <20231126191840.110564-1-andreas@kemnade.info> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Sun, 26 Nov 2023 11:19:05 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783655407011303290 X-GMAIL-MSGID: 1783655407011303290 Texas Instruments uses something called Air Independent Interface (AI2) for their WLAN/BT/GPS combo chips. No public documentation is available, by looking into captured data, it becomes clear that you can either raw data or encapsulated NMEA after some initialization commands. Signed-off-by: Andreas Kemnade --- drivers/gnss/core.c | 1 + include/linux/gnss.h | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/gnss/core.c b/drivers/gnss/core.c index 48f2ee0f78c4d..cac9f45aec4b2 100644 --- a/drivers/gnss/core.c +++ b/drivers/gnss/core.c @@ -335,6 +335,7 @@ static const char * const gnss_type_names[GNSS_TYPE_COUNT] = { [GNSS_TYPE_SIRF] = "SiRF", [GNSS_TYPE_UBX] = "UBX", [GNSS_TYPE_MTK] = "MTK", + [GNSS_TYPE_AI2] = "AI2", }; static const char *gnss_type_name(const struct gnss_device *gdev) diff --git a/include/linux/gnss.h b/include/linux/gnss.h index 36968a0f33e8d..16b565dab83ea 100644 --- a/include/linux/gnss.h +++ b/include/linux/gnss.h @@ -23,6 +23,7 @@ enum gnss_type { GNSS_TYPE_SIRF, GNSS_TYPE_UBX, GNSS_TYPE_MTK, + GNSS_TYPE_AI2, GNSS_TYPE_COUNT }; From patchwork Sun Nov 26 19:18:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Kemnade X-Patchwork-Id: 169899 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp2644298vqx; Sun, 26 Nov 2023 11:19:20 -0800 (PST) X-Google-Smtp-Source: AGHT+IHnW7MPgrCI3XhEZZtpriNHvd67TMLwk9RkszDlwjBjDc9dGNVApgn1saokHpTXspE9l+iz X-Received: by 2002:a5d:814e:0:b0:7a2:a8d5:e146 with SMTP id f14-20020a5d814e000000b007a2a8d5e146mr5989627ioo.15.1701026360271; Sun, 26 Nov 2023 11:19:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701026360; cv=none; d=google.com; s=arc-20160816; b=MrQ78hIKg7kP11o7gMnKKmLNNJvICdlB5tVxiWhTTQHJ+108Y4MdINveWP6Eo3hPp8 JLAPTM3dABLkuhK5b4s4uqT9y+rXd1f6CFfepLq7KbLCyrorncdGEN5Fq/azZUGDnq+7 3rfPTzb8wpndPMRAehVuHlLFuWb2betJkayD4+AOUC+oaMs8dD7sG5Li4IOIPrB4YLcZ IZmrYiSm5cuuLmHgF8rWUHcu5nvIu3Qzi26Y1NWGODIEKSt/cgAwQreH1ZAf5bi1L39Y WO+v7kYezmpfTqlWTkWZXMI/rDqzZRxzW308Xmm3ufF45YQd/O52cajtzJ+meI8J98RU SnLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from; bh=6gLybCdX69r7cEaSvHCfVev4zTUTcPjpuHtD7ccqz1A=; fh=LG9dKayB47Aw5OhgE4A33oFKes3+TtS9nbezIo8wrtw=; b=QCB9aNU3v45+jzNyCRV6fM0go16DGRctMvV9ey7FxcqYqYm0U6r6DJOHcGkwhbwwaY W9V+gG6TOwGlA1SgWGM2p5sCYWWkjtltZn6lM5xlD0dailKKYe69IiXm1ZSXIY4jtT1G LvUhMekTWNqteFPkbkB+bKcWeN+RWxn0B+jCcAdQ/8FdW5+5qZMkIAxBuDq4ae5WFYrR 2BNBL8LTwSm4oBPdfc3MC7v7QY0DI9QJwEdPGXX58VsfPHzZywszzLLQs7mcyp7h03ne evPTtWUhbk/MoV3t79RXFh2lzLjoNakb3q1Iu9leq1vw6M5DtbjgSeLGa1c/ComQR9d0 sUrg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id m123-20020a632681000000b005b91192c61dsi8098852pgm.217.2023.11.26.11.19.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Nov 2023 11:19:20 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id 524BD8084054; Sun, 26 Nov 2023 11:19:16 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231201AbjKZTS6 (ORCPT + 99 others); Sun, 26 Nov 2023 14:18:58 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51536 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229489AbjKZTSt (ORCPT ); Sun, 26 Nov 2023 14:18:49 -0500 Received: from mail.andi.de1.cc (mail.andi.de1.cc [IPv6:2a02:c205:3004:2154::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 33A1DF5 for ; Sun, 26 Nov 2023 11:18:53 -0800 (PST) Received: from p200301077700a9001a3da2fffebfd33a.dip0.t-ipconnect.de ([2003:107:7700:a900:1a3d:a2ff:febf:d33a] helo=aktux) by mail.andi.de1.cc with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r7KeT-006khQ-0v; Sun, 26 Nov 2023 20:18:45 +0100 Received: from andi by aktux with local (Exim 4.96) (envelope-from ) id 1r7KeS-000Slj-2U; Sun, 26 Nov 2023 20:18:44 +0100 From: Andreas Kemnade To: marcel@holtmann.org, johan.hedberg@gmail.com, luiz.dentz@gmail.com, johan@kernel.org, arnd@arndb.de, gregkh@linuxfoundation.org, andreas@kemnade.info, linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, tomi.valkeinen@ideasonboard.com, Tony Lindgren , =?utf-8?q?P=C3=A9ter_Ujfalusi?= , robh@kernel.org Subject: [RFC PATCH 2/3] bluetooth: ti-st: add GNSS support for TI Wilink chips Date: Sun, 26 Nov 2023 20:18:39 +0100 Message-Id: <20231126191840.110564-3-andreas@kemnade.info> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231126191840.110564-1-andreas@kemnade.info> References: <20231126191840.110564-1-andreas@kemnade.info> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Sun, 26 Nov 2023 11:19:16 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783655416541054256 X-GMAIL-MSGID: 1783655416541054256 Some of these chips have GNSS support. GNSS support is available through channel 9 whilst FM is through channel 8. Add support for it. A driver providing a /dev/tigps device is found in some vendor-kernels. The GNSS device provided by this patch seems to be compatible. Signed-off-by: Andreas Kemnade --- drivers/bluetooth/hci_ll.c | 154 ++++++++++++++++++++++++++++++++++++- 1 file changed, 153 insertions(+), 1 deletion(-) diff --git a/drivers/bluetooth/hci_ll.c b/drivers/bluetooth/hci_ll.c index 4a0b5c3160c2b..718dab0f529a7 100644 --- a/drivers/bluetooth/hci_ll.c +++ b/drivers/bluetooth/hci_ll.c @@ -39,6 +39,7 @@ #include #include +#include #include #include @@ -68,6 +69,10 @@ struct ll_device { struct gpio_desc *enable_gpio; struct clk *ext_clk; bdaddr_t bdaddr; + + struct mutex gdev_mutex; + bool gdev_open; + struct gnss_device *gdev; }; struct ll_struct { @@ -78,6 +83,20 @@ struct ll_struct { struct sk_buff_head tx_wait_q; /* HCILL wait queue */ }; +/* Channel-9 details for GPS */ +#define GPS_CH9_PKT_HDR_SIZE 4 +#define GPS_CH9_PKT_NUMBER 0x9 +#define GPS_CH9_OP_WRITE 0x1 +#define GPS_CH9_OP_READ 0x2 +#define GPS_CH9_OP_COMPLETED_EVT 0x3 + +struct gnssdrv_event_hdr { + uint8_t opcode; + uint16_t plen; +} __packed; + + +static int gnss_recv_frame(struct hci_dev *hdev, struct sk_buff *skb); /* * Builds and sends an HCILL command packet. * These are very simple packets with only 1 cmd byte @@ -411,6 +430,13 @@ static int ll_recv_frame(struct hci_dev *hdev, struct sk_buff *skb) .lsize = 0, \ .maxlen = 0 +#define LL_RECV_GNSS \ + .type = GPS_CH9_PKT_NUMBER, \ + .hlen = 3, \ + .loff = 1, \ + .lsize = 2 \ + + static const struct h4_recv_pkt ll_recv_pkts[] = { { H4_RECV_ACL, .recv = hci_recv_frame }, { H4_RECV_SCO, .recv = hci_recv_frame }, @@ -419,6 +445,7 @@ static const struct h4_recv_pkt ll_recv_pkts[] = { { LL_RECV_SLEEP_ACK, .recv = ll_recv_frame }, { LL_RECV_WAKE_IND, .recv = ll_recv_frame }, { LL_RECV_WAKE_ACK, .recv = ll_recv_frame }, + { LL_RECV_GNSS, .recv = gnss_recv_frame }, }; /* Recv data */ @@ -682,12 +709,124 @@ static int ll_setup(struct hci_uart *hu) static const struct hci_uart_proto llp; +static int gnss_lldev_open(struct gnss_device *gdev) +{ + struct ll_device *lldev = gnss_get_drvdata(gdev); + + mutex_lock(&lldev->gdev_mutex); + lldev->gdev_open = true; + mutex_unlock(&lldev->gdev_mutex); + + return 0; +} + +static void gnss_lldev_close(struct gnss_device *gdev) +{ + struct ll_device *lldev = gnss_get_drvdata(gdev); + + mutex_lock(&lldev->gdev_mutex); + lldev->gdev_open = false; + mutex_unlock(&lldev->gdev_mutex); +} + +static int gnss_lldev_write_raw(struct gnss_device *gdev, + const unsigned char *buf, size_t count) +{ + struct ll_device *lldev = gnss_get_drvdata(gdev); + int err = 0; + struct sk_buff *skb = NULL; + struct gnssdrv_event_hdr gnssdrv_hdr = { GPS_CH9_OP_WRITE, 0x0000 }; + + /* allocate packet */ + skb = bt_skb_alloc(sizeof(gnssdrv_hdr) + count, GFP_ATOMIC); + if (!skb) { + BT_ERR("cannot allocate memory for HCILL packet"); + err = -ENOMEM; + goto out; + } + + /* GPS channel */ + + gnssdrv_hdr.plen = count; + hci_skb_pkt_type(skb) = GPS_CH9_PKT_NUMBER; + skb_put_data(skb, &gnssdrv_hdr, sizeof(gnssdrv_hdr)); + skb_put_data(skb, buf, count); + + lldev->hu.hdev->send(lldev->hu.hdev, skb); + + /* TODO: wait on completion? */ + return count; +out: + return err; +} + +static const struct gnss_operations gnss_lldev_ops = { + .open = gnss_lldev_open, + .close = gnss_lldev_close, + .write_raw = gnss_lldev_write_raw, +}; + +static int gnss_recv_frame(struct hci_dev *hdev, struct sk_buff *skb) +{ + struct hci_uart *hu = hci_get_drvdata(hdev); + struct ll_device *lldev = container_of(hu, struct ll_device, hu); + + if (!IS_ENABLED(CONFIG_GNSS)) + return 0; + + if (!lldev->gdev) + return 0; + + if (hci_skb_pkt_type(skb) == GPS_CH9_PKT_NUMBER) { + struct gnssdrv_event_hdr *gnss_hdr = + (struct gnssdrv_event_hdr *)skb->data; + void *data = skb_pull(skb, sizeof(*gnss_hdr)); + /* + * REVISIT: maybe do something with the completed + * event + */ + if (gnss_hdr->opcode == GPS_CH9_OP_READ) { + mutex_lock(&lldev->gdev_mutex); + if (lldev->gdev_open) + gnss_insert_raw(lldev->gdev, data, skb->len); + mutex_unlock(&lldev->gdev_mutex); + } + } + kfree_skb(skb); + + return 0; +} + +static int ll_gnss_register(struct ll_device *lldev) +{ + struct gnss_device *gdev; + int ret; + + gdev = gnss_allocate_device(&lldev->serdev->dev); + if (!gdev) + return -ENOMEM; + + gdev->ops = &gnss_lldev_ops; + gdev->type = GNSS_TYPE_AI2; + gnss_set_drvdata(gdev, lldev); + mutex_init(&lldev->gdev_mutex); + + ret = gnss_register_device(gdev); + if (ret == 0) { + lldev->gdev = gdev; + return 0; + } + gnss_put_device(gdev); + return ret; +} + static int hci_ti_probe(struct serdev_device *serdev) { struct hci_uart *hu; struct ll_device *lldev; struct nvmem_cell *bdaddr_cell; u32 max_speed = 3000000; + int ret; lldev = devm_kzalloc(&serdev->dev, sizeof(struct ll_device), GFP_KERNEL); if (!lldev) @@ -756,14 +895,27 @@ static int hci_ti_probe(struct serdev_device *serdev) kfree(bdaddr); } - return hci_uart_register_device(hu, &llp); + ret = hci_uart_register_device(hu, &llp); + if (ret) + return ret; + + if (IS_ENABLED(CONFIG_GNSS) && + strstr(of_node_full_name(serdev->dev.of_node), "gnss")) + ll_gnss_register(lldev); + + return 0; } + static void hci_ti_remove(struct serdev_device *serdev) { struct ll_device *lldev = serdev_device_get_drvdata(serdev); hci_uart_unregister_device(&lldev->hu); + if (IS_ENABLED(CONFIG_GNSS) && lldev->gdev) { + gnss_deregister_device(lldev->gdev); + gnss_put_device(lldev->gdev); + } } static const struct of_device_id hci_ti_of_match[] = { From patchwork Sun Nov 26 19:18:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Kemnade X-Patchwork-Id: 169898 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp2644280vqx; Sun, 26 Nov 2023 11:19:17 -0800 (PST) X-Google-Smtp-Source: AGHT+IHQvbhngSyjERuL3ky7ouRWwSL/jRwasHJOZP8fo33VF7FwU8fkHHBTaOuq/BKjHYdlS1JZ X-Received: by 2002:a05:6e02:20ec:b0:35b:2e43:ac30 with SMTP id q12-20020a056e0220ec00b0035b2e43ac30mr13171445ilv.24.1701026357707; Sun, 26 Nov 2023 11:19:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701026357; cv=none; d=google.com; s=arc-20160816; b=KwNGKXfGwZn3FjUtqZNRSbDeDZLByUHOmhqV2a2Nio3FKwbxiLwY41whwQBNMOzpCm 61Ffs9BWgw32IQZwiAcjIdy7jJ60ZkENVJwlwdxG52oqkVyD3zdFpo6xSmLW80MiBRmp AqnNGWcjmk/E/iQgE89r/UVcQ1bZi9+hGC2vnBZ6nMV4p3DjKo5M8RYGl51sXdjY1/TR 1Lrm7JeCpD/W3WXFJo9oTsSqDduJy1qrV1+3ayiiDxzT0RSKifnfP5Kg5XEAcwjm7wLl rYZyKsXsYPyWznQZfeW9sBaj0t41eEvp5sIhvaoNAoq+MI6QnI0p8ChhelzwBBKBW9T1 kEXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from; bh=SsOnvlXonurlA564IEOQWemzj0C6BzUJ79azZ6H6G8Y=; fh=LG9dKayB47Aw5OhgE4A33oFKes3+TtS9nbezIo8wrtw=; b=pPMmyzKSdF4HIsmJC+WdlIoMfjd2wKDB1P91KAfUxQDuELCbVYZuQJkf/hUhjDfDBq tVMK56QHMyJ7HnzMUI0+BeGSa4xK0FPKWib/2l9AfgIB3udh3tRfMYi1lH/Ks8i3PEEc HiAiHG9P4aLmGKwJkMEmcv+Y2vORUsXNZDYbRnaR/fzsRiXyKugcmU60/fhQkcDoyR2+ +kkOdexNbFRvvpCFgCXK1gbUzichATcaDrKtBS81TqDqv44BO0AwIr026CoqLiXMXMps aP0YlyUpOvAemBYTs+8TPPZf2+HNJn8chrHseUmhjrYtWqVaezsEdVzJO/JAkc8j9+Zv GfzA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from agentk.vger.email (agentk.vger.email. [23.128.96.32]) by mx.google.com with ESMTPS id s1-20020a056a0008c100b006cb6338dd60si8504523pfu.19.2023.11.26.11.19.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Nov 2023 11:19:17 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) client-ip=23.128.96.32; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.32 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by agentk.vger.email (Postfix) with ESMTP id 45A8C806141D; Sun, 26 Nov 2023 11:19:15 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at agentk.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230488AbjKZTSz (ORCPT + 99 others); Sun, 26 Nov 2023 14:18:55 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51524 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229447AbjKZTSt (ORCPT ); Sun, 26 Nov 2023 14:18:49 -0500 Received: from mail.andi.de1.cc (mail.andi.de1.cc [IPv6:2a02:c205:3004:2154::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 34246FD for ; Sun, 26 Nov 2023 11:18:53 -0800 (PST) Received: from p200301077700a9001a3da2fffebfd33a.dip0.t-ipconnect.de ([2003:107:7700:a900:1a3d:a2ff:febf:d33a] helo=aktux) by mail.andi.de1.cc with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r7KeT-006khU-JE; Sun, 26 Nov 2023 20:18:45 +0100 Received: from andi by aktux with local (Exim 4.96) (envelope-from ) id 1r7KeT-000Slq-15; Sun, 26 Nov 2023 20:18:45 +0100 From: Andreas Kemnade To: marcel@holtmann.org, johan.hedberg@gmail.com, luiz.dentz@gmail.com, johan@kernel.org, arnd@arndb.de, gregkh@linuxfoundation.org, andreas@kemnade.info, linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, tomi.valkeinen@ideasonboard.com, Tony Lindgren , =?utf-8?q?P=C3=A9ter_Ujfalusi?= , robh@kernel.org Subject: [RFC PATCH 3/3] drivers: misc: ti-st: begin to deorbit Date: Sun, 26 Nov 2023 20:18:40 +0100 Message-Id: <20231126191840.110564-4-andreas@kemnade.info> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231126191840.110564-1-andreas@kemnade.info> References: <20231126191840.110564-1-andreas@kemnade.info> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on agentk.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (agentk.vger.email [0.0.0.0]); Sun, 26 Nov 2023 11:19:15 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783655413798005018 X-GMAIL-MSGID: 1783655413798005018 The TI-ST driver seems not to be used anymore. For bluetooth needs there is hci_ll.c which has device tree support and can work without this one. Also firmware download support is there, so it is also not needed here. GPS can also reuse parts of the framework in hci_ll Contrary from this driver, device tree support has been removed. So start deorbiting it by marking it as broken. Signed-off-by: Andreas Kemnade --- drivers/misc/ti-st/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/misc/ti-st/Kconfig b/drivers/misc/ti-st/Kconfig index 1503a6496f632..6bf9cc845745c 100644 --- a/drivers/misc/ti-st/Kconfig +++ b/drivers/misc/ti-st/Kconfig @@ -7,7 +7,7 @@ menu "Texas Instruments shared transport line discipline" config TI_ST tristate "Shared transport core driver" depends on NET && TTY - depends on GPIOLIB || COMPILE_TEST + depends on GPIOLIB || COMPILE_TEST || BROKEN select FW_LOADER help This enables the shared transport core driver for TI