From patchwork Mon Jan 4 13:28:02 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 11996751 X-Patchwork-Delegate: neil.armstrong@linaro.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CCFABC43332 for ; Mon, 4 Jan 2021 13:29:26 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 96477207AE for ; Mon, 4 Jan 2021 13:29:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 96477207AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=sanrPHQM3bkczWUPrcxhbcsuABX2Rf4cJo0EycZT7us=; b=XivMyJuWrQQLQS5bFxyDWjyWM +UKln4swxQ4BHY2XrB/im9TfzhuT3nLoGdwZ1SUD/fLMBY1Y1iQquYkkKaoALeH4jshDdzwczK7bg ZB9/l58zVrFJc9ade6EkEP2TA2bKf4oJeB3j3xw2oPjnN3ZBOIz/ZA8dHuavicr4pXIku3QKKpIgs MCb4Xn1hXS3eiAL8BXOg1vqVCZcGvPAo3MOS6AonMiDORAKpS7SMElmteVi1Uz5Xo8nsmLvFyX3bc mwkbtZJk0KEOokihu4OdrfQmdjkUdVWfkvF87jCTYg7MJNVYE9xjaNorE5ET+CixyYPqCblx3ZXxY S4SXA30zg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvF-00075s-TL; Mon, 04 Jan 2021 13:29:21 +0000 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPv8-00071o-DQ; Mon, 04 Jan 2021 13:29:15 +0000 Received: by mail-wm1-x32d.google.com with SMTP id v14so18435869wml.1; Mon, 04 Jan 2021 05:29:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=N0ICd7gjWpI+u44o7fGulyQewlvcHmYQ4mPyDcl0N/Y=; b=KYr5DfgA5liPJkd48Mrj1k+lb8ObI4YW8MoTs/LZJSQY1rQkG5bQuKaPlkHHq/2WdC Uz4QdeAVD43drFI2JM32/IE/V0IgPHiI0yI7H5Nnd2cUk3LiLtB3kYk+dAMNZVErqt0Z WIsDVjV1229ydaJNNxe27vSHnLa6SdUW38jlpTTBm+ElH+mhieunnn3xO5M5oiM0zppP 2fDAYZZPc33b5kH5CbUew073VctIkaL3zwyKY5z00NXmacvlWXkmqSmJAeiIlpOTrTtE Io3rotHVY1oDq0/Bqw7KzUg48kRlw3ToWBgS5mInL0mTVTfsXw9VhyGPdxEqbjvSPBlb gecA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=N0ICd7gjWpI+u44o7fGulyQewlvcHmYQ4mPyDcl0N/Y=; b=G4LvfPvFGOwDoUqp4gIAeGt2T3/Kd95jaCqIf0xHvl01mIxcfHP/5F7rzsBDA7N7pg wJX1WN0BhLAeN+KCluhbWyfe2tVJIurDeGdYJyWfyXMsqnoZSKtQfuAWwe3ENWgz8/U1 WYvpNZLfOsoqCMHuEQc9+7v08/iJCmNz8v0STGyghNMpkw8tSR9DilDCeKyrCpToIzfJ vNW2v67cnnVk2bL4vn5LCJi+j+4ITU5MdQandz1Gh/8l1dYEChZl3ePMClCfCMUyrohv GvlzHC+HesdlY4WjrSC4yH531JpKmcuC4RrURTGJGp5VkRi5oGPHSZ83i7ywhczeXRdJ DSHw== X-Gm-Message-State: AOAM532bE1PJsYzj/TNMwKR86G1fbqq+MheoE+VxAuXHJDLKG7aqr7SU +HemuuXSP5FoMz1kv/9BIhABRxtWrUE= X-Google-Smtp-Source: ABdhPJywuE2u9mR3LAhtBrTJHq+1D8WBmP3LHVUQJhGBFbugfODpsKR6wzD1kLMNzPlpsdtU8xmBMw== X-Received: by 2002:a1c:ba07:: with SMTP id k7mr27284102wmf.34.1609766952936; Mon, 04 Jan 2021 05:29:12 -0800 (PST) Received: from localhost.localdomain (p200300f13724fd00428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:3724:fd00:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id c4sm99916521wrw.72.2021.01.04.05.29.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 05:29:12 -0800 (PST) From: Martin Blumenstingl To: jbrunet@baylibre.com, linux-amlogic@lists.infradead.org Subject: [PATCH 1/5] clk: meson: meson8b: don't use MPLL1 as parent of vclk_in_sel Date: Mon, 4 Jan 2021 14:28:02 +0100 Message-Id: <20210104132806.720558-2-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> References: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210104_082914_551334_3DBC560A X-CRM114-Status: GOOD ( 14.84 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sboyd@kernel.org, mturquette@baylibre.com, linux-kernel@vger.kernel.org, Martin Blumenstingl , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org MPLL1 is needed for audio output. Drop it from the vclk_in_sel parent list so we only use the (mutable) vid_pll_final_div tree or one of the (fixed) FCLK_DIV{3,4,5} clocks. Signed-off-by: Martin Blumenstingl --- drivers/clk/meson/meson8b.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/clk/meson/meson8b.c b/drivers/clk/meson/meson8b.c index a844d35b553a..f8bd211db720 100644 --- a/drivers/clk/meson/meson8b.c +++ b/drivers/clk/meson/meson8b.c @@ -1154,6 +1154,10 @@ static struct clk_regmap meson8b_vid_pll_final_div = { }, }; +/* + * parent 0x6 is meson8b_mpll1 but we don't use it here because it's reserved + * for the audio outputs. + */ static const struct clk_hw *meson8b_vclk_mux_parent_hws[] = { &meson8b_vid_pll_final_div.hw, &meson8b_fclk_div4.hw, @@ -1161,7 +1165,6 @@ static const struct clk_hw *meson8b_vclk_mux_parent_hws[] = { &meson8b_fclk_div5.hw, &meson8b_vid_pll_final_div.hw, &meson8b_fclk_div7.hw, - &meson8b_mpll1.hw, }; static struct clk_regmap meson8b_vclk_in_sel = { From patchwork Mon Jan 4 13:28:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 11996753 X-Patchwork-Delegate: neil.armstrong@linaro.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 675A2C433DB for ; Mon, 4 Jan 2021 13:29:30 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 33F04207AE for ; Mon, 4 Jan 2021 13:29:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 33F04207AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=D0pCo567a6YBwhQOUQi5LPIT6uRvldYT644fEYnhEsI=; b=AOslplu7fRcet5vOtmh8CJXb6 SpyKzFefv/mhMiv1uhjnjx9tsolXPlpUxUHEq8iXJ0Jg1Rkp7q03QKpu/+Bt5mNl/CIIrTLFh1DJb O1DQupXwxDQH5zvi0iatPd1tfB8c2DRFgnjgM6cnKtolZ+XdtvOxxkw+aFzgFU5+igAjWe2Q+guX7 a8DCybpVoXwwQA3cHA7DDY7OvCtNfi27Rr33dGuCUulw7kAdIlSW1PqwAQ0kjRzkCIc6Qa5KndiOU f1IHBFckWkdQyALIwji5kqBk8h1OnQgslNXcJnhGjVu0uA31P4HfymQEDaaa70q9F2Cp/yKNgks/1 1LkV5jrOw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvK-00077m-Jt; Mon, 04 Jan 2021 13:29:26 +0000 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPv9-000724-DO; Mon, 04 Jan 2021 13:29:19 +0000 Received: by mail-wr1-x42e.google.com with SMTP id c5so32157908wrp.6; Mon, 04 Jan 2021 05:29:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ju+fvznWpdnqKgL0XY4kkDus/LAK39t8IpQPOIIruIQ=; b=McBUAzMdLiwYXD5jLCbq0wTAXfCoJ093gSi/QpaxlQr0YZKpvEOIWm95LBuOwPAWMo cFTd/0EBuKZP2EKuzGxry+pOeCmeXVoqYjwImBgDg7+lAdgeL6ZFqICN1eoNwbwIASVa yRQWBi6E5ghBLs6J81QGYsdYfteZGCY5KAjMmeHseB8hjVqYxWEgDCq5OYdrNY3/Gmfg YM2QkFqj4c2qHqnr7Pg2/N70/kffN/Uv3LaA/pfsFVVD+XsQgDXcZ+BECc8UWUw/fFS9 5D/qd3KjxpYfMn6qG4zl7o9zcfF1pS8K6EXYt32LNIuCNZ6ssIIXKFLiTvj76STyxO3R j8QQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ju+fvznWpdnqKgL0XY4kkDus/LAK39t8IpQPOIIruIQ=; b=RgyK989tzcFwMMarZUbf4cztq9gRJT0921fLk3AVG462J5BMZSdWcKJKaZgJMVlA2H 8bEF9KTK3nJhYaaOfTs0AmxXHc+LYto76AcYNcwDys1FLtShh5KiSBtWUa5EL3LHKugz Kd3SPpFTJ6ksO1g3S2UXP3UQq0QlSP4X1Pws/r2RD4FKs7zlsa0j2ny/V+2kUyZo1XO5 TX2PYM0IWZr9vNQWEu3lHLB5YXcGER7QKkFCJ/6603aBI3nZsC+gV6uOfHoanop5oDX7 18RVErl3QmeKKxMcp8TCpgFLJYN5Akuv9maXtW8X0zAr+qJATDFBJWbY9fWWdsyTfLZA lozw== X-Gm-Message-State: AOAM530LtrFlbvk6ofZKHifv8xjrMqIK4HqF/FTT/U7N30jcWJHEBgsE q+0pJjEXMvu1QB6MQBwBC2Y= X-Google-Smtp-Source: ABdhPJy587NnvO7AefdsF/KjjG1iHKv9GXok92rFrI/AXc+PCpiFAKZ+4KV++7y69fgEPyBWbaMgNQ== X-Received: by 2002:adf:fbc5:: with SMTP id d5mr79255592wrs.82.1609766953904; Mon, 04 Jan 2021 05:29:13 -0800 (PST) Received: from localhost.localdomain (p200300f13724fd00428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:3724:fd00:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id c4sm99916521wrw.72.2021.01.04.05.29.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 05:29:13 -0800 (PST) From: Martin Blumenstingl To: jbrunet@baylibre.com, linux-amlogic@lists.infradead.org Subject: [PATCH 2/5] clk: meson: meson8b: define the rate range for the hdmi_pll_dco clock Date: Mon, 4 Jan 2021 14:28:03 +0100 Message-Id: <20210104132806.720558-3-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> References: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210104_082915_519757_B57F3885 X-CRM114-Status: GOOD ( 11.80 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sboyd@kernel.org, mturquette@baylibre.com, linux-kernel@vger.kernel.org, Martin Blumenstingl , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org According to the public S805 datasheet the HDMI PLL VCO frequency has to be between 1.2GHz and 3.0GHz. Add this range in our driver so we won't get too low (which means the PLL won't lock) or too high. Signed-off-by: Martin Blumenstingl --- drivers/clk/meson/meson8b.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/clk/meson/meson8b.c b/drivers/clk/meson/meson8b.c index f8bd211db720..16ab595ab1a4 100644 --- a/drivers/clk/meson/meson8b.c +++ b/drivers/clk/meson/meson8b.c @@ -3781,6 +3781,11 @@ static void __init meson8b_clkc_init_common(struct device_node *np, return; } + /* The HDMI PLL VCO is limited to 1.2G~3.0GHz */ + clk_hw_set_rate_range(clk_hw_onecell_data->hws[CLKID_HDMI_PLL_DCO], + 1200 * 1000UL * 1000UL, + 3000 * 1000UL * 1000UL); + ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_onecell_data); if (ret) From patchwork Mon Jan 4 13:28:04 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 11996757 X-Patchwork-Delegate: neil.armstrong@linaro.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 396E2C433DB for ; Mon, 4 Jan 2021 13:29:39 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E93A9207AE for ; Mon, 4 Jan 2021 13:29:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E93A9207AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=YA/9kJKaQm/8ZDPNPumuIDUWN/ffNiY/K+3c/bydgx0=; b=xUZRfMhHEOgdHUB6e5LwiZBGh w84kRfRcPY3sMOPRQN1K2F97YfALc/SznHtg223ICkgPFXHG4fV8vYCOn/ppNtOgyTqigWlFtG1vj frKsZ7MkMP1XFDzPRL7UsfgEzcBxifF5Z+fpBI+jIEXY7vMwB2Or1p4g7mg2lI1V0F1btLdSaKx1P xVOftg3sCroU+7SGkN622XauHwPqg4DcMoyll7eGS4W1ESbGWkHSIATbOJOIDDMnUd9Cs0sXSNe0w VjXY7kimxHO88eemL31yDgwtFg3Fe5Z95JiDjH/l+JIF32frmWOYG+ISL700Wpfo8w5M7VnulAG2A jhjjkgnFg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvS-0007BL-V6; Mon, 04 Jan 2021 13:29:34 +0000 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvA-000731-9P; Mon, 04 Jan 2021 13:29:20 +0000 Received: by mail-wm1-x329.google.com with SMTP id v14so18435949wml.1; Mon, 04 Jan 2021 05:29:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yU3i8q3LKfNlAY9hUH3bx+fqfznLSPg6/fe82VNqq7E=; b=AMtwZS2an8TZOKdgEL4gqeYjLriuWPqWRgYbrgrbbN40Xtqp44B8JLfh21SaF1Lvo0 4Mhpet6kOwKrWQy/Qg7Eo6+hfr9ySEzMcWNp4IXPI3oiuWxKEtqYqxlbs+PpEdaZkxPR 7e2f9JwBINuQ7UHZKKsDcMN9NNi/UPfm2aYqcut1mwGu79RYC013VAPScPi9Z+h7iDhF /5YW/WsJtc4efxS6mVyxN+IWNJvc5xl3fGsda90wiG9IG9n/xDfNd+ZB/WPtrNCtywxT EE3njDXCQuXdY9X2Y2Xi/iWy3q0iPT0e734llu2PhPOrG7M1cm2mPFVnwORl7gkD+0+3 kiAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=yU3i8q3LKfNlAY9hUH3bx+fqfznLSPg6/fe82VNqq7E=; b=lGNywkPe4uHvnhZVIZgTXFD4vrbuSXVinJbBuDL55+Z6/Tbck6OPvTLJnfcoZ+DQrS ncVMeG06+WIXSzEC4GIhRwzMn/tnvXe7JZ9gof0bu5+IreRql+tQC5GgLNA7hYETvygt +HCdEh+BSYf5Y/AJskRWIrWzOxHTFD92aU7xsb9gFyeEV5PKsqsnbBKz6k00xw6IXwz5 OcI34fRptNVN/ec+82kTbr8579+3YGg9PIy3471d3fVGxrOypmbiPhawLCnGRz9yb0M5 XOQ1mUQIaLdCygahbpsV5d0rFjG+9Y/yadN+KrQJcn0SFZalgfiOIto74V9jgwBpbiWt oTXA== X-Gm-Message-State: AOAM532VfJupRTRKE5ufHeuFruKMbAfddG81PJchoSn1W3H2DRdynKnb mzKAHo1IUmjMhjajmi8dgZc= X-Google-Smtp-Source: ABdhPJyVpXksZHxu5YZkIIRBN6VRNV0RdPiMJnbeiaBdMGsMHagAhSvke15twbTrOcTpAUNR0RhXfg== X-Received: by 2002:a1c:741a:: with SMTP id p26mr27847111wmc.47.1609766954825; Mon, 04 Jan 2021 05:29:14 -0800 (PST) Received: from localhost.localdomain (p200300f13724fd00428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:3724:fd00:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id c4sm99916521wrw.72.2021.01.04.05.29.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 05:29:14 -0800 (PST) From: Martin Blumenstingl To: jbrunet@baylibre.com, linux-amlogic@lists.infradead.org Subject: [PATCH 3/5] clk: meson: meson8b: add the video clock divider tables Date: Mon, 4 Jan 2021 14:28:04 +0100 Message-Id: <20210104132806.720558-4-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> References: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210104_082916_422461_C0A68EA5 X-CRM114-Status: GOOD ( 14.66 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sboyd@kernel.org, mturquette@baylibre.com, linux-kernel@vger.kernel.org, Martin Blumenstingl , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org Add all known clock dividers from Amlogic's 3.10 vendor kernel. If not stated otherwise the values given in the tables are the only ones used by the 3.10 vendor kernel even if the hardware is capable of other dividers as well: - vid_pll_pre_div can divide by 5 or 6 and if u-boot did not initialize this clock then it divides by 1 by default (only 5 and 6 are used at runtime by the vendor kernel though) - vid_pll_post_div is either 1 or 2 - vid_pll_final_div is either 1, 2 or 4 Signed-off-by: Martin Blumenstingl --- drivers/clk/meson/meson8b.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/drivers/clk/meson/meson8b.c b/drivers/clk/meson/meson8b.c index 16ab595ab1a4..1ae771bac4a5 100644 --- a/drivers/clk/meson/meson8b.c +++ b/drivers/clk/meson/meson8b.c @@ -1084,11 +1084,19 @@ static struct clk_regmap meson8b_vid_pll_in_en = { }, }; +static const struct clk_div_table vid_pll_pre_div_table[] = { + { .val = 0, .div = 1 }, + { .val = 4, .div = 5 }, + { .val = 5, .div = 6 }, + { /* sentinel */ } +}; + static struct clk_regmap meson8b_vid_pll_pre_div = { .data = &(struct clk_regmap_div_data){ .offset = HHI_VID_DIVIDER_CNTL, .shift = 4, .width = 3, + .table = vid_pll_pre_div_table, }, .hw.init = &(struct clk_init_data){ .name = "vid_pll_pre_div", @@ -1101,11 +1109,18 @@ static struct clk_regmap meson8b_vid_pll_pre_div = { }, }; +static const struct clk_div_table vid_pll_post_div_table[] = { + { .val = 0, .div = 1 }, + { .val = 1, .div = 2 }, + { /* sentinel */ } +}; + static struct clk_regmap meson8b_vid_pll_post_div = { .data = &(struct clk_regmap_div_data){ .offset = HHI_VID_DIVIDER_CNTL, .shift = 12, .width = 3, + .table = vid_pll_post_div_table, }, .hw.init = &(struct clk_init_data){ .name = "vid_pll_post_div", @@ -1137,11 +1152,19 @@ static struct clk_regmap meson8b_vid_pll = { }, }; +static const struct clk_div_table meson8b_vid_pll_final_div_table[] = { + { .val = 0, .div = 1 }, + { .val = 1, .div = 2 }, + { .val = 3, .div = 4 }, + { /* sentinel */ } +}; + static struct clk_regmap meson8b_vid_pll_final_div = { .data = &(struct clk_regmap_div_data){ .offset = HHI_VID_CLK_DIV, .shift = 0, .width = 8, + .table = meson8b_vid_pll_final_div_table, }, .hw.init = &(struct clk_init_data){ .name = "vid_pll_final_div", From patchwork Mon Jan 4 13:28:05 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 11996755 X-Patchwork-Delegate: neil.armstrong@linaro.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 64DC3C433E6 for ; Mon, 4 Jan 2021 13:29:42 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id ECA79207AE for ; Mon, 4 Jan 2021 13:29:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org ECA79207AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=rAXs5EYrP1Wx/sV90dA/PoER+8yKtGinZ0Fycle368g=; b=PDjhcBNvITkXokLRx4bkOCWP6 75n4iT4MCJexou0reVONFQOchx+Jbg9DOl4bLxcrO1J5WKZbCgeRy2TTUPvKX+5s2IoCE5xTXSwCx x4kctF5k9u6yOFVW6aU4upvJXScktLYADxEcgtikhsaezCDdFQkabG1JbLeHjVQaYSInyS+mWIh0R PbrK2CgHBSLvjy2flD4bwiwQtzl8lX0pg/fjdALrkPxGg94FvckaMEHeSt7aak/1UlBQm3G4npQZM G0hI2AmyvpJxVFui/r5OYT+eW97y4wKxb7zTdPdQ8fA5LMifSh0L6cDxK2LRYB9A0IWKt/B2A1zvF MneUCyOQQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvU-0007CM-4I; Mon, 04 Jan 2021 13:29:36 +0000 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvB-00073n-7J; Mon, 04 Jan 2021 13:29:22 +0000 Received: by mail-wm1-x333.google.com with SMTP id r4so19288154wmh.5; Mon, 04 Jan 2021 05:29:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=eG1xGDdg+wVn6kBQHz9xXAfAxIcsHz4S2Cf7VpGA6MY=; b=JwU/JaI2mt7vyQnZwF1uRoiSIij1S0clOARve6g/26V0ruwEIIWim3n0HKxM6zL5Hq 5yg1T3X0RxdZpIdAnegcX9Wkywc64fJEo0oa8aVxPGIwNNywPfi+9ANJE5EL0mXG7tZ+ jLS83lpdEGGstdDWN6VwMMCPpUORmahsP4SQThK7MrcVMVC0tKQ7xIx//Kn1Gatr26X5 qMOcEIEH/bRhyOZqiWdXOaNcOhrJ24Ewq+elnXai0XbONk8gdlWNdhzDzveAyApQJIdM IObhsKQE4yeGMHOFJlLVLZ2nqo5bz82hjYXeRbUUfZrppCvF6f5XYs9jNC/HDzjvP3x1 NFgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=eG1xGDdg+wVn6kBQHz9xXAfAxIcsHz4S2Cf7VpGA6MY=; b=fghujWTDYNXv8kHgK7m01sIz7GfESK6rCTZtDNDushpWUpxgLpHdl9mKl86BPyrxeO 74OfbEZRPrcPrhM9/tcTMrQ9XtExXvRv9AM6/1UhYyHjNpkDhEuf1eQGCth7ctvRoE7k kHs+tEytrFK7QkP5/WwUlt41SXCkelzfg31QsLDCgLUmnczqStx/GxSg/1X1yrmvgbxW 7yEPZLjVn1iZgegB2FyC9fPgY1cUPSUaJv6v7gPyUyklzwnPvik4RXVjNmFPy3g5a/dl +1/mBs/lX398rYjwgDobBeJ/W0Bce5HeWrrp2WTJDJAetLvkLE7gNw0ltUzJB4KPC7WR F0PA== X-Gm-Message-State: AOAM531njdIJLnR20ciw7J7VSgCgz4EOiY31dMFQQUCPq0VtNJNEdN22 SL5LgrVPV0bUuQEh32CvoOw= X-Google-Smtp-Source: ABdhPJz10OScIcWsisjFbhe0vAj1ffZY2RyCYyFfttGsKIoZ4R3v0ipEAKM637NRGBtoluBUf0650g== X-Received: by 2002:a1c:f70c:: with SMTP id v12mr25365543wmh.77.1609766955742; Mon, 04 Jan 2021 05:29:15 -0800 (PST) Received: from localhost.localdomain (p200300f13724fd00428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:3724:fd00:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id c4sm99916521wrw.72.2021.01.04.05.29.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 05:29:15 -0800 (PST) From: Martin Blumenstingl To: jbrunet@baylibre.com, linux-amlogic@lists.infradead.org Subject: [PATCH 4/5] clk: meson: meson8b: add the HDMI PLL M/N parameters Date: Mon, 4 Jan 2021 14:28:05 +0100 Message-Id: <20210104132806.720558-5-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> References: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210104_082917_345478_3FBF2CCA X-CRM114-Status: GOOD ( 14.20 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sboyd@kernel.org, mturquette@baylibre.com, linux-kernel@vger.kernel.org, Martin Blumenstingl , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org The 3.10 vendor kernel uses only specific HDMI PLL M/N parameter combinations. The PLL won't lock for values smaller than 50 if the internal doubling (which is yet unknown how to use it) is disabled. However, when this doubling is enabled then the values smaller than 50 will lock just fine. The only restriction for values greater than 50 is that the resulting frequency must not exceed the 3.0GHz limit. These values are taken from the endlessm 3.10 kernel which includes some additional M/N combinations for some VESA and 75Hz display modes. Signed-off-by: Martin Blumenstingl --- drivers/clk/meson/meson8b.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/drivers/clk/meson/meson8b.c b/drivers/clk/meson/meson8b.c index 1ae771bac4a5..8061c11389a9 100644 --- a/drivers/clk/meson/meson8b.c +++ b/drivers/clk/meson/meson8b.c @@ -118,6 +118,28 @@ static struct clk_regmap meson8b_fixed_pll = { }, }; +static const struct pll_params_table hdmi_pll_params_table[] = { + PLL_PARAMS(34, 1), + PLL_PARAMS(40, 1), + PLL_PARAMS(42, 1), + PLL_PARAMS(44, 1), + PLL_PARAMS(45, 1), + PLL_PARAMS(49, 1), + PLL_PARAMS(52, 1), + PLL_PARAMS(54, 1), + PLL_PARAMS(56, 1), + PLL_PARAMS(59, 1), + PLL_PARAMS(60, 1), + PLL_PARAMS(61, 1), + PLL_PARAMS(62, 1), + PLL_PARAMS(64, 1), + PLL_PARAMS(66, 1), + PLL_PARAMS(68, 1), + PLL_PARAMS(71, 1), + PLL_PARAMS(82, 1), + { /* sentinel */ } +}; + static struct clk_regmap meson8b_hdmi_pll_dco = { .data = &(struct meson_clk_pll_data){ .en = { @@ -150,6 +172,7 @@ static struct clk_regmap meson8b_hdmi_pll_dco = { .shift = 29, .width = 1, }, + .table = hdmi_pll_params_table, }, .hw.init = &(struct clk_init_data){ /* sometimes also called "HPLL" or "HPLL PLL" */ From patchwork Mon Jan 4 13:28:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Blumenstingl X-Patchwork-Id: 11996759 X-Patchwork-Delegate: neil.armstrong@linaro.org Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6328EC433E0 for ; Mon, 4 Jan 2021 13:29:44 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 26B87207AE for ; Mon, 4 Jan 2021 13:29:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 26B87207AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=bV9lYB1gOlo9841c76Y6NPbIX67tNdGsWW1O932nsE0=; b=wL27xy2oVCPzH433pNDbnEBrL aWIea8YLdpiO8+YlCkPZUCkOm95HfbNVShOgvdmCXylr7TDSceSO9qqnOeLhorhRQ3I9wLnFmVwGu 9Ssz+4YKrFS50NNjzQyiOESx8KQpwrC1328D8PIxi9QLyDF2uoY8ASlaiyLt48qd2readuAFo0YQH x75fzcv0aMy9cMFd9+mdG8oyvyogHL6dSTQ4/07iggaLjSmBIO/j/jexHWRJk4IH6iu4mOLkr8XMa Zr30HrZfw7DS8S5qufd0nXNYsHL/+/i7Sr76IpwXZNzLxShI5cQkyBNjs9o0GEFOFWi3UnG2PfYAq JaZS747Ug==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvV-0007DN-HB; Mon, 04 Jan 2021 13:29:37 +0000 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kwPvC-00074S-1s; Mon, 04 Jan 2021 13:29:22 +0000 Received: by mail-wr1-x431.google.com with SMTP id c5so32158022wrp.6; Mon, 04 Jan 2021 05:29:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=W3+FsMu1lbDQIio4q7FHNE16t5hT0RLiFsiQpXFdTmY=; b=sqHg7vBu1o3BP2QxT91WFHqL2g78BS1u6AhfTN1DAkUWS/9BRZESyjjDNMxwDMnVyf 6h6WgnhWuLJysE321kCGfYiOs8lrr21ar0YGTec0NMno+kiNkA/+Pd3gXb6tBEmqtApu n/CuH3vijrjaJTYWLSdTyZrIVYyiQr9u8ev/MQJDalyMxaUhwom/w45rR8ZmXWKmyh/r Q7t4lJiexvj7GMPUg5mJjgwSD+E7nbahizVC/ypNXgl+F31hseHKX5vJsrCehEY+7pr+ TS4fHpgEe5UOhq1/S38ee4GQsvTRIy+RouigMdbidLUKavr640bEEgsyeth/inzAUupV 3zWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=W3+FsMu1lbDQIio4q7FHNE16t5hT0RLiFsiQpXFdTmY=; b=DaawXFj83MTEUJmqV6Oy0fpBI7iQxKuKEqnMiTHN0JLEI62QhSuefNcLi5aGaanzCT EB//hchPMQgk4BArMyXDfrtQiGRYyQa4/SSX3vMR18UYcnq5FbceYItDShKurGubzHTK NsypdY1cVl9XitKO3ciEcJJJyIwpHGq2LyA3fFyqQ67JG5/FmnXk1H6Mze1CFvgHLtcT Uu0vy+0pw/hgLpuZMTysBi7LQ+VM5VDBSzj8uNrnj2v8SZfciiHRhUsjLmx3jBGrqWtZ fghEZc5jXdmE4WY0g3hvSOxeW4r+y9eJ3hc8kW+ljLT12iy4XJehMovFvlOnKDWgOgql EL6w== X-Gm-Message-State: AOAM53061MgYAh0wtC19fV+l6g7JQdJInDUG3PGAh2PnpDcpNp5e77tC /iBF0jB9QQGplC/Y/S7VEk0= X-Google-Smtp-Source: ABdhPJwr2OufeuaiYtWIqCrZpai6io4a/I1J3LEe+4dG378mGHo/Cv0TSdnz6GxnNT8ny39ULqVJuQ== X-Received: by 2002:a5d:42d0:: with SMTP id t16mr80111924wrr.230.1609766956653; Mon, 04 Jan 2021 05:29:16 -0800 (PST) Received: from localhost.localdomain (p200300f13724fd00428d5cfffeb99db8.dip0.t-ipconnect.de. [2003:f1:3724:fd00:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id c4sm99916521wrw.72.2021.01.04.05.29.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Jan 2021 05:29:16 -0800 (PST) From: Martin Blumenstingl To: jbrunet@baylibre.com, linux-amlogic@lists.infradead.org Subject: [PATCH 5/5] clk: meson: meson8b: add the vid_pll_lvds_en gate clock Date: Mon, 4 Jan 2021 14:28:06 +0100 Message-Id: <20210104132806.720558-6-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> References: <20210104132806.720558-1-martin.blumenstingl@googlemail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210104_082918_155415_D1F7F8AD X-CRM114-Status: GOOD ( 15.87 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sboyd@kernel.org, mturquette@baylibre.com, linux-kernel@vger.kernel.org, Martin Blumenstingl , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org HHI_VID_DIVIDER_CNTL[11] must be enabled for the video clock tree to work. This bit is described as "LVDS_CLK_EN". It is not 100% clear where this bit has to be placed in the hierarchy. But since the "LVDS_OUT" of the HDMI PLL uses it's own set of registers it's more likely that this "LVDS_CLK_EN" bit actually enables the input of the "hdmi_pll_lvds_out" clock to the "vid_pll_in_sel" tree. Add a gate definition for this bit (which will not be exported) so that the kernel can manage all required bits to enable and disable the video clocks. Signed-off-by: Martin Blumenstingl --- drivers/clk/meson/meson8b.c | 23 ++++++++++++++++++++++- drivers/clk/meson/meson8b.h | 3 ++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/drivers/clk/meson/meson8b.c b/drivers/clk/meson/meson8b.c index 8061c11389a9..450579779de0 100644 --- a/drivers/clk/meson/meson8b.c +++ b/drivers/clk/meson/meson8b.c @@ -1068,6 +1068,23 @@ static struct clk_regmap meson8b_l2_dram_clk_gate = { }, }; +/* also called LVDS_CLK_EN */ +static struct clk_regmap meson8b_vid_pll_lvds_en = { + .data = &(struct clk_regmap_gate_data){ + .offset = HHI_VID_DIVIDER_CNTL, + .bit_idx = 11, + }, + .hw.init = &(struct clk_init_data){ + .name = "vid_pll_lvds_en", + .ops = &clk_regmap_gate_ro_ops, + .parent_hws = (const struct clk_hw *[]) { + &meson8b_hdmi_pll_lvds_out.hw + }, + .num_parents = 1, + .flags = CLK_SET_RATE_PARENT, + }, +}; + static struct clk_regmap meson8b_vid_pll_in_sel = { .data = &(struct clk_regmap_mux_data){ .offset = HHI_VID_DIVIDER_CNTL, @@ -1084,7 +1101,7 @@ static struct clk_regmap meson8b_vid_pll_in_sel = { * Meson8m2: vid2_pll */ .parent_hws = (const struct clk_hw *[]) { - &meson8b_hdmi_pll_lvds_out.hw + &meson8b_vid_pll_lvds_en.hw }, .num_parents = 1, .flags = CLK_SET_RATE_PARENT, @@ -2954,6 +2971,7 @@ static struct clk_hw_onecell_data meson8_hw_onecell_data = { [CLKID_CTS_MCLK_I958_DIV] = &meson8b_cts_mclk_i958_div.hw, [CLKID_CTS_MCLK_I958] = &meson8b_cts_mclk_i958.hw, [CLKID_CTS_I958] = &meson8b_cts_i958.hw, + [CLKID_VID_PLL_LVDS_EN] = &meson8b_vid_pll_lvds_en.hw, [CLK_NR_CLKS] = NULL, }, .num = CLK_NR_CLKS, @@ -3171,6 +3189,7 @@ static struct clk_hw_onecell_data meson8b_hw_onecell_data = { [CLKID_CTS_MCLK_I958_DIV] = &meson8b_cts_mclk_i958_div.hw, [CLKID_CTS_MCLK_I958] = &meson8b_cts_mclk_i958.hw, [CLKID_CTS_I958] = &meson8b_cts_i958.hw, + [CLKID_VID_PLL_LVDS_EN] = &meson8b_vid_pll_lvds_en.hw, [CLK_NR_CLKS] = NULL, }, .num = CLK_NR_CLKS, @@ -3390,6 +3409,7 @@ static struct clk_hw_onecell_data meson8m2_hw_onecell_data = { [CLKID_CTS_MCLK_I958_DIV] = &meson8b_cts_mclk_i958_div.hw, [CLKID_CTS_MCLK_I958] = &meson8b_cts_mclk_i958.hw, [CLKID_CTS_I958] = &meson8b_cts_i958.hw, + [CLKID_VID_PLL_LVDS_EN] = &meson8b_vid_pll_lvds_en.hw, [CLK_NR_CLKS] = NULL, }, .num = CLK_NR_CLKS, @@ -3588,6 +3608,7 @@ static struct clk_regmap *const meson8b_clk_regmaps[] = { &meson8b_cts_mclk_i958_div, &meson8b_cts_mclk_i958, &meson8b_cts_i958, + &meson8b_vid_pll_lvds_en, }; static const struct meson8b_clk_reset_line { diff --git a/drivers/clk/meson/meson8b.h b/drivers/clk/meson/meson8b.h index b1a5074cf148..954d97cf6c5a 100644 --- a/drivers/clk/meson/meson8b.h +++ b/drivers/clk/meson/meson8b.h @@ -182,8 +182,9 @@ #define CLKID_CTS_MCLK_I958_DIV 211 #define CLKID_VCLK_EN 214 #define CLKID_VCLK2_EN 215 +#define CLKID_VID_PLL_LVDS_EN 216 -#define CLK_NR_CLKS 216 +#define CLK_NR_CLKS 217 /* * include the CLKID and RESETID that have