Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp419085rwe; Thu, 1 Sep 2022 01:31:25 -0700 (PDT) X-Google-Smtp-Source: AA6agR5SJ/P9aPr4HSRGNdaiyi3cQAw/RYbOxEj/hkeS0f97hdiisZhhx3dXsrkaVC3+JWHtaP0Z X-Received: by 2002:a63:215a:0:b0:42c:7687:7315 with SMTP id s26-20020a63215a000000b0042c76877315mr11769314pgm.289.1662021085451; Thu, 01 Sep 2022 01:31:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662021085; cv=none; d=google.com; s=arc-20160816; b=RMP0+ODPT41Mav/2LQSvFShu6HgT6P6gSDJOzx823JqdVBnRHKHu2a7Oc6x51X6t4q jaNEMizWa5Ka7KI+DBTrtfTv8nPRqRKqNE5ArtojRz3xCyhyxxBUJvUAeK6UpsxPef82 WIsXZkyJN//tIc+uUPzmqBNLInxB9RB4GRT2XVY4YW76bvbQ4FS6DflKkPb/qsRv7Vxd ln5SA5L1FDiigiiT1tV1RwEnPdd6M1+FIZlhtUN6KAOIyq2P90D8YyiS9iUhnJTqtp1t Nhz26xMKuja2dJvjOn5DR/oXWc6tGuxA3BHhoL3sfnt3OHycEQn0RQ6fiyIdlGQbsPCZ OPLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=eBnZBimVSoEgeQgq9Mt4cHR9sVPDk4cAKTwv9vzp8Vo=; b=OIfzsXrZTsbkISU/lNUTzrGO38o+ZvlAjxJtiuWD7lcxAEtf5S27iHwchm1yna+L1+ tB42pDxNlc/YEjYNWG4p4rxHAqvMK0UXU+OzYgqyfMyRkvL+I6Bx4xjyxA9pasThtopz U1TrOrg37Hl75AYjYRLj98o57+gH7G4MQVSuBvkTp5hhp5ZhsacYSBLMEhKPdqvzH61O lXJqDcl4o+/YD0cO4ZnkhLPRL6zHpV+8ERQOKqx9tyl7VFDKOMGzL5OtMeZmkQYlVPYa 9GkDxud88vEnC+Arrmm5rEi8eQoou/+cT4XYGpRTEyJF1ZpgIJII+T7fdcEo1k67L0Ye dNbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=HU2ppayY; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n126-20020a632784000000b00429b15528e0si6977787pgn.870.2022.09.01.01.31.12; Thu, 01 Sep 2022 01:31:25 -0700 (PDT) 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; dkim=pass header.i=@collabora.com header.s=mail header.b=HU2ppayY; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233671AbiIAIFF (ORCPT + 99 others); Thu, 1 Sep 2022 04:05:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54498 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231308AbiIAIFC (ORCPT ); Thu, 1 Sep 2022 04:05:02 -0400 Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 74B7FB852; Thu, 1 Sep 2022 01:04:53 -0700 (PDT) Received: from [192.168.1.100] (2-237-20-237.ip236.fastwebnet.it [2.237.20.237]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: kholk11) by madras.collabora.co.uk (Postfix) with ESMTPSA id 59EFB6601DF7; Thu, 1 Sep 2022 09:04:50 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1662019491; bh=2zJfFSBZ2omTgok8iG1bcVSOE2x9FAqOQ/YPVZcVIH0=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=HU2ppayYG8zOTDbLiqQ2PUZbo4jkTO6B6P1DpNa6HGopM021oZ2sO5jbA/CC9a6bM dEeFx5R42p0JbphAuvPNOBoOwTUo+RZxFyW38fLWzPMZ/0BMSlqIh9CwIF8XoVUZl7 aYVOQLxbKej7vzDqqJ2h5cG7JnFaWdz5ny5YZSiOm2bFVDqX7VFtzpLfV//ht+EByf I7oCcJGJa7Zh/AFYCHzlPP3naJCW5SpBCFJTp3hh2OJNaPg+oQEfymh0VWcck/rq8u 5dHlSZzNBkVOUFnzQZqa9pR2mTxoU1Ku0PfVBSMkbSndbpXWhvnQNazaht8t2e10DA JLjeRBsGdFghA== Message-ID: <1fae0c47-fff9-89e9-c849-536d167d741d@collabora.com> Date: Thu, 1 Sep 2022 10:04:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.0 Subject: Re: [PATCH 2/4] dt-bindings: arm: mediatek: Add new bindings of MediaTek frequency hopping Content-Language: en-US To: Krzysztof Kozlowski , Johnson Wang , robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, sboyd@kernel.org Cc: linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Project_Global_Chrome_Upstream_Group@mediatek.com, Edward-JW Yang References: <20220831124850.7748-1-johnson.wang@mediatek.com> <20220831124850.7748-3-johnson.wang@mediatek.com> From: AngeloGioacchino Del Regno In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE 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 Il 31/08/22 15:19, Krzysztof Kozlowski ha scritto: > On 31/08/2022 15:48, Johnson Wang wrote: >> Add the new binding documentation for MediaTek frequency hopping >> and spread spectrum clocking control. >> >> Co-developed-by: Edward-JW Yang >> Signed-off-by: Edward-JW Yang >> Signed-off-by: Johnson Wang >> --- >> .../bindings/arm/mediatek/mediatek,fhctl.yaml | 49 +++++++++++++++++++ >> 1 file changed, 49 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/arm/mediatek/mediatek,fhctl.yaml >> >> diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,fhctl.yaml b/Documentation/devicetree/bindings/arm/mediatek/mediatek,fhctl.yaml >> new file mode 100644 >> index 000000000000..c5d76410538b >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,fhctl.yaml >> @@ -0,0 +1,49 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/arm/mediatek/mediatek,fhctl.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: MediaTek frequency hopping and spread spectrum clocking control >> + >> +maintainers: >> + - Edward-JW Yang >> + >> +description: | >> + Frequency hopping control (FHCTL) is a piece of hardware that control >> + some PLLs to adopt "hopping" mechanism to adjust their frequency. >> + Spread spectrum clocking (SSC) is another function provided by this hardware. >> + >> +properties: >> + compatible: >> + const: mediatek,fhctl > > You need SoC/device specific compatibles. Preferably only SoC specific, > without generic fallback, unless you can guarantee (while representing > MediaTek), that generic fallback will cover all of their SoCs? > >> + >> + reg: >> + maxItems: 1 >> + >> + mediatek,hopping-ssc-percents: >> + description: | >> + Determine the enablement of frequency hopping feature and the percentage >> + of spread spectrum clocking for PLLs. >> + $ref: /schemas/types.yaml#/definitions/uint32-matrix >> + items: >> + items: >> + - description: PLL id that is expected to enable frequency hopping. > > So the clocks are indices from some specific, yet unnamed > clock-controller? This feels hacky. You should rather take here clock > phandles (1) or integrate it into specific clock controller (2). The > reason is that either your device does something on top of existing > clocks (option 1, thus it takes clock as inputs) or it modifies existing > clocks (option 2, thus it is integral part of clock-controller). > FHCTL is a MCU that handles (some, or all, depending on what's supported on the SoC and what's needed by the board) PLL frequency setting, doing it in steps and avoiding overshooting and other issues. We had a pretty big conversation about this a while ago and the indices instead of phandles is actually my fault, that happened because I initially proposed your option 2 but then for a number of reasons we went with this kind of solution. I know it's going to be a long read, but the entire conversation is on the list [1] Cheers, Angelo [1]: https://patchwork.kernel.org/project/linux-mediatek/patch/20220612135414.3003-3-johnson.wang@mediatek.com/ > > Best regards, > Krzysztof