| Message ID | 20241227165719.3902388-1-dario.binacchi@amarulasolutions.com |
|---|---|
| Headers | show
Return-Path:
<linux-amarula+bncBCQ4XFG47UFRB5NYXO5QMGQEE6MKCYQ@amarulasolutions.com>
X-Original-To: linux-amarula@patchwork.amarulasolutions.com
Delivered-To: linux-amarula@patchwork.amarulasolutions.com
Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com
[209.85.208.72])
by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 28D0943434
for <linux-amarula@patchwork.amarulasolutions.com>;
Fri, 27 Dec 2024 17:57:26 +0100 (CET)
Received: by mail-ed1-f72.google.com with SMTP id
4fb4d7f45d1cf-5d3d9d6293fsf6660892a12.0
for <linux-amarula@patchwork.amarulasolutions.com>;
Fri, 27 Dec 2024 08:57:26 -0800 (PST)
ARC-Seal: i=2; a=rsa-sha256; t=1735318646; cv=pass;
d=google.com; s=arc-20240605;
b=b4sh+YXtpVWsFPPQ9assT+dMZqR073Y34V7nJ9uRIshyq3xX0v95ovtzPKcUe69Ihu
gWVDjN6S1PBYR1raYvnfRd42iy8hOrAws+dwxgHCYGsuZeMOGOeKIEoeteS7eHlNaBN9
gAscpFsaHPKVqjF2DQ1G6nXctpyLo6zzDRPHtaImz38bspwqaxvlmrdZM76mHF1j2dmR
Hfh9Ruc83WICvFC2rO4sT7cJGv59aY5b/T0H0b23Ny00v9X17p5fTfaIflFqT0qAeros
IQTktg/sRTYoZaPH8Y856TzZVwYsrEjVyFCzacq78XAoXVR+jgqQulvRYZx+OJL6djJ2
D7Ig==
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:message-id:date:subject:cc:to
:from:dkim-signature;
bh=O48BflE8c8GUo9m7I2bv8g8xY/n/QV8dkTbstR/SG9Q=;
fh=gouP0gCF0RRPxMVN/rRc6qjkRES82e23nzrcMz9+mVo=;
b=LjCZgrgRK+TWCuipNRLhnBKX+/2uqhColVVGphH4A6EtRO+q0SMqTSklYksrPFg+MY
81OQViC78x/jAer9om2L4plDS2xjtpGB/5sSYXG9Rr417lBAJwEVu2lfzPIx1gbfE7kv
3qoxY2cI3n4V6VqpRbfkhv1yFBc5zVQnmc+CXp1S7kIKK/ObFVzd7w48pi8uEIL3PF6a
5bzIGAGSjJnQAZYfLvvIK2teCzSlPKS1EoPgZx7GlSPkHPKHVteu91CyF9HfRf2TRbIB
YORN8sy49PpPuyPTnTBvdq+Vts2HKfeiFGfa9rtzH6PHtO/XQQSbFiw6LvULO4VvbSX4
MN2g==;
darn=patchwork.amarulasolutions.com
ARC-Authentication-Results: i=2; mx.google.com;
dkim=pass header.i=@amarulasolutions.com header.s=google
header.b=CBP9bSZj;
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=1735318646; x=1735923446;
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:message-id:date:subject:cc:to:from
:from:to:cc:subject:date:message-id:reply-to;
bh=O48BflE8c8GUo9m7I2bv8g8xY/n/QV8dkTbstR/SG9Q=;
b=l/09bVZh+iJvwMRmOLktTjeYWLu5YjAfSPn0bRe40gHUr+nNqpZ7Pzk4kgZTdKkG8C
pSPRbosuUcjI2HPjVadHc3P7F9WYH2zRB8idlLu+em/w7G8tlCFuLgtwPm+Bs0U/FKhq
690/Q7WL0Z0UaTabKvdEX2tFQ9LBGrZqQzoZI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1735318646; x=1735923446;
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
:message-id:date:subject:cc:to:from:x-beenthere:x-gm-message-state
:from:to:cc:subject:date:message-id:reply-to;
bh=O48BflE8c8GUo9m7I2bv8g8xY/n/QV8dkTbstR/SG9Q=;
b=fWD7IgpXffil89JXffAqbfnRWOvt1UFHYekO+opH39TJFd722dldPr2OVVYNHH1R3y
CeDzXPl5EvTaD6U0KbCIHIK6KtePf0nje/2MmKdP+dJqn44AySxbCFOwjCWcjrNylPby
JSduGkPoqD/Nq0Yfk0UKisnbYAUljnYQ2EhcxgaefZLWZiBadv9x0hU1Im1Lpo4xJVET
6RBE689lTsZ7TLjcGmupchTd7c/4qw9w+98U9rvgBQ9xi5eC+P7x2Vd9k5yZdiOv31Df
uTze+htLjCQ+WKaFHyysRAbmcDO86ecvIodzj2a5ocD9+YAOtLX2NaL6+fgdsz36bny/
oUvA==
X-Forwarded-Encrypted: i=2;
AJvYcCVsIHxH2us10Lzyf8YRFmY6gfUwhoV5uAQ9fDND//bHAF1hjOjtbLpinov3RbLjqdqeQVkttbH/5NcZywob@patchwork.amarulasolutions.com
X-Gm-Message-State: AOJu0YyEY1Rxg4621u/Q/jc+sjrn449mD/nHBSbXmCKfqF5n+9NVfmpL
D+P36L8HNFYESghMIA1ryJ3urWFUEcVjUHnlJDVzjRAZ3dGRUf1X0IRkTkDeDXw7Yg==
X-Google-Smtp-Source:
AGHT+IFfA2LRdL1bfwdVZKIrxeRxlatHHQ0qByyM00pCvwMKDJ/Unuww3iPGF7qaL9R8h3f6AWB/iA==
X-Received: by 2002:a05:6402:2b97:b0:5d0:a80d:bce9 with SMTP id
4fb4d7f45d1cf-5d81ddec79bmr24021120a12.20.1735318645422;
Fri, 27 Dec 2024 08:57:25 -0800 (PST)
X-BeenThere: linux-amarula@amarulasolutions.com
Received: by 2002:a50:a45a:0:b0:5d3:bf89:291f with SMTP id
4fb4d7f45d1cf-5d8b136ea53ls275425a12.0.-pod-prod-07-eu;
Fri, 27 Dec 2024 08:57:24 -0800 (PST)
X-Received: by 2002:a17:906:6a1b:b0:aa6:8dcb:3657 with SMTP id
a640c23a62f3a-aac335076e8mr3228547766b.36.1735318643504;
Fri, 27 Dec 2024 08:57:23 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1735318643; cv=none;
d=google.com; s=arc-20240605;
b=UlPIlc8j3xhe1N9XKYj06FsW4xrIr6RPXurMEbMjuB9Y48CXOBfqCg7uU5azqk1V87
sWPMwstKgYkE1AY8C2b5IiwM6dTrcnmG3GZA7vxH+cERJ9gk1/jNT8a9K4usp280GzhY
Zm2FFwDDPNakjtQIg51K/0lmfGxF+kk5KIJGMpeMVv25/JrMvxqh024NGrAyPtu5KlC0
0L3TrHXQ4fOixBq/6G7iadSoux6QAG7LDMBlLlT8+7pmlPL+envU72EWKLjP9R0zlDf6
ffwg9apE7g7PlF/kg9F7VmR2H5ZkRIa9HtBcH470oH8nWy3/ocPtfK4D9CmWXbzaB1TX
es/g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
s=arc-20240605;
h=content-transfer-encoding:mime-version:message-id:date:subject:cc
:to:from:dkim-signature;
bh=npfMp13q1tQsxXMRukSmRqEG6KBpV1Zq2CsR4oTVCfM=;
fh=2TL5gdVAJyX/yhk5/AxHrADrCeVz/BiuKBD/sWsuHYo=;
b=CtdoklH6kCgtBJiI7q4GphrWdpO1AoxN1SHnpj4jjprfHF/N3QvY3QNnrMSEOS4G12
dF4psQR13fVqzbKCxAZ16/haxZ78rTZrNXJui7rI9+ZnBXCV3CCr5FwqfX4KlvcvfCSf
Goo8dWTsNZPJJpOH7zhDKMv19fNoudpChthgNp4IrbHjJ9CiF9EtEgwO+6DxyJWXC2eh
ygzD31iTYq8THAlVKBJgqAre+c+PJt+mkYTH6aOh2jsJMya2NZMHq5KLanVGG9wD3eMG
bGHh6FC0qAJycMBLX1zgPQlXSg6YhHWDhU6Csxq732PTjZul2MJsTIGmDQsr7YtsoDJf
s+EQ==;
dara=google.com
ARC-Authentication-Results: i=1; mx.google.com;
dkim=pass header.i=@amarulasolutions.com header.s=google
header.b=CBP9bSZj;
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-aaf00b5dbd6sor193694166b.4.2024.12.27.08.57.23
for <linux-amarula@amarulasolutions.com>
(Google Transport Security);
Fri, 27 Dec 2024 08:57:23 -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: ASbGncuiBEO5yCE9DczxgADkmWgfznyLp1XfSurQJ4wRs2nYtQ2otaI08Jm0FMClQsC
3DpGPapQMO6iP3KZp6wqkREQzuAeTy2JvZX7q2/52X54rBTL4+yMELhojvIhoLZXLJ6AhdDgnIy
TkYuVTmcCqtiqmqkD/fFet/L581sEgbgGjGbL75tQV2+0a9BHYJ3iwTm8/P90638+vdh3qIX7Xn
+2tMpjC/wsbU0NBBZUEoNI/ztfpZZ8TKDgLefBn0tDfFk1Jdf0Py4BorOh2w0YjqqkqN/Uo1ykH
bApTnt2qmgn+5SYtECSslw==
X-Received: by 2002:a17:906:c145:b0:aa6:832b:8d76 with SMTP id
a640c23a62f3a-aac2d447677mr2553602566b.12.1735318643006;
Fri, 27 Dec 2024 08:57:23 -0800 (PST)
Received: from dario-ThinkPad-T14s-Gen-2i.. ([2.196.43.175])
by smtp.gmail.com with ESMTPSA id
a640c23a62f3a-aac0f0159f1sm1130097266b.154.2024.12.27.08.57.21
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Fri, 27 Dec 2024 08:57:22 -0800 (PST)
From: Dario Binacchi <dario.binacchi@amarulasolutions.com>
To: linux-kernel@vger.kernel.org
Cc: linux-amarula@amarulasolutions.com,
Dario Binacchi <dario.binacchi@amarulasolutions.com>,
Abel Vesa <abelvesa@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Fabio Estevam <festevam@gmail.com>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Michael Turquette <mturquette@baylibre.com>,
Peng Fan <peng.fan@nxp.com>,
Pengutronix Kernel Team <kernel@pengutronix.de>,
Rob Herring <robh@kernel.org>,
Sascha Hauer <s.hauer@pengutronix.de>,
Shawn Guo <shawnguo@kernel.org>,
Stephen Boyd <sboyd@kernel.org>,
devicetree@vger.kernel.org,
imx@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-clk@vger.kernel.org
Subject: [PATCH v7 00/23] Support spread spectrum clocking for i.MX8N PLLs
Date: Fri, 27 Dec 2024 17:56:03 +0100
Message-ID: <20241227165719.3902388-1-dario.binacchi@amarulasolutions.com>
X-Mailer: git-send-email 2.43.0
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=CBP9bSZj;
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: <linux-amarula.amarulasolutions.com>
X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com
X-Google-Group-Id: 476853432473
List-Post:
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/post>,
<mailto:linux-amarula@amarulasolutions.com>
List-Help:
<https://support.google.com/a/amarulasolutions.com/bin/topic.py?topic=25838>,
<mailto:linux-amarula+help@amarulasolutions.com>
List-Archive:
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/>
List-Unsubscribe:
<mailto:googlegroups-manage+476853432473+unsubscribe@googlegroups.com>,
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/subscribe>
|
| Series |
|
| Related |
show
|
The series adds support for spread spectrum clocking for i.MX8MN PLLs (audio, video and DRAM). It has been tested for the video PLL on a board using i.MX8MN. The patches added in version 4, such as the dt-bindings and the driver for anatop, were inspired by the extensive email exchange from version 3: https://lore.kernel.org/imx/20241106090549.3684963-1-dario.binacchi@amarulasolutions.com/ The series added spectrum spread support for the imx8mn platform only, but in case it was merged, confirming that the directives and suggestions made by the maintainers were correctly understood and implemented, I will extend this support to the imx8mm and imx8mp platforms as well. Changes in v7: - Add and manage fsl,anatop property as phandle to the anatop node with the new patches: - 10/23 dt-bindings: clock: imx8m-clock: add phandle to the anatop - 11/23 arm64: dts: imx8mm: add phandle to anatop within CCM - 12/23 arm64: dts: imx8mn: add phandle to anatop within CCM - 13/23 arm64: dts: imx8mp: add phandle to anatop within CCM - 14/23 arm64: dts: imx8mq: add phandle to anatop within CCM Changes in v6: - Merge patches: 10/20 dt-bindings: clock: imx8mm: add binding definitions for anatop 11/20 dt-bindings: clock: imx8mn: add binding definitions for anatop 12/20 dt-bindings: clock: imx8mp: add binding definitions for anatop to 05/20 dt-bindings: clock: imx8m-anatop: define clocks/clock-names now renamed 05/18 dt-bindings: clock: imx8m-anatop: add oscillators and PLLs - Split the patch 15/20 dt-bindings-clock-imx8m-clock-support-spread-spectru.patch into 12/18 dt-bindings: clock: imx8m-clock: add PLLs 16/18 dt-bindings: clock: imx8m-clock: support spread spectrum clocking Changes in v5: - Fix compilation errors. - Separate driver code from dt-bindings Changes in v4: - Add dt-bindings for anatop - Add anatop driver - Drop fsl,ssc-clocks from spread spectrum dt-bindings Changes in v3: - Patches 1/8 has been added in version 3. The dt-bindings have been moved from fsl,imx8m-anatop.yaml to imx8m-clock.yaml. The anatop device (fsl,imx8m-anatop.yaml) is indeed more or less a syscon, so it represents a memory area accessible by ccm (imx8m-clock.yaml) to setup the PLLs. - Patches {3,5}/8 have been added in version 3. - Patches {4,6,8}/8 use ccm device node instead of the anatop one. Changes in v2: - Add "allOf:" and place it after "required:" block, like in the example schema. - Move the properties definition to the top-level. - Drop unit types as requested by the "make dt_binding_check" command. Dario Binacchi (23): dt-bindings: clock: imx8mm: add VIDEO_PLL clocks clk: imx8mm: rename video_pll1 to video_pll dt-bindings: clock: imx8mp: add VIDEO_PLL clocks clk: imx8mp: rename video_pll1 to video_pll dt-bindings: clock: imx8m-anatop: add oscillators and PLLs arm64: dts: imx8mm: add anatop clocks arm64: dts: imx8mn: add anatop clocks arm64: dts: imx8mp: add anatop clocks arm64: dts: imx8mq: add anatop clocks dt-bindings: clock: imx8m-clock: add phandle to the anatop arm64: dts: imx8mm: add phandle to anatop within CCM arm64: dts: imx8mn: add phandle to anatop within CCM arm64: dts: imx8mp: add phandle to anatop within CCM arm64: dts: imx8mq: add phandle to anatop within CCM clk: imx: add hw API imx_anatop_get_clk_hw clk: imx: add support for i.MX8MN anatop clock driver dt-bindings: clock: imx8m-clock: add PLLs arm64: dts: imx8mm: add PLLs to clock controller module (CCM) arm64: dts: imx8mn: add PLLs to clock controller module (CCM) arm64: dts: imx8mp: add PLLs to clock controller module (CCM) dt-bindings: clock: imx8m-clock: support spread spectrum clocking clk: imx: pll14xx: support spread spectrum clock generation clk: imx8mn: support spread spectrum clock generation .../bindings/clock/fsl,imx8m-anatop.yaml | 53 +++- .../bindings/clock/imx8m-clock.yaml | 84 +++++- arch/arm64/boot/dts/freescale/imx8mm.dtsi | 12 +- arch/arm64/boot/dts/freescale/imx8mn.dtsi | 12 +- arch/arm64/boot/dts/freescale/imx8mp.dtsi | 12 +- arch/arm64/boot/dts/freescale/imx8mq.dtsi | 3 + drivers/clk/imx/Makefile | 2 +- drivers/clk/imx/clk-imx8mm.c | 102 +++---- drivers/clk/imx/clk-imx8mn-anatop.c | 283 ++++++++++++++++++ drivers/clk/imx/clk-imx8mn.c | 199 ++++++------ drivers/clk/imx/clk-imx8mp.c | 118 ++++---- drivers/clk/imx/clk-pll14xx.c | 134 +++++++++ drivers/clk/imx/clk.c | 15 + drivers/clk/imx/clk.h | 18 ++ include/dt-bindings/clock/imx8mm-clock.h | 76 ++++- include/dt-bindings/clock/imx8mn-clock.h | 64 ++++ include/dt-bindings/clock/imx8mp-clock.h | 80 ++++- 17 files changed, 1032 insertions(+), 235 deletions(-) create mode 100644 drivers/clk/imx/clk-imx8mn-anatop.c