From patchwork Wed Jan 18 15:40:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Golle X-Patchwork-Id: 13106554 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 49AFEC38159 for ; Wed, 18 Jan 2023 15:41:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Subject:Cc:To: From:Date:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=rsJ9BLdYUSL7sl4zhd+GBQdXg3OVLXdTJshkiaIYBXo=; b=HFHols5Z6d03pz llDQ3bR8y1bznG/u2WHooUU1F9o54uifS8sOn3uAaKxvhOvgmYPNnl+LSdYG5njx5VntrsiUgaNEW avvAIH0/XrBTqyu4ANP2oMcs7CRW4Sr/IbzSqpWMXvE+r1iHfqRhD7vZCye9RjOcxWE3iY/+IqSmD rJZhknPM4cpj7BL/cb93O+/BIGMGRrtWBlxM4dTvaoZu6zJTeujPsKhX72W39KO9h2MiHL+a4bxz9 Y3eFwRom5+hcNVCFwoRCzADO7Dz91fYHi7Hz6lIernN2bTqJpZVxPAVooqenHWT0mx9KJzflnatm8 7MBD9SBroWPW1ChaDSgQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pIAYO-001bed-62; Wed, 18 Jan 2023 15:40:44 +0000 Received: from fudo.makrotopia.org ([2a07:2ec0:3002::71]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pIAYK-001bd2-Dz; Wed, 18 Jan 2023 15:40:42 +0000 Received: from local by fudo.makrotopia.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.96) (envelope-from ) id 1pIAY6-0007gG-1J; Wed, 18 Jan 2023 16:40:26 +0100 Date: Wed, 18 Jan 2023 15:40:19 +0000 From: Daniel Golle To: AngeloGioacchino Del Regno , linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, "Rafael J. Wysocki" , Daniel Lezcano , Amit Kucheria , Zhang Rui , Matthias Brugger , Rob Herring Cc: Steven Liu , Henry Yen , Chad Monroe , John Crispin Subject: [PATCH v5 0/2] thermal: mediatek: add support for MT7986 and MT7981 Message-ID: MIME-Version: 1.0 Content-Disposition: inline X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230118_074040_484600_ACD018F2 X-CRM114-Status: GOOD ( 12.11 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org As requested in a previous review, first convert the if-else selection of the raw_to_mcelsius_* function to instead use a function pointer added to struct mtk_thermal. Then add thermal support for the MT7986 SoC which can also be used on MT7981. Device Tree bindings have already been merged[1]. Changes since v4: Only use switch statement where requested[2] and keep if-else logic in other places. When submitting v3, it looked like the patch series submitted by Amjad Ouled-Ameur ("thermal: mediatek: Add support for MT8365 SoC"[3]) which also adds this function pointer would be merged first. However, a re-spin of this series addressing the comments it has received has not yet been submitted. The change introducing the raw_to_mcelsius function pointer is hence being applied independently. Changes since v2: Rebase on top of pending patch introducing raw_to_mcelsius function pointer. Drop left-over macro extracting the unused adc_oe field. Use switch (...) instead of if-else-if-else-... statements. For now, return -EINVAL as default in case of unknown version. Imho this should be BUG(), as this version is only defined within this driver. Changes since v1: Drop use of adc_oe field in efuse, Henry Yen confirmed its use has been dropped intentionally in MTK SDK as well. [1]: https://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git/commit/?h=thermal/bleeding-edge&id=071e99848ccc1fbe238c4c9c7cfffd83f1dfe156 [2]: https://lore.kernel.org/lkml/0b72a12c-286f-79d0-09e9-b1761530850a@collabora.com/ [3]: https://lore.kernel.org/linux-arm-kernel/4121bb6b-30db-7a23-f4c8-40afdda7a0b5@linaro.org/T/ Daniel Golle (2): thermal/drivers/mtk: use function pointer for raw_to_mcelsius thermal: mediatek: add support for MT7986 and MT7981 drivers/thermal/mtk_thermal.c | 143 +++++++++++++++++++++++++++++++--- 1 file changed, 133 insertions(+), 10 deletions(-) base-commit: 9ce08dd7ea24253aac5fd2519f9aea27dfb390c9