From patchwork Sat Jan 18 12:40:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 3828 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id C545A3F360 for ; Sat, 18 Jan 2025 13:41:28 +0100 (CET) Received: by mail-ej1-f72.google.com with SMTP id a640c23a62f3a-ab341e14e27sf371558366b.3 for ; Sat, 18 Jan 2025 04:41:28 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737204088; cv=pass; d=google.com; s=arc-20240605; b=jz+hvZTJMK2Im8O+ZS4SrH+72QnlhYQXfHvgGRMmUeYRvdfFguPSK1VptP1EEJpEJX YVSpv80sstH8elfjoYDltM0arZMftFh0Q90hvuZv8v1IhlfmR/89nOiA3p3wzI2HPMvh 3BsK+1HbHS7mhQTLJUwjK650IzydpsEtCRaESQJVyKXo1xE2oJSpkRY4mk17bVB4BSuG XBAzDi+/G+4N+28sq/rHWhdckWIaQZLpmg3/MfJOThrmSzpJpRLbE/2RmsLuIGzxscEG tjnWeAXPX+0ZYd3rI1zSQ6q7XMcdEhgX99DE0ow4R5auZZm+UAE9bBHqk/ps9j1NxYLw wnHA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=41NRtmWqWBxu/v8jPGfenl42rIZro8WvglIO3K8tQuI=; fh=KcMIDQGatLyMw6oweV6C5CmYZqvzV+i5VLMAa8niNxY=; b=PVvBNFJanpJuEBK4C4ts1SwffoLTQRZWs34f4Yo3ssIGKI0+pDtPf9TviGh1eEgnL2 Pr+SCd9DTU0c7fzdVihVHnERbCAeE+UPMKnAB1XzazjKuETruHaxeZIXxbBijEqxzaCh a0DGDveCG1b1AGnBihm188fOICuyAsFfTzcIqBNdhQmKxwh1X1EA94TgDxLemvn8s5t+ vN2KGhaPDsnbcrlW7tY2yqa2InSnp08EkIeXAh9dEMdgfGtpcHk9tbkXr5fJ27UShJtC N7yd5TqAQOrDJWnDQFrRJyLKNi4es7tTXTXV11SVU3M/H4B+uCXdSpE0kfbf7x3/U6JG 9JKQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mrZS2aPN; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1737204088; x=1737808888; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=41NRtmWqWBxu/v8jPGfenl42rIZro8WvglIO3K8tQuI=; b=FBVLSE8PKQ2BHsStN1Cf0r0JIbqNvDQZAwsd0t+pYvkjCn5f6tnpxcqp7A3rlEq+zP VRin5G8hCiToE5tL6euCy89+4Ye5mvtBuBWONhFZxCKMRcLriBKqKzGgrZnAbc9y/Hss riwRGy+67H/rqWDjH9Lho3jpNqm9m1gKhKc7M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737204088; x=1737808888; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=41NRtmWqWBxu/v8jPGfenl42rIZro8WvglIO3K8tQuI=; b=LvFtuYhY1fgPxF0C+T0ktLcVWbaz1v1w1ObaAVFJ1832SUliUDLln9ycLVFoGxtbAB CCcKQlUDld3TamPPjKTVSmsbCG9rPrXBfUmfaJgpL/uMiYYCtIqC6uKP1ADCkWxrCLjF S/yjjqInVjTLXxMp0E1+TjhXq2m39kEtvaKkHaZPBpJm/sPdGvRCbl+5WfhJ654dlLEx KFKyW+9QTJBW9RNT5wYtCGRH9/pR09uw4UJJYFH0hyJxeAfqzLqLczhwCJYayHe5QMPG brWPLYJ0PgAZMnNwz5iU1Fr+tm9W8Pwf8f265yXlcLHs9r/y2kfku9m8gny+LX39JVKF 0ylw== X-Forwarded-Encrypted: i=2; AJvYcCXqcHL7VF/cqeYO1xhn4jieQIHBhAM8uz+X+EDE8s8iWHqFcpFXBJbuFS5LVIfkySV/b/mG+VaOqRGY5MQe@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzjEHqS3N8HXnEtrCuno7emc8FGzFn4gRNommpHlpbNXwMTakuQ OiscpqStjaZhbiaLU3NZ+ikg7ko7OQXUjNDaHY9BbtPI5yCBN7YDG4hFvweSjLQNaQ== X-Google-Smtp-Source: AGHT+IF/7qr3+TBeOeQlg+L8NTrqqM64LbFnJ0O/RtGE2w3TdSArk3PLtPiP4FF0TgYIlxWmOP8ypQ== X-Received: by 2002:a05:6402:5188:b0:5db:67a7:e74e with SMTP id 4fb4d7f45d1cf-5db7d2f9de2mr6204855a12.13.1737204088438; Sat, 18 Jan 2025 04:41:28 -0800 (PST) X-BeenThere: linux-amarula@amarulasolutions.com Received: by 2002:a50:8a91:0:b0:5d3:e99c:a4c9 with SMTP id 4fb4d7f45d1cf-5db8f4f3c7als20987a12.1.-pod-prod-06-eu; Sat, 18 Jan 2025 04:41:27 -0800 (PST) X-Received: by 2002:a17:907:9408:b0:aa6:a87e:f2e1 with SMTP id a640c23a62f3a-ab38b4b96d0mr578297766b.56.1737204086620; Sat, 18 Jan 2025 04:41:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737204086; cv=none; d=google.com; s=arc-20240605; b=ZRegxv5j2CP0XUw6le/3nQOpXQ7HyL8+DmRiTdNju1uxEq521QzadVxTZoCBRRWUTT /B2Hd3ewlXFT37mORabJbWfE8d0Qz8zkOetvOmfMr6XqyIAxZiZss0HaIB4Di9WzwSNB zuTQFwXCCOX1nb/miZ7fg5v3UEDdHIZeNFp2PjKDM9A1XgNY6bugv+5sUbCahSNI9Mpp hXKwbLOwiNceNIY4RW5glr8YSD0qBvLWDfjMDZXOG5s3mSlzYL0icev7i/mEALP/FpBs VnphKrdwqsrOEYTf60wwnuaxhFa8oTSUCSld2EskWiEbjN5IpkCv/xmjE6lSX0oX9Zrp nhTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=6vDdCPdsn7drrDVs6gkBxF2bAHBnCBAUvlTFeTtU0PY=; fh=u/u80m6tBSaxW7VWG5AQatIbYzkIAnRGhZp/RTASK5o=; b=FxpcCPosHEBZshUXbktHV/V4Tde6YbJMDEzUUSS0OeeKb4ngXDQzGbDdSR0S6V5tR8 NoKcBY5nHM6dXNTO2UtiV/xQMzSu8jWJsa+WZMk94tq6RZQlyJCOvr6nFCX77J1VsDrW HaH4vgj9d53o0eogG1IPpx2XfXDCBl3/b662bCsEVF8jGjGRKHwii58S1LW3AagVPapK pY0OLfjnF4kYqlV8Ek7BdxtTi+Zmqwtv6noERNcM99268TDOljkqoxlQ5PlfzqpIlhyQ DywdSOVDf9ufqCjkKFwc33JhKOF60qqIhlxEOh9eXuqcpcohoW3Fh4XW7r/wbWnUcoOW wizg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mrZS2aPN; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id a640c23a62f3a-ab384d1e95bsor218172066b.5.2025.01.18.04.41.26 for (Google Transport Security); Sat, 18 Jan 2025 04:41:26 -0800 (PST) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: ASbGncuk1rk49NisAyt16FTGmGu3Vc6Fm2Pyyf4mSK13G7L1hxnlW/rnKk1H4+3RyeP qaLBUpsE5am7Y31f6geeUg5rfg5mL8FiUbxP2uJqavQuldBOFYtKwsCldEPx2DgwlnhBGfO5ExB Y+A/xy35cs+7lziVBaSh6+cO/qq1qHh0OYVz0OlMatwqqfIHhbuNaCGVJiNCJBiAVALaV8rWQ3j 9REE+GxSpkSLEMoB8mFgE042YtR/e6BDiDlCWYBZD2AphnRXWCwMOk0+0qXlWo3xwLbf76HeVzN I9y9Ppdj2x5brgodKIYCSiUDXIoylXtnb/vDgzOFdyu1UehoQSs5zLQKn8wxb5GQAlHHpWLsuR1 sGt0APzgM1or9mnMiSpDRlRljJl4OpBm/EAJY X-Received: by 2002:a17:907:3da0:b0:aab:d8df:9bbb with SMTP id a640c23a62f3a-ab38b42d8e0mr535640266b.41.1737204086146; Sat, 18 Jan 2025 04:41:26 -0800 (PST) Received: from dario-ThinkPad-T14s-Gen-2i.homenet.telecomitalia.it (host-79-30-28-209.retail.telecomitalia.it. [79.30.28.209]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ab384fcd73dsm332562366b.178.2025.01.18.04.41.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 18 Jan 2025 04:41:25 -0800 (PST) From: Dario Binacchi To: linux-kernel@vger.kernel.org Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Abel Vesa , Fabio Estevam , Michael Turquette , Peng Fan , Pengutronix Kernel Team , Sascha Hauer , Shawn Guo , Stephen Boyd , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org Subject: [PATCH v9 21/23] clk: imx8mp: support spread spectrum clock generation Date: Sat, 18 Jan 2025 13:40:04 +0100 Message-ID: <20250118124044.157308-22-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250118124044.157308-1-dario.binacchi@amarulasolutions.com> References: <20250118124044.157308-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mrZS2aPN; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=pass header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Add support for spread spectrum clock generation for the audio, video, and DRAM PLLs. Signed-off-by: Dario Binacchi --- (no changes since v1) drivers/clk/imx/clk-imx8mp.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/drivers/clk/imx/clk-imx8mp.c b/drivers/clk/imx/clk-imx8mp.c index 012cd3b52e3f..560f51d9232d 100644 --- a/drivers/clk/imx/clk-imx8mp.c +++ b/drivers/clk/imx/clk-imx8mp.c @@ -393,6 +393,7 @@ static int imx8mp_clocks_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device_node *np = dev->of_node, *anp; void __iomem *base; + struct imx_pll14xx_ssc ssc_conf; int err; base = devm_platform_ioremap_resource(pdev, 0); @@ -432,9 +433,21 @@ static int imx8mp_clocks_probe(struct platform_device *pdev) hws[IMX8MP_SYS_PLL3_REF_SEL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_SYS_PLL3_REF_SEL); hws[IMX8MP_AUDIO_PLL1] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_AUDIO_PLL1); + if (!imx_clk_pll14xx_ssc_parse_dt(np, "audio_pll1", &ssc_conf)) + imx_clk_pll14xx_enable_ssc(hws[IMX8MP_AUDIO_PLL1], &ssc_conf); + hws[IMX8MP_AUDIO_PLL2] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_AUDIO_PLL2); + if (!imx_clk_pll14xx_ssc_parse_dt(np, "audio_pll2", &ssc_conf)) + imx_clk_pll14xx_enable_ssc(hws[IMX8MP_AUDIO_PLL2], &ssc_conf); + hws[IMX8MP_VIDEO_PLL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_VIDEO_PLL); + if (!imx_clk_pll14xx_ssc_parse_dt(np, "video_pll", &ssc_conf)) + imx_clk_pll14xx_enable_ssc(hws[IMX8MP_VIDEO_PLL], &ssc_conf); + hws[IMX8MP_DRAM_PLL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_DRAM_PLL); + if (!imx_clk_pll14xx_ssc_parse_dt(np, "dram_pll", &ssc_conf)) + imx_clk_pll14xx_enable_ssc(hws[IMX8MP_DRAM_PLL], &ssc_conf); + hws[IMX8MP_GPU_PLL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_GPU_PLL); hws[IMX8MP_VPU_PLL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_VPU_PLL); hws[IMX8MP_ARM_PLL] = imx_anatop_get_clk_hw(anp, IMX8MP_ANATOP_ARM_PLL);