From patchwork Fri Jan 20 17:23:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Golle X-Patchwork-Id: 4327 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp328390wrn; Fri, 20 Jan 2023 09:28:42 -0800 (PST) X-Google-Smtp-Source: AMrXdXvnVDXo4NIU4nI783sHoqYvlZiDZCse0DOm3vGyhL+L2waif04y4/nSKfXp6UnQXrbSm5FK X-Received: by 2002:a17:90b:1bd1:b0:22a:1dd9:9d13 with SMTP id oa17-20020a17090b1bd100b0022a1dd99d13mr4141630pjb.16.1674235721883; Fri, 20 Jan 2023 09:28:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674235721; cv=none; d=google.com; s=arc-20160816; b=b8Yjw9S4TClQIXRhTJ8Xuf5I6wmcMLXnrk9SjHPpVCXZ1M770EQX9CPKx4E5rAnkEm cPTvD7Bm2QYmhwdOw+r0KHB3KY8CAJXktMlQ3v9+YqBe/uzh8qhjH6dsmX+aFovG6Cyo N7SirqfHzqaFODKAclwhUaFQXpewRYJxL9YGQBR07skYO9ARPpNd2fDG6X51JxOOok/v 0MC5sMo4PUzbfoxgDYbO/DtrfeRl3jssHc5aQFTfRdxPMkCnxxBseZG/A/+bNwjs5CLH iUbmo9wIVPt1WkseKvqJjbT2pEE8DpDKF6GWN0ATqFAfgCx+kSgH983tmLebfi4uhLhE RNwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-disposition:mime-version:message-id :subject:cc:to:from:date; bh=JrmQ9YByHItWBueH2+ttxwSuumw74wejKeuUDbbBJuc=; b=kgHmuSMV4RWmz+pzTogcAEy6BzfC1atvRRXUOhkXZXS6gEUEzmgarHtkVaTeB5fg8l JwnzcZw0K1AgrIbGXDPY1nOH6jHdqed/ac3CkWj+D0GVSQPk71DNNzl8oNtduN9n0wBl Rzag44SujAITEYjwBvZ5UvpE8HuKLlR/bLw4RWxhk8OrUpnk9wjjwyJtEFbkAdndT0bO +OyCcECk7eLzRlAfcZFOVVjgbgDkjNPwPEHc6nM1RFvau5nU4N8oQGfKFPgxqEwDQ5r0 KH4HONOWvHbg68qtWabo4cUZvrfLV7WQyNUe5me5piMlL8QKB3XI9s0Dqt0yI6TjH/R+ BUqw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o24-20020a17090ad25800b0022969bb5cdbsi2854991pjw.140.2023.01.20.09.28.29; Fri, 20 Jan 2023 09:28:41 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229912AbjATRXu (ORCPT + 99 others); Fri, 20 Jan 2023 12:23:50 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37092 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229634AbjATRXt (ORCPT ); Fri, 20 Jan 2023 12:23:49 -0500 Received: from fudo.makrotopia.org (fudo.makrotopia.org [IPv6:2a07:2ec0:3002::71]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 38E9DC13CB; Fri, 20 Jan 2023 09:23:27 -0800 (PST) Received: from local by fudo.makrotopia.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.96) (envelope-from ) id 1pIv6o-00054u-0o; Fri, 20 Jan 2023 18:23:22 +0100 Date: Fri, 20 Jan 2023 17:23:12 +0000 From: Daniel Golle To: linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, AngeloGioacchino Del Regno , Michael Turquette , Stephen Boyd , Rob Herring , Krzysztof Kozlowski , Matthias Brugger Cc: Chen-Yu Tsai , Miles Chen , Edward-JW Yang , Johnson Wang , Fabien Parent , Chun-Jie Chen , Sam Shih , Jianhui Zhao Subject: [PATCH v3 0/3] add support for clocks on MT7981 SoC Message-ID: MIME-Version: 1.0 Content-Disposition: inline X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755563396479931831?= X-GMAIL-MSGID: =?utf-8?q?1755563396479931831?= The MediaTek MT7981 SoC is quite similar to its big sibling, the MT7986. Hence most drivers can be reused and not much is missing the get also this SoC working on mainline Linux. Start with a cleaned-up version of the clock drivers, based on what can also be found in MediaTek's SDK[1]. Upon request of AngeloGioacchino Del Regno this series has been rebased and adapted to be applied on top of the pending series "MediaTek clocks cleanups and improvements"[2] The complete tree used for testing (with still some to-be-cleaned-up changes, esp. for the Ethernet driver) can be found on Github[3]. [1]: https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/refs/heads/master/target/linux/mediatek/files-5.4/drivers/clk/mediatek/clk-mt7981.c [2]: https://patchwork.kernel.org/project/linux-clk/list/?series=714057 [3]: https://github.com/dangowrt/linux Changes since v2: * rebase on top of next-20230120 with v4 of AngeloGioacchino's series[2] * fix titles of dt-bindings commits (this time for real) * convert clk-mt7981-infracfg to use mtk_clk_simple_probe * make use of PLL_AO flag in clk-mt7981-apmixed * convert clk-mt7981-ethsys into platform driver, also using the generic probe function, allow building as module Changes since v1: * rebase and adapt on top of [2] * split-off addition of dt-bindings header, fix filename * changed commit title as requested Daniel Golle (3): dt-bindings: clock: Add apmixedsys/topckgen compatibles for MT7981 dt-bindings: clock: mediatek: add mt7981 clock IDs clk: mediatek: add MT7981 clock support .../bindings/clock/mediatek,apmixedsys.yaml | 1 + .../bindings/clock/mediatek,topckgen.yaml | 1 + drivers/clk/mediatek/Kconfig | 17 + drivers/clk/mediatek/Makefile | 4 + drivers/clk/mediatek/clk-mt7981-apmixed.c | 102 +++++ drivers/clk/mediatek/clk-mt7981-eth.c | 117 +++++ drivers/clk/mediatek/clk-mt7981-infracfg.c | 207 +++++++++ drivers/clk/mediatek/clk-mt7981-topckgen.c | 422 ++++++++++++++++++ .../dt-bindings/clock/mediatek,mt7981-clk.h | 215 +++++++++ 9 files changed, 1086 insertions(+) create mode 100644 drivers/clk/mediatek/clk-mt7981-apmixed.c create mode 100644 drivers/clk/mediatek/clk-mt7981-eth.c create mode 100644 drivers/clk/mediatek/clk-mt7981-infracfg.c create mode 100644 drivers/clk/mediatek/clk-mt7981-topckgen.c create mode 100644 include/dt-bindings/clock/mediatek,mt7981-clk.h