From: Icenowy Zheng <uwu@icenowy.me>
To: bmasney@redhat.com, "Michael Turquette" <mturquette@baylibre.com>,
"Stephen Boyd" <sboyd@kernel.org>,
"Sudeep Holla" <sudeep.holla@arm.com>,
"Cristian Marussi" <cristian.marussi@arm.com>,
"Chen Wang" <unicorn_wang@outlook.com>,
"Inochi Amaoto" <inochiama@gmail.com>,
"Nicolas Ferre" <nicolas.ferre@microchip.com>,
"Alexandre Belloni" <alexandre.belloni@bootlin.com>,
"Claudiu Beznea" <claudiu.beznea@tuxon.dev>,
"Paul Cercueil" <paul@crapouillou.net>,
"Keguang Zhang" <keguang.zhang@gmail.com>,
"Taichi Sugaya" <sugaya.taichi@socionext.com>,
"Takao Orito" <orito.takao@socionext.com>,
"Shawn Guo" <shawnguo@kernel.org>,
"Sascha Hauer" <s.hauer@pengutronix.de>,
"Pengutronix Kernel Team" <kernel@pengutronix.de>,
"Fabio Estevam" <festevam@gmail.com>,
"Jacky Huang" <ychuang3@nuvoton.com>,
"Shan-Chun Hung" <schung@nuvoton.com>,
"Vladimir Zapolskiy" <vz@mleia.com>,
"Piotr Wojtaszczyk" <piotr.wojtaszczyk@timesys.com>,
"Paul Walmsley" <paul.walmsley@sifive.com>,
"Samuel Holland" <samuel.holland@sifive.com>,
"Yixun Lan" <dlan@gentoo.org>,
"Steen Hegelund" <Steen.Hegelund@microchip.com>,
"Daniel Machon" <daniel.machon@microchip.com>,
UNGLinuxDriver@microchip.com, "Orson Zhai" <orsonzhai@gmail.com>,
"Baolin Wang" <baolin.wang@linux.alibaba.com>,
"Chunyan Zhang" <zhang.lyra@gmail.com>,
"Maxime Coquelin" <mcoquelin.stm32@gmail.com>,
"Alexandre Torgue" <alexandre.torgue@foss.st.com>,
"Michal Simek" <michal.simek@amd.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Andreas Färber" <afaerber@suse.de>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Sven Peter" <sven@kernel.org>, "Janne Grunau" <j@jannau.net>,
"Alyssa Rosenzweig" <alyssa@rosenzweig.io>,
"Neal Gompa" <neal@gompa.dev>,
"Eugeniy Paltsev" <Eugeniy.Paltsev@synopsys.com>,
"Ray Jui" <rjui@broadcom.com>,
"Scott Branden" <sbranden@broadcom.com>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>,
"Max Filippov" <jcmvbkbc@gmail.com>,
"Matthias Brugger" <matthias.bgg@gmail.com>,
"AngeloGioacchino Del Regno"
<angelogioacchino.delregno@collabora.com>,
"Daniel Palmer" <daniel@thingy.jp>,
"Romain Perier" <romain.perier@gmail.com>,
"Andrew Lunn" <andrew@lunn.ch>,
"Gregory Clement" <gregory.clement@bootlin.com>,
"Sebastian Hesselbarth" <sebastian.hesselbarth@gmail.com>,
"Bjorn Andersson" <andersson@kernel.org>,
"Geert Uytterhoeven" <geert+renesas@glider.be>,
"Heiko Stuebner" <heiko@sntech.de>,
"Andrea della Porta" <andrea.porta@suse.com>,
"Krzysztof Kozlowski" <krzk@kernel.org>,
"Sylwester Nawrocki" <s.nawrocki@samsung.com>,
"Chanwoo Choi" <cw00.choi@samsung.com>,
"Alim Akhtar" <alim.akhtar@samsung.com>,
"Qin Jian" <qinjian@cqplus1.com>,
"Viresh Kumar" <vireshk@kernel.org>,
"Ulf Hansson" <ulf.hansson@linaro.org>,
"Luca Ceresoli" <luca.ceresoli@bootlin.com>,
"Alex Helms" <alexander.helms.jy@renesas.com>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Liviu Dudau" <liviu.dudau@arm.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Nobuhiro Iwamatsu" <nobuhiro1.iwamatsu@toshiba.co.jp>
Cc: linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org,
arm-scmi@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
sophgo@lists.linux.dev, linux-mips@vger.kernel.org,
imx@lists.linux.dev, linux-riscv@lists.infradead.org,
spacemit@lists.linux.dev,
linux-stm32@st-md-mailman.stormreply.com,
patches@opensource.cirrus.com,
linux-actions@lists.infradead.org, asahi@lists.linux.dev,
linux-mediatek@lists.infradead.org,
linux-arm-msm@vger.kernel.org,
linux-renesas-soc@vger.kernel.org,
linux-rockchip@lists.infradead.org,
linux-samsung-soc@vger.kernel.org, soc@lists.linux.dev
Subject: Re: [PATCH 000/114] clk: convert drivers from deprecated round_rate() to determine_rate()
Date: Tue, 12 Aug 2025 21:39:45 +0800 [thread overview]
Message-ID: <a151ed7c1caac83e872cf6075c215fa55bd21f82.camel@icenowy.me> (raw)
In-Reply-To: <20250811-clk-for-stephen-round-rate-v1-0-b3bf97b038dc@redhat.com>
在 2025-08-11星期一的 11:17 -0400,Brian Masney via B4 Relay写道:
> The round_rate() clk ops is deprecated in the clk framework in favor
> of the determine_rate() clk ops, so let's go ahead and convert the
> various clk drivers using the Coccinelle semantic patch posted below.
> I did a few minor cosmetic cleanups of the code in a few cases.
>
> This series is broken up into several categories:
>
> - Patch 1 to clk/at91/peripheral is a bug fix for a return value.
>
> - Patch 2 to clk/at91/peripheral wasn't straight forward like the
> other
> drivers, so I'm explicitly calling this one out separately.
>
> - Patch 3 adds a determine_rate() op and keeps the round_rate() in
> place
> since this is needed by drivers/clk/actions/owl-composite.c and
> keeps
> the tree bisectable. The deprecated round_rate() op is dropped in
> patch
> 113.
>
> - Patches 4-70 are for drivers where there is no clk submaintainer
> listed in the MAINTAINERS file. Patch 19 includes a minor fix so
> that
> Coccinelle can be ran against a particular source file.
>
> - Patches 71-110 are for drivers where this is an entry in
> MAINTAINERS
> for the driver.
>
> - Patches 111-114 are for drivers that implement both round_rate()
> and
> determine_rate(), so the round_rate() implementation is dropped.
I was doing a patch to add divider setting support to clk-th1520-ap
driver and sent patch now, should I remove round_rate from the next
revision and just keep determine_rate? Is it safe to do this even if
this patchset is not merged?
In addition, will the clk_round_rate() API exported to other subsystems
be affected?
>
> Once all of my conversion patches across the various trees in the
> kernel
> have been merged, I will post a small series that removes the
> round_rate() op from the clk core and the documentation. Here's the
> other patch series that are currently in flight that need to be
> merged
> before we can remove round_rate() from the core.
>
> - arm32 (3):
> https://lore.kernel.org/linux-clk/20250710-arm32-clk-round-rate-v1-0-a9146b77aca9@redhat.com/T/
> - clk/tegra (6):
> https://lore.kernel.org/linux-clk/20250710-clk-tegra-round-rate-v1-0-e48ac3df4279@redhat.com/T/
> - clk/ti (7):
> https://lore.kernel.org/linux-clk/20250811-b4-clk-ti-round-rate-v1-0-cc0840594a49@redhat.com/T/
> - clocksource (1):
> https://lore.kernel.org/linux-clk/20250810-clocksource-round-rate-v1-1-486ef53e45eb@redhat.com/T/
> - drm (9):
> https://lore.kernel.org/linux-clk/20250811-drm-clk-round-rate-v2-0-4a91ccf239cf@redhat.com/T/
> - drm/msm (7):
> https://lore.kernel.org/linux-clk/20250810-drm-msm-phy-clk-round-rate-v2-0-0fd1f7979c83@redhat.com/T/
> - i2c (1):
> https://lore.kernel.org/linux-clk/20250810-i2c-round-rate-v1-1-9488b57153e7@redhat.com/T/
> - media (4):
> https://lore.kernel.org/linux-clk/20250710-media-clk-round-rate-v1-0-a9617b061741@redhat.com/T/
> - mips (1):
> https://lore.kernel.org/linux-clk/20250810-mips-round-rate-v1-1-54e424c520dd@redhat.com/T/
> - net (1):
> https://lore.kernel.org/linux-clk/20250810-net-round-rate-v1-1-dbb237c9fe5c@redhat.com/T/
> - peci (1):
> https://lore.kernel.org/linux-clk/20250810-peci-round-rate-v1-1-ec96d216a455@redhat.com/T/
> - phy (9):
> https://lore.kernel.org/linux-phy/20250810-phy-clk-round-rate-v2-0-9162470bb9f2@redhat.com/T/
> - pmdomain (1):
> https://lore.kernel.org/linux-clk/20250810-pmdomain-round-rate-v1-1-1a90dbacdeb6@redhat.com/T/
> - tty (1):
> https://lore.kernel.org/linux-clk/20250810-tty-round-rate-v1-1-849009f3bdfd@redhat.com/T/
>
> Coccinelle semantic patch:
>
> virtual patch
>
> // Look up the current name of the round_rate function
> @ has_round_rate @
> identifier round_rate_name =~ ".*_round_rate";
> identifier hw_param, rate_param, parent_rate_param;
> @@
>
> long round_rate_name(struct clk_hw *hw_param, unsigned long
> rate_param,
> unsigned long *parent_rate_param)
> {
> ...
> }
>
> // Rename the route_rate function name to determine_rate()
> @ script:python generate_name depends on has_round_rate @
> round_rate_name << has_round_rate.round_rate_name;
> new_name;
> @@
>
> coccinelle.new_name = round_rate_name.replace("_round_rate",
> "_determine_rate")
>
> // Change rate to req->rate; also change occurrences of 'return
> XXX'.
> @ chg_rate depends on generate_name @
> identifier has_round_rate.round_rate_name;
> identifier has_round_rate.hw_param;
> identifier has_round_rate.rate_param;
> identifier has_round_rate.parent_rate_param;
> identifier ERR =~ "E.*";
> expression E;
> @@
>
> long round_rate_name(struct clk_hw *hw_param, unsigned long
> rate_param,
> unsigned long *parent_rate_param)
> {
> <...
> (
> -return -ERR;
> +return -ERR;
> |
> - return rate_param;
> + return 0;
> |
> - return E;
> + req->rate = E;
> +
> + return 0;
> |
> - rate_param
> + req->rate
> )
> ...>
> }
>
> // Coccinelle only transforms the first occurrence of the rate
> parameter
> // Run a second time. FIXME: Is there a better way to do this?
> @ chg_rate2 depends on generate_name @
> identifier has_round_rate.round_rate_name;
> identifier has_round_rate.hw_param;
> identifier has_round_rate.rate_param;
> identifier has_round_rate.parent_rate_param;
> @@
>
> long round_rate_name(struct clk_hw *hw_param, unsigned long
> rate_param,
> unsigned long *parent_rate_param)
> {
> <...
> - rate_param
> + req->rate
> ...>
> }
>
> // Change parent_rate to req->best_parent_rate
> @ chg_parent_rate depends on generate_name @
> identifier has_round_rate.round_rate_name;
> identifier has_round_rate.hw_param;
> identifier has_round_rate.rate_param;
> identifier has_round_rate.parent_rate_param;
> @@
>
> long round_rate_name(struct clk_hw *hw_param, unsigned long
> rate_param,
> unsigned long *parent_rate_param)
> {
> <...
> (
> - *parent_rate_param
> + req->best_parent_rate
> |
> - parent_rate_param
> + &req->best_parent_rate
> )
> ...>
> }
>
> // Convert the function definition from round_rate() to
> determine_rate()
> @ func_definition depends on chg_rate @
> identifier has_round_rate.round_rate_name;
> identifier has_round_rate.hw_param;
> identifier has_round_rate.rate_param;
> identifier has_round_rate.parent_rate_param;
> identifier generate_name.new_name;
> @@
>
> - long round_rate_name(struct clk_hw *hw_param, unsigned long
> rate_param,
> - unsigned long *parent_rate_param)
> + int new_name(struct clk_hw *hw, struct clk_rate_request *req)
> {
> ...
> }
>
> // Update the ops from round_rate() to determine_rate()
> @ ops depends on func_definition @
> identifier has_round_rate.round_rate_name;
> identifier generate_name.new_name;
> @@
>
> {
> ...,
> - .round_rate = round_rate_name,
> + .determine_rate = new_name,
> ...,
> }
>
> Note that I used coccinelle 1.2 instead of 1.3 since the newer
> version
> adds unnecessary braces as described in this post.
> https://lore.kernel.org/cocci/67642477-5f3e-4b2a-914d-579a54f48cbd@intel.com/
>
> Signed-off-by: Brian Masney <bmasney@redhat.com>
> ---
> Brian Masney (114):
> clk: at91: peripheral: fix return value
> clk: at91: peripheral: convert from round_rate() to
> determine_rate()
> clk: fixed-factor: add determine_rate() ops
> clk: at91: audio-pll: convert from round_rate() to
> determine_rate()
> clk: at91: h32mx: convert from round_rate() to determine_rate()
> clk: at91: pll: convert from round_rate() to determine_rate()
> clk: at91: plldiv: convert from round_rate() to
> determine_rate()
> clk: at91: sam9x60-pll: convert from round_rate() to
> determine_rate()
> clk: at91: usb: convert from round_rate() to determine_rate()
> clk: baikal-t1: ccu-div: convert from round_rate() to
> determine_rate()
> clk: baikal-t1: ccu-pll: convert from round_rate() to
> determine_rate()
> clk: cdce925: convert from round_rate() to determine_rate()
> clk: cs2000-cp: convert from round_rate() to determine_rate()
> clk: ep93xx: convert from round_rate() to determine_rate()
> clk: fractional-divider: convert from round_rate() to
> determine_rate()
> clk: gemini: convert from round_rate() to determine_rate()
> clk: highbank: convert from round_rate() to determine_rate()
> clk: hisilicon: clkdivider-hi6220: convert from round_rate() to
> determine_rate()
> clk: hisilicon: hi3660-stub: move comma from declaration of
> DEFINE_CLK_STUB()
> clk: hisilicon: hi3660-stub: convert from round_rate() to
> determine_rate()
> clk: hisilicon: hi6220-stub: convert from round_rate() to
> determine_rate()
> clk: ingenic: cgu: convert from round_rate() to
> determine_rate()
> clk: ingenic: jz4780-cgu: convert from round_rate() to
> determine_rate()
> clk: ingenic: x1000-cgu: convert from round_rate() to
> determine_rate()
> clk: lmk04832: convert from round_rate() to determine_rate()
> clk: loongson1: convert from round_rate() to determine_rate()
> clk: max9485: convert from round_rate() to determine_rate()
> clk: milbeaut: convert from round_rate() to determine_rate()
> clk: mmp: audio: convert from round_rate() to determine_rate()
> clk: mmp: frac: convert from round_rate() to determine_rate()
> clk: multiplier: convert from round_rate() to determine_rate()
> clk: mxs: div: convert from round_rate() to determine_rate()
> clk: mxs: frac: convert from round_rate() to determine_rate()
> clk: mxs: ref: convert from round_rate() to determine_rate()
> clk: nuvoton: ma35d1-divider: convert from round_rate() to
> determine_rate()
> clk: nuvoton: ma35d1-pll: convert from round_rate() to
> determine_rate()
> clk: nxp: lpc18xx-cgu: convert from round_rate() to
> determine_rate()
> clk: nxp: lpc32xx: convert from round_rate() to
> determine_rate()
> clk: pistachio: pll: convert from round_rate() to
> determine_rate()
> clk: scpi: convert from round_rate() to determine_rate()
> clk: si514: convert from round_rate() to determine_rate()
> clk: si521xx: convert from round_rate() to determine_rate()
> clk: si5341: convert from round_rate() to determine_rate()
> clk: si544: convert from round_rate() to determine_rate()
> clk: si570: convert from round_rate() to determine_rate()
> clk: sifive: sifive-prci: convert from round_rate() to
> determine_rate()
> clk: sophgo: cv18xx-ip: convert from round_rate() to
> determine_rate()
> clk: sophgo: sg2042-clkgen: convert from round_rate() to
> determine_rate()
> clk: spacemit: ccu_ddn: convert from round_rate() to
> determine_rate()
> clk: spacemit: ccu_mix: convert from round_rate() to
> determine_rate()
> clk: spacemit: ccu_pll: convert from round_rate() to
> determine_rate()
> clk: sparx5: convert from round_rate() to determine_rate()
> clk: sprd: div: convert from round_rate() to determine_rate()
> clk: sprd: pll: convert from round_rate() to determine_rate()
> clk: st: clkgen-fsyn: convert from round_rate() to
> determine_rate()
> clk: st: clkgen-pll: convert from round_rate() to
> determine_rate()
> clk: stm32f4: convert from round_rate() to determine_rate()
> clk: stm32: stm32-core: convert from round_rate() to
> determine_rate()
> clk: stm32: stm32mp1: convert from round_rate() to
> determine_rate()
> clk: tps68470: convert from round_rate() to determine_rate()
> clk: versaclock3: convert from round_rate() to determine_rate()
> clk: vt8500: convert from round_rate() to determine_rate()
> clk: wm831x: convert from round_rate() to determine_rate()
> clk: x86: cgu: convert from round_rate() to determine_rate()
> clk: xgene: convert from round_rate() to determine_rate()
> clk: xilinx: xlnx-clock-wizard: convert from round_rate() to
> determine_rate()
> clk: xilinx: xlnx_vcu: convert from round_rate() to
> determine_rate()
> clk: zynqmp: divider: convert from round_rate() to
> determine_rate()
> clk: zynqmp: pll: convert from round_rate() to determine_rate()
> clk: zynq: pll: convert from round_rate() to determine_rate()
> clk: actions: owl-composite: convert from round_rate() to
> determine_rate()
> clk: actions: owl-divider: convert from round_rate() to
> determine_rate()
> clk: actions: owl-factor: convert from round_rate() to
> determine_rate()
> clk: actions: owl-pll: convert from round_rate() to
> determine_rate()
> clk: apple-nco: convert from round_rate() to determine_rate()
> clk: axs10x: i2s_pll_clock: convert from round_rate() to
> determine_rate()
> clk: axs10x: pll_clock: convert from round_rate() to
> determine_rate()
> clk: bcm: iproc-asiu: convert from round_rate() to
> determine_rate()
> clk: bm1880: convert from round_rate() to determine_rate()
> clk: cdce706: convert from round_rate() to determine_rate()
> clk: hsdk-pll: convert from round_rate() to determine_rate()
> clk: mediatek: pll: convert from round_rate() to
> determine_rate()
> clk: microchip: core: convert from round_rate() to
> determine_rate()
> clk: mstar: msc313-cpupll: convert from round_rate() to
> determine_rate()
> clk: mvebu: ap-cpu-clk: convert from round_rate() to
> determine_rate()
> clk: mvebu: armada-37xx-periph: convert from round_rate() to
> determine_rate()
> clk: mvebu: corediv: convert from round_rate() to
> determine_rate()
> clk: mvebu: cpu: convert from round_rate() to determine_rate()
> clk: mvebu: dove-divider: convert from round_rate() to
> determine_rate()
> clk: qcom: alpha-pll: convert from round_rate() to
> determine_rate()
> clk: qcom: regmap-divider: convert from round_rate() to
> determine_rate()
> clk: renesas: rzg2l-cpg: convert from round_rate() to
> determine_rate()
> clk: renesas: rzv2h-cpg: remove round_rate() in favor of
> determine_rate()
> clk: rockchip: ddr: convert from round_rate() to
> determine_rate()
> clk: rockchip: half-divider: convert from round_rate() to
> determine_rate()
> clk: rockchip: pll: convert from round_rate() to
> determine_rate()
> clk: rp1: convert from round_rate() to determine_rate()
> clk: samsung: cpu: convert from round_rate() to
> determine_rate()
> clk: samsung: pll: convert from round_rate() to
> determine_rate()
> clk: sp7021: convert from round_rate() to determine_rate()
> clk: spear: aux-synth: convert from round_rate() to
> determine_rate()
> clk: spear: frac-synth: convert from round_rate() to
> determine_rate()
> clk: spear: gpt-synth: convert from round_rate() to
> determine_rate()
> clk: spear: vco-pll: convert from round_rate() to
> determine_rate()
> clk: ux500: prcmu: convert from round_rate() to
> determine_rate()
> clk: versaclock5: convert from round_rate() to determine_rate()
> clk: versaclock7: convert from round_rate() to determine_rate()
> clk: versatile: icst: convert from round_rate() to
> determine_rate()
> clk: versatile: vexpress-osc: convert from round_rate() to
> determine_rate()
> clk: visconti: pll: convert from round_rate() to
> determine_rate()
> clk: divider: remove round_rate() in favor of determine_rate()
> clk: scmi: remove round_rate() in favor of determine_rate()
> clk: sophgo: sg2042-pll: remove round_rate() in favor of
> determine_rate()
> clk: fixed-factor: drop round_rate() clk ops
>
> drivers/clk/actions/owl-composite.c | 8 +-
> drivers/clk/actions/owl-divider.c | 13 +--
> drivers/clk/actions/owl-factor.c | 12 +--
> drivers/clk/actions/owl-pll.c | 25 ++++--
> drivers/clk/at91/clk-audio-pll.c | 42 +++++----
> drivers/clk/at91/clk-h32mx.c | 33 ++++---
> drivers/clk/at91/clk-peripheral.c | 48 ++++++----
> drivers/clk/at91/clk-pll.c | 12 +--
> drivers/clk/at91/clk-plldiv.c | 34 +++++---
> drivers/clk/at91/clk-sam9x60-pll.c | 29 +++---
> drivers/clk/at91/clk-usb.c | 20 +++--
> drivers/clk/axs10x/i2s_pll_clock.c | 14 +--
> drivers/clk/axs10x/pll_clock.c | 12 +--
> drivers/clk/baikal-t1/ccu-div.c | 27 +++---
> drivers/clk/baikal-t1/ccu-pll.c | 14 +--
> drivers/clk/bcm/clk-iproc-asiu.c | 25 +++---
> drivers/clk/clk-apple-nco.c | 14 +--
> drivers/clk/clk-bm1880.c | 21 +++--
> drivers/clk/clk-cdce706.c | 16 ++--
> drivers/clk/clk-cdce925.c | 50 ++++++-----
> drivers/clk/clk-cs2000-cp.c | 14 +--
> drivers/clk/clk-divider.c | 23 -----
> drivers/clk/clk-ep93xx.c | 18 ++--
> drivers/clk/clk-fixed-factor.c | 16 ++--
> drivers/clk/clk-fractional-divider.c | 25 ++++--
> drivers/clk/clk-gemini.c | 15 ++--
> drivers/clk/clk-highbank.c | 26 +++---
> drivers/clk/clk-hsdk-pll.c | 12 +--
> drivers/clk/clk-lmk04832.c | 53 ++++++-----
> drivers/clk/clk-loongson1.c | 12 +--
> drivers/clk/clk-max9485.c | 27 +++---
> drivers/clk/clk-milbeaut.c | 22 +++--
> drivers/clk/clk-multiplier.c | 12 +--
> drivers/clk/clk-rp1.c | 45 ++++++----
> drivers/clk/clk-scmi.c | 30 -------
> drivers/clk/clk-scpi.c | 18 ++--
> drivers/clk/clk-si514.c | 24 +++--
> drivers/clk/clk-si521xx.c | 14 +--
> drivers/clk/clk-si5341.c | 22 +++--
> drivers/clk/clk-si544.c | 10 +--
> drivers/clk/clk-si570.c | 24 +++--
> drivers/clk/clk-sp7021.c | 22 ++---
> drivers/clk/clk-sparx5.c | 10 ++-
> drivers/clk/clk-stm32f4.c | 26 +++---
> drivers/clk/clk-tps68470.c | 12 +--
> drivers/clk/clk-versaclock3.c | 70 +++++++++------
> drivers/clk/clk-versaclock5.c | 71 ++++++++-------
> drivers/clk/clk-versaclock7.c | 30 ++++---
> drivers/clk/clk-vt8500.c | 59 ++++++++-----
> drivers/clk/clk-wm831x.c | 14 +--
> drivers/clk/clk-xgene.c | 41 +++++----
> drivers/clk/hisilicon/clk-hi3660-stub.c | 18 ++--
> drivers/clk/hisilicon/clk-hi6220-stub.c | 12 +--
> drivers/clk/hisilicon/clkdivider-hi6220.c | 12 +--
> drivers/clk/ingenic/cgu.c | 12 +--
> drivers/clk/ingenic/jz4780-cgu.c | 24 ++---
> drivers/clk/ingenic/x1000-cgu.c | 19 ++--
> drivers/clk/mediatek/clk-pll.c | 13 +--
> drivers/clk/mediatek/clk-pll.h | 3 +-
> drivers/clk/mediatek/clk-pllfh.c | 2 +-
> drivers/clk/microchip/clk-core.c | 44 ++++++----
> drivers/clk/mmp/clk-audio.c | 18 ++--
> drivers/clk/mmp/clk-frac.c | 27 +++---
> drivers/clk/mstar/clk-msc313-cpupll.c | 18 ++--
> drivers/clk/mvebu/ap-cpu-clk.c | 12 +--
> drivers/clk/mvebu/armada-37xx-periph.c | 15 ++--
> drivers/clk/mvebu/clk-corediv.c | 18 ++--
> drivers/clk/mvebu/clk-cpu.c | 12 +--
> drivers/clk/mvebu/dove-divider.c | 16 ++--
> drivers/clk/mxs/clk-div.c | 8 +-
> drivers/clk/mxs/clk-frac.c | 16 ++--
> drivers/clk/mxs/clk-ref.c | 16 ++--
> drivers/clk/nuvoton/clk-ma35d1-divider.c | 12 ++-
> drivers/clk/nuvoton/clk-ma35d1-pll.c | 28 +++---
> drivers/clk/nxp/clk-lpc18xx-cgu.c | 16 ++--
> drivers/clk/nxp/clk-lpc32xx.c | 59 +++++++------
> drivers/clk/pistachio/clk-pll.c | 20 +++--
> drivers/clk/qcom/clk-alpha-pll.c | 136 ++++++++++++++++---
> ----------
> drivers/clk/qcom/clk-regmap-divider.c | 27 +++---
> drivers/clk/renesas/rzg2l-cpg.c | 9 +-
> drivers/clk/renesas/rzv2h-cpg.c | 10 ---
> drivers/clk/rockchip/clk-ddr.c | 13 +--
> drivers/clk/rockchip/clk-half-divider.c | 12 +--
> drivers/clk/rockchip/clk-pll.c | 23 +++--
> drivers/clk/samsung/clk-cpu.c | 12 +--
> drivers/clk/samsung/clk-pll.c | 33 ++++---
> drivers/clk/sifive/fu540-prci.h | 2 +-
> drivers/clk/sifive/fu740-prci.h | 2 +-
> drivers/clk/sifive/sifive-prci.c | 11 +--
> drivers/clk/sifive/sifive-prci.h | 4 +-
> drivers/clk/sophgo/clk-cv18xx-ip.c | 10 ++-
> drivers/clk/sophgo/clk-sg2042-clkgen.c | 17 ++--
> drivers/clk/sophgo/clk-sg2042-pll.c | 24 ++---
> drivers/clk/spacemit/ccu_ddn.c | 11 ++-
> drivers/clk/spacemit/ccu_mix.c | 12 +--
> drivers/clk/spacemit/ccu_pll.c | 10 ++-
> drivers/clk/spear/clk-aux-synth.c | 12 +--
> drivers/clk/spear/clk-frac-synth.c | 12 +--
> drivers/clk/spear/clk-gpt-synth.c | 12 +--
> drivers/clk/spear/clk-vco-pll.c | 23 +++--
> drivers/clk/sprd/div.c | 13 +--
> drivers/clk/sprd/pll.c | 8 +-
> drivers/clk/st/clkgen-fsyn.c | 33 +++----
> drivers/clk/st/clkgen-pll.c | 38 ++++----
> drivers/clk/stm32/clk-stm32-core.c | 28 +++---
> drivers/clk/stm32/clk-stm32mp1.c | 13 +--
> drivers/clk/ux500/clk-prcmu.c | 14 +--
> drivers/clk/versatile/clk-icst.c | 72 +++++++++------
> drivers/clk/versatile/clk-vexpress-osc.c | 16 ++--
> drivers/clk/visconti/pll.c | 17 ++--
> drivers/clk/x86/clk-cgu.c | 35 ++++----
> drivers/clk/xilinx/clk-xlnx-clock-wizard.c | 55 ++++++------
> drivers/clk/xilinx/xlnx_vcu.c | 15 ++--
> drivers/clk/zynq/pll.c | 12 +--
> drivers/clk/zynqmp/divider.c | 23 ++---
> drivers/clk/zynqmp/pll.c | 24 ++---
> 116 files changed, 1477 insertions(+), 1132 deletions(-)
> ---
> base-commit: 8f5ae30d69d7543eee0d70083daf4de8fe15d585
> change-id: 20250729-clk-for-stephen-round-rate-5a88ebdf8da6
>
> Best regards,
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2025-08-12 16:59 UTC|newest]
Thread overview: 172+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-11 15:17 [PATCH 000/114] clk: convert drivers from deprecated round_rate() to determine_rate() Brian Masney via B4 Relay
2025-08-11 15:17 ` [PATCH 001/114] clk: at91: peripheral: fix return value Brian Masney via B4 Relay
2025-08-11 15:59 ` Alexander Sverdlin
2025-08-11 15:17 ` [PATCH 002/114] clk: at91: peripheral: convert from round_rate() to determine_rate() Brian Masney via B4 Relay
2025-08-11 16:00 ` Alexander Sverdlin
2025-08-11 15:17 ` [PATCH 003/114] clk: fixed-factor: add determine_rate() ops Brian Masney via B4 Relay
2025-08-11 15:17 ` [PATCH 004/114] clk: at91: audio-pll: convert from round_rate() to determine_rate() Brian Masney via B4 Relay
2025-08-11 15:17 ` [PATCH 005/114] clk: at91: h32mx: " Brian Masney via B4 Relay
2025-08-11 15:17 ` [PATCH 006/114] clk: at91: pll: " Brian Masney via B4 Relay
2025-08-11 15:17 ` [PATCH 007/114] clk: at91: plldiv: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 008/114] clk: at91: sam9x60-pll: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 009/114] clk: at91: usb: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 010/114] clk: baikal-t1: ccu-div: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 011/114] clk: baikal-t1: ccu-pll: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 012/114] clk: cdce925: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 013/114] clk: cs2000-cp: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 014/114] clk: ep93xx: " Brian Masney via B4 Relay
2025-08-11 15:50 ` Alexander Sverdlin
2025-08-11 15:18 ` [PATCH 015/114] clk: fractional-divider: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 016/114] clk: gemini: " Brian Masney via B4 Relay
2025-08-19 9:46 ` Linus Walleij
2025-08-11 15:18 ` [PATCH 017/114] clk: highbank: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 018/114] clk: hisilicon: clkdivider-hi6220: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 019/114] clk: hisilicon: hi3660-stub: move comma from declaration of DEFINE_CLK_STUB() Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 020/114] clk: hisilicon: hi3660-stub: convert from round_rate() to determine_rate() Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 021/114] clk: hisilicon: hi6220-stub: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 022/114] clk: ingenic: cgu: " Brian Masney via B4 Relay
2025-09-03 19:18 ` Paul Cercueil
2025-08-11 15:18 ` [PATCH 023/114] clk: ingenic: jz4780-cgu: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 024/114] clk: ingenic: x1000-cgu: " Brian Masney via B4 Relay
2025-09-03 19:20 ` Paul Cercueil
2025-08-11 15:18 ` [PATCH 025/114] clk: lmk04832: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 026/114] clk: loongson1: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 027/114] clk: max9485: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 028/114] clk: milbeaut: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 029/114] clk: mmp: audio: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 030/114] clk: mmp: frac: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 031/114] clk: multiplier: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 032/114] clk: mxs: div: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 033/114] clk: mxs: frac: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 034/114] clk: mxs: ref: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 035/114] clk: nuvoton: ma35d1-divider: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 036/114] clk: nuvoton: ma35d1-pll: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 037/114] clk: nxp: lpc18xx-cgu: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 038/114] clk: nxp: lpc32xx: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 039/114] clk: pistachio: pll: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 040/114] clk: scpi: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 041/114] clk: si514: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 042/114] clk: si521xx: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 043/114] clk: si5341: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 044/114] clk: si544: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 045/114] clk: si570: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 046/114] clk: sifive: sifive-prci: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 047/114] clk: sophgo: cv18xx-ip: " Brian Masney via B4 Relay
2025-08-11 15:47 ` Alexander Sverdlin
2025-08-11 15:18 ` [PATCH 048/114] clk: sophgo: sg2042-clkgen: " Brian Masney via B4 Relay
2025-08-11 15:45 ` Alexander Sverdlin
2025-08-11 15:57 ` Brian Masney
2025-08-14 8:47 ` Chen Wang
2025-08-11 15:18 ` [PATCH 049/114] clk: spacemit: ccu_ddn: " Brian Masney via B4 Relay
2025-08-25 8:40 ` Yixun Lan
2025-08-25 15:17 ` Haylen Chu
2025-08-11 15:18 ` [PATCH 050/114] clk: spacemit: ccu_mix: " Brian Masney via B4 Relay
2025-08-25 8:41 ` Yixun Lan
2025-08-25 15:18 ` Haylen Chu
2025-08-11 15:18 ` [PATCH 051/114] clk: spacemit: ccu_pll: " Brian Masney via B4 Relay
2025-08-25 8:41 ` Yixun Lan
2025-08-25 15:18 ` Haylen Chu
2025-08-11 15:18 ` [PATCH 052/114] clk: sparx5: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 053/114] clk: sprd: div: " Brian Masney via B4 Relay
2025-08-12 9:17 ` Chunyan Zhang
2025-08-11 15:18 ` [PATCH 054/114] clk: sprd: pll: " Brian Masney via B4 Relay
2025-08-12 9:16 ` Chunyan Zhang
2025-08-11 15:18 ` [PATCH 055/114] clk: st: clkgen-fsyn: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 056/114] clk: st: clkgen-pll: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 057/114] clk: stm32f4: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 058/114] clk: stm32: stm32-core: " Brian Masney via B4 Relay
2025-08-18 12:08 ` Gabriel FERNANDEZ
2025-08-11 15:18 ` [PATCH 059/114] clk: stm32: stm32mp1: " Brian Masney via B4 Relay
2025-08-18 12:09 ` Gabriel FERNANDEZ
2025-08-11 15:18 ` [PATCH 060/114] clk: tps68470: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 061/114] clk: versaclock3: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 062/114] clk: vt8500: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 063/114] clk: wm831x: " Brian Masney via B4 Relay
2025-08-12 8:04 ` Richard Fitzgerald
2025-08-11 15:18 ` [PATCH 064/114] clk: x86: cgu: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 065/114] clk: xgene: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 066/114] clk: xilinx: xlnx-clock-wizard: " Brian Masney via B4 Relay
2025-08-11 15:18 ` [PATCH 067/114] clk: xilinx: xlnx_vcu: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 068/114] clk: zynqmp: divider: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 069/114] clk: zynqmp: pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 070/114] clk: zynq: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 071/114] clk: actions: owl-composite: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 072/114] clk: actions: owl-divider: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 073/114] clk: actions: owl-factor: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 074/114] clk: actions: owl-pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 075/114] clk: apple-nco: " Brian Masney via B4 Relay
2025-08-14 15:29 ` Janne Grunau
2025-08-11 15:19 ` [PATCH 076/114] clk: axs10x: i2s_pll_clock: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 077/114] clk: axs10x: pll_clock: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 078/114] clk: bcm: iproc-asiu: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 079/114] clk: bm1880: " Brian Masney via B4 Relay
2025-08-12 15:38 ` Manivannan Sadhasivam
2025-08-11 15:19 ` [PATCH 080/114] clk: cdce706: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 081/114] clk: hsdk-pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 082/114] clk: mediatek: pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 083/114] clk: microchip: core: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 084/114] clk: mstar: msc313-cpupll: " Brian Masney via B4 Relay
2025-08-14 4:35 ` Daniel Palmer
2025-08-11 15:19 ` [PATCH 085/114] clk: mvebu: ap-cpu-clk: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 086/114] clk: mvebu: armada-37xx-periph: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 087/114] clk: mvebu: corediv: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 088/114] clk: mvebu: cpu: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 089/114] clk: mvebu: dove-divider: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 090/114] clk: qcom: alpha-pll: " Brian Masney via B4 Relay
2025-08-12 9:13 ` Konrad Dybcio
2025-08-11 15:19 ` [PATCH 091/114] clk: qcom: regmap-divider: " Brian Masney via B4 Relay
2025-08-12 9:14 ` Konrad Dybcio
2025-08-11 15:19 ` [PATCH 092/114] clk: renesas: rzg2l-cpg: " Brian Masney via B4 Relay
2025-08-14 15:06 ` Geert Uytterhoeven
2025-08-11 15:19 ` [PATCH 093/114] clk: renesas: rzv2h-cpg: remove round_rate() in favor of determine_rate() Brian Masney via B4 Relay
2025-08-14 15:11 ` Geert Uytterhoeven
2025-08-11 15:19 ` [PATCH 094/114] clk: rockchip: ddr: convert from round_rate() to determine_rate() Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 095/114] clk: rockchip: half-divider: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 096/114] clk: rockchip: pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 097/114] clk: rp1: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 098/114] clk: samsung: cpu: " Brian Masney via B4 Relay
2025-08-23 16:50 ` (subset) " Krzysztof Kozlowski
2025-08-11 15:19 ` [PATCH 099/114] clk: samsung: pll: " Brian Masney via B4 Relay
2025-08-23 16:50 ` (subset) " Krzysztof Kozlowski
2025-08-11 15:19 ` [PATCH 100/114] clk: sp7021: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 101/114] clk: spear: aux-synth: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 102/114] clk: spear: frac-synth: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 103/114] clk: spear: gpt-synth: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 104/114] clk: spear: vco-pll: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 105/114] clk: ux500: prcmu: " Brian Masney via B4 Relay
2025-08-19 9:47 ` Linus Walleij
2025-08-11 15:19 ` [PATCH 106/114] clk: versaclock5: " Brian Masney via B4 Relay
2025-08-13 9:07 ` Luca Ceresoli
2025-08-11 15:19 ` [PATCH 107/114] clk: versaclock7: " Brian Masney via B4 Relay
2025-08-11 15:19 ` [PATCH 108/114] clk: versatile: icst: " Brian Masney via B4 Relay
2025-08-19 9:47 ` Linus Walleij
2025-08-11 15:19 ` [PATCH 109/114] clk: versatile: vexpress-osc: " Brian Masney via B4 Relay
2025-08-19 9:49 ` Linus Walleij
2025-08-11 15:19 ` [PATCH 110/114] clk: visconti: pll: " Brian Masney via B4 Relay
2025-08-18 0:48 ` nobuhiro1.iwamatsu
2025-08-11 15:19 ` [PATCH 111/114] clk: divider: remove round_rate() in favor of determine_rate() Brian Masney via B4 Relay
2025-08-11 16:02 ` Alexander Sverdlin
2025-08-14 15:10 ` Geert Uytterhoeven
2025-08-11 15:19 ` [PATCH 112/114] clk: scmi: " Brian Masney via B4 Relay
2025-08-11 15:38 ` Alexander Sverdlin
2025-08-27 7:09 ` Peng Fan
2025-08-27 13:13 ` Brian Masney
2025-08-27 13:49 ` Sudeep Holla
2025-08-11 15:19 ` [PATCH 113/114] clk: sophgo: sg2042-pll: " Brian Masney via B4 Relay
2025-08-11 15:36 ` Alexander Sverdlin
2025-08-14 8:46 ` Chen Wang
2025-08-11 15:19 ` [PATCH 114/114] clk: fixed-factor: drop round_rate() clk ops Brian Masney via B4 Relay
2025-08-11 15:37 ` Alexander Sverdlin
2025-08-11 16:00 ` [PATCH 000/114] clk: convert drivers from deprecated round_rate() to determine_rate() Manivannan Sadhasivam
2025-08-12 10:39 ` Brian Masney
2025-08-12 13:39 ` Icenowy Zheng [this message]
2025-08-12 13:53 ` Brian Masney
2025-08-22 6:31 ` Krzysztof Kozlowski
2025-08-22 11:32 ` Brian Masney
2025-08-22 12:23 ` Krzysztof Kozlowski
2025-08-22 13:09 ` Brian Masney
2025-08-23 16:43 ` Krzysztof Kozlowski
2025-09-01 9:49 ` Geert Uytterhoeven
2025-08-23 16:48 ` Krzysztof Kozlowski
2025-08-25 22:23 ` (subset) " Yixun Lan
2025-08-29 0:47 ` Brian Masney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a151ed7c1caac83e872cf6075c215fa55bd21f82.camel@icenowy.me \
--to=uwu@icenowy.me \
--cc=Eugeniy.Paltsev@synopsys.com \
--cc=Steen.Hegelund@microchip.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=afaerber@suse.de \
--cc=alexander.helms.jy@renesas.com \
--cc=alexandre.belloni@bootlin.com \
--cc=alexandre.torgue@foss.st.com \
--cc=alim.akhtar@samsung.com \
--cc=alyssa@rosenzweig.io \
--cc=andersson@kernel.org \
--cc=andrea.porta@suse.com \
--cc=andrew@lunn.ch \
--cc=angelogioacchino.delregno@collabora.com \
--cc=arm-scmi@vger.kernel.org \
--cc=asahi@lists.linux.dev \
--cc=baolin.wang@linux.alibaba.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=bmasney@redhat.com \
--cc=claudiu.beznea@tuxon.dev \
--cc=cristian.marussi@arm.com \
--cc=cw00.choi@samsung.com \
--cc=daniel.machon@microchip.com \
--cc=daniel@thingy.jp \
--cc=dlan@gentoo.org \
--cc=festevam@gmail.com \
--cc=geert+renesas@glider.be \
--cc=gregory.clement@bootlin.com \
--cc=heiko@sntech.de \
--cc=imx@lists.linux.dev \
--cc=inochiama@gmail.com \
--cc=j@jannau.net \
--cc=jcmvbkbc@gmail.com \
--cc=keguang.zhang@gmail.com \
--cc=kernel@pengutronix.de \
--cc=krzk@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-actions@lists.infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=liviu.dudau@arm.com \
--cc=lpieralisi@kernel.org \
--cc=luca.ceresoli@bootlin.com \
--cc=mani@kernel.org \
--cc=matthias.bgg@gmail.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=michal.simek@amd.com \
--cc=mripard@kernel.org \
--cc=mturquette@baylibre.com \
--cc=neal@gompa.dev \
--cc=nicolas.ferre@microchip.com \
--cc=nobuhiro1.iwamatsu@toshiba.co.jp \
--cc=orito.takao@socionext.com \
--cc=orsonzhai@gmail.com \
--cc=patches@opensource.cirrus.com \
--cc=paul.walmsley@sifive.com \
--cc=paul@crapouillou.net \
--cc=piotr.wojtaszczyk@timesys.com \
--cc=qinjian@cqplus1.com \
--cc=rjui@broadcom.com \
--cc=romain.perier@gmail.com \
--cc=s.hauer@pengutronix.de \
--cc=s.nawrocki@samsung.com \
--cc=samuel.holland@sifive.com \
--cc=sboyd@kernel.org \
--cc=sbranden@broadcom.com \
--cc=schung@nuvoton.com \
--cc=sebastian.hesselbarth@gmail.com \
--cc=shawnguo@kernel.org \
--cc=soc@lists.linux.dev \
--cc=sophgo@lists.linux.dev \
--cc=spacemit@lists.linux.dev \
--cc=sudeep.holla@arm.com \
--cc=sugaya.taichi@socionext.com \
--cc=sven@kernel.org \
--cc=ulf.hansson@linaro.org \
--cc=unicorn_wang@outlook.com \
--cc=vireshk@kernel.org \
--cc=vz@mleia.com \
--cc=ychuang3@nuvoton.com \
--cc=zhang.lyra@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).