Thread (101 messages) 101 messages, 2 authors, 2023-02-20

Re: [PATCH v2 37/47] clk: mediatek: Split MT8195 clock drivers and allow module build

From: Chen-Yu Tsai <wenst@chromium.org>
Date: 2023-02-17 15:16:30
Also in: linux-clk, linux-mediatek, lkml

On Fri, Feb 17, 2023 at 7:29 PM AngeloGioacchino Del Regno
[off-list ref] wrote:
Il 17/02/23 05:31, Chen-Yu Tsai ha scritto:
quoted
On Tue, Feb 14, 2023 at 9:42 PM AngeloGioacchino Del Regno
[off-list ref] wrote:
quoted
MT8195 clock drivers were encapsulated in one single (and big) Kconfig
option: there's no reason to do that, as it is totally unnecessary to
build in all or none of them.

Split them out: keep boot-critical clocks as bool and allow choosing
non critical clocks as tristate.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
  drivers/clk/mediatek/Kconfig  | 86 +++++++++++++++++++++++++++++++++++
  drivers/clk/mediatek/Makefile | 20 +++++---
  2 files changed, 99 insertions(+), 7 deletions(-)
diff --git a/drivers/clk/mediatek/Kconfig b/drivers/clk/mediatek/Kconfig
index 45b7aea7648d..88937d111e98 100644
--- a/drivers/clk/mediatek/Kconfig
+++ b/drivers/clk/mediatek/Kconfig
@@ -692,6 +692,92 @@ config COMMON_CLK_MT8195
          help
            This driver supports MediaTek MT8195 clocks.

+config COMMON_CLK_MT8195_APUSYS
+       tristate "Clock driver for MediaTek MT8195 apusys"
+       depends on COMMON_CLK_MT8195
Would something like

           default COMMON_CLK_MT8195

help with the transition?

Otherwise we'd need to add a whole lot more stuff to arm64's defconfig,
and anyone running `make olddefconfig` would have many of their clock
drivers no longer available.

Same applies to the MT8186 split.

Seems like not all MediaTek SoCs apply this pattern, but at least MT7986,
MT8167, MT8173, MT8183 do this.

ChenYu
Right. Since MT8195 machines have been out in the wild for a bit of time now,
I think it's worth following your advice and add `default COMMON_CLK_MT8195`
to the new configuration options.

As for MT8186, currently, there's only one board supported upstream, which
is the "unobtainable" EVB so I would rather not do that for MT8186, unless
you have any strong opinions on that.
I'd like something that provides a reasonable working machine if possible.
If people need to customize to shrink their kernel, they could disable the
options later on. At least for ChromeOS we'll probably start off with them
all built-in, and later on maybe experiment a bit with modules.

ChenYu

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help