public inbox for linux-clk@vger.kernel.org
 help / color / mirror / Atom feed
From: AngeloGioacchino Del Regno  <angelogioacchino.delregno@collabora.com>
To: Chen-Yu Tsai <wenst@chromium.org>
Cc: mturquette@baylibre.com, sboyd@kernel.org,
	matthias.bgg@gmail.com, johnson.wang@mediatek.com,
	miles.chen@mediatek.com, chun-jie.chen@mediatek.com,
	daniel@makrotopia.org, fparent@baylibre.com, msp@baylibre.com,
	nfraprado@collabora.com, rex-bc.chen@mediatek.com,
	zhaojh329@gmail.com, sam.shih@mediatek.com,
	edward-jw.yang@mediatek.com, yangyingliang@huawei.com,
	granquet@baylibre.com, pablo.sun@mediatek.com,
	sean.wang@mediatek.com, chen.zhong@mediatek.com,
	linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org
Subject: Re: [PATCH v1 09/45] clk: mediatek: mt2712: Change to use module_platform_driver macro
Date: Tue, 7 Feb 2023 10:00:02 +0100	[thread overview]
Message-ID: <b7b35901-59aa-5342-1bd1-5ed591a0469c@collabora.com> (raw)
In-Reply-To: <CAGXv+5GfwY2+55UupTUNYVudg3-YDQtkkfhT=M53CJwdqG=ERg@mail.gmail.com>

Il 07/02/23 07:33, Chen-Yu Tsai ha scritto:
> On Mon, Feb 6, 2023 at 11:29 PM AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com> wrote:
>>
>> Now that all of the clocks in clk-mt2712.c are using the common
>> mtk_clk_simple_{probe,remove}() callbacks we can safely migrate
>> to module_platform_driver.
> 
> Instead of splitting the conversion into a module among many patches,
> I'd do it in one go. With one patch we get a working module instead
> of a half-baked one half way through the series.
> 

If you really want I can eventually do that in one go - in any case, the
sense of having this split in multiple commits is:
  - Bisectability: topckgen/mcucfg migration being faulty would point at
                   one commit doing just that, making it easier for whoever
                   is trying to debug that to find what could've gone wrong;
  - Slow changes:  A driver being a platform_driver doesn't mean that it *has*
                   to be compiled as a module: infact, we can use the .remove()
                   callback even with built-in drivers (as you can remove one
                   and re-add it during runtime from sysfs)
  - Signaling completion:
                   Saying "this is complete" in this case is performed in the
                   last patches of the series, where only the Kconfig is being
                   changed to allow the module build for (most)all.

> The subject could say "Convert X driver from builtin to module". And
> instead of "migrate to module_platform_driver", the body could say
> "convert to module by switching to module_platform_driver, and adding
> missing MODULE_* statements". I believe this constitutes one logical
> change. Maybe the accompanying Kconfig change should be included as
> well?
> 

But again, I don't have *really strong* opinions on this, if not preferences
for how I'd like to see the changes getting in: this series brings big changes
that would be done in many more commits if they were scattered in more series.
Another point about having this conversion performed in multiple commits is
showing how it was done and how to replicate it for a different driver...

>> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
>> ---
>>   drivers/clk/mediatek/clk-mt2712.c | 10 ++--------
>>   1 file changed, 2 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/clk/mediatek/clk-mt2712.c b/drivers/clk/mediatek/clk-mt2712.c
>> index c5fd76d1b9df..65c1cbcbd54e 100644
>> --- a/drivers/clk/mediatek/clk-mt2712.c
>> +++ b/drivers/clk/mediatek/clk-mt2712.c
>> @@ -1028,7 +1028,7 @@ static const struct of_device_id of_match_clk_mt2712_simple[] = {
>>          { /* sentinel */ }
>>   };
>>
>> -static struct platform_driver clk_mt2712_simple_drv = {
>> +static struct platform_driver clk_mt2712_drv = {
> 
> Why the name change? If you do change the name, could you also change
> the of match table's name as well to be consistent, and also mention
> the change in the commit log?

It simply looked like being a good idea, as "simple" made sense when we had two
platform_driver in one file, one using simple_probe, one using a custom probe
function.
The latter going away forever means that there's no more distinction to do
between the two, hence my rename here...

Regarding the of_match_table name change... I'm sorry, I genuinely forgot to
change it, my intention was infact to actually be consistent... :-)

> 
> I'd just leave it alone though.

I had to explain my reasoning about all of the above, so I'll just wait for
your opinion again before going for a v2! :-)

Cheers,
Angelo


  reply	other threads:[~2023-02-07  9:00 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-06 15:28 [PATCH v1 00/45] MediaTek clocks: full module build and cleanups AngeloGioacchino Del Regno
2023-02-06 15:28 ` [PATCH v1 01/45] clk: mediatek: clk-mtk: Switch to device_get_match_data() AngeloGioacchino Del Regno
2023-02-07  5:01   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 02/45] clk: mediatek: clk-mtk: Introduce clk_mtk_pdev_{probe,remove}() AngeloGioacchino Del Regno
2023-02-07  5:59   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 03/45] clk: mediatek: Migrate to mtk_clk_pdev_probe() for multimedia clocks AngeloGioacchino Del Regno
2023-02-07  6:06   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 04/45] clk: mediatek: Add divider clocks to mtk_clk_simple_{probe,remove}() AngeloGioacchino Del Regno
2023-02-07  6:11   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 05/45] clk: mediatek: mt2712: Migrate topckgen/mcucfg to mtk_clk_simple_probe() AngeloGioacchino Del Regno
2023-02-07  6:15   ` Chen-Yu Tsai
2023-02-07  8:45     ` AngeloGioacchino Del Regno
2023-02-07  8:58       ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 06/45] clk: mediatek: mt2712: Compress clock arrays entries to 90 columns AngeloGioacchino Del Regno
2023-02-07  6:58   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 07/45] clk: mediatek: mt2712: Add error handling to clk_mt2712_apmixed_probe() AngeloGioacchino Del Regno
2023-02-07  6:16   ` Chen-Yu Tsai
2023-02-07  9:00     ` AngeloGioacchino Del Regno
2023-02-06 15:28 ` [PATCH v1 08/45] clk: mediatek: mt2712: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-07  6:50   ` Chen-Yu Tsai
2023-02-07  9:13     ` AngeloGioacchino Del Regno
2023-02-07  7:07   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 09/45] clk: mediatek: mt2712: Change to use module_platform_driver macro AngeloGioacchino Del Regno
2023-02-07  6:33   ` Chen-Yu Tsai
2023-02-07  9:00     ` AngeloGioacchino Del Regno [this message]
2023-02-07  9:30       ` Chen-Yu Tsai
2023-02-07 10:50         ` AngeloGioacchino Del Regno
2023-02-08  8:24           ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 10/45] clk: mediatek: mt2712: Change Kconfig options to allow module build AngeloGioacchino Del Regno
2023-02-06 15:28 ` [PATCH v1 11/45] clk: mediatek: mt8365: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-07  7:12   ` Chen-Yu Tsai
2023-02-07  9:14     ` AngeloGioacchino Del Regno
2023-02-07  9:32       ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 12/45] clk: mediatek: mt8365: Convert to mtk_clk_simple_{probe,remove}() AngeloGioacchino Del Regno
2023-02-07  7:28   ` Chen-Yu Tsai
2023-02-07  9:16     ` AngeloGioacchino Del Regno
2023-02-06 15:28 ` [PATCH v1 13/45] clk: mediatek: mt8167: Compress GATE_TOPx macros AngeloGioacchino Del Regno
2023-02-07  7:30   ` Chen-Yu Tsai
2023-02-07  9:17     ` AngeloGioacchino Del Regno
2023-02-06 15:28 ` [PATCH v1 14/45] clk: mediatek: mt8167: Move apmixedsys as platform_driver in new file AngeloGioacchino Del Regno
2023-02-07  7:36   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 15/45] clk: mediatek: mt8167: Remove __initconst annotation from arrays AngeloGioacchino Del Regno
2023-02-07  7:41   ` Chen-Yu Tsai
2023-02-06 15:28 ` [PATCH v1 16/45] clk: mediatek: mt8167: Convert to mtk_clk_simple_{probe,remove}() AngeloGioacchino Del Regno
2023-02-07  8:07   ` Chen-Yu Tsai
2023-02-07 11:51     ` AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 17/45] clk: mediatek: mt8183: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 18/45] clk: mediatek: mt8183: Compress clocks arrays entries where possible AngeloGioacchino Del Regno
2023-02-07  9:41   ` Chen-Yu Tsai
2023-02-06 15:29 ` [PATCH v1 19/45] clk: mediatek: mt8183: Convert all remaining clocks to common probe AngeloGioacchino Del Regno
2023-02-07  9:58   ` Chen-Yu Tsai
2023-02-07 12:14     ` AngeloGioacchino Del Regno
2023-02-08  8:17       ` Chen-Yu Tsai
2023-02-06 15:29 ` [PATCH v1 20/45] clk: mediatek: Consistently use GATE_MTK() macro AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 21/45] clk: mediatek: mt7622: Properly use CLK_IS_CRITICAL flag AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 22/45] clk: mediatek: mt7622: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 23/45] clk: mediatek: mt7622: Move infracfg to clk-mt7622-infracfg.c AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 24/45] clk: mediatek: mt7622: Convert to platform driver and simple probe AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 25/45] clk: mediatek: mt8516: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 26/45] clk: mediatek: mt8516: Convert to platform driver and simple probe AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 27/45] clk: mediatek: mt8516: Allow building clock drivers as modules AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 28/45] clk: mediatek: Propagate struct device with mtk_clk_register_dividers() AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 29/45] clk: mediatek: mt7986-apmixed: Use PLL_AO flag to set critical clock AngeloGioacchino Del Regno
2023-02-07 14:43   ` Daniel Golle
2023-02-07 15:22     ` AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 30/45] clk: mediatek: mt7986-infracfg: Migrate to common probe mechanism AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 31/45] clk: mediatek: mt7986-eth: " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 32/45] clk: mediatek: mt8186-mcu: " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 33/45] clk: mediatek: Switch to module_platform_driver() where possible AngeloGioacchino Del Regno
2023-02-07  6:37   ` Chen-Yu Tsai
2023-02-07  9:03     ` AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 34/45] clk: mediatek: Add MODULE_LICENSE() where missing AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 35/45] clk: mediatek: Split MT8195 clock drivers and allow module build AngeloGioacchino Del Regno
2023-02-08  8:28   ` Chen-Yu Tsai
2023-02-08  8:59     ` AngeloGioacchino Del Regno
2023-02-09  3:46       ` Chen-Yu Tsai
2023-02-09  9:14         ` AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 36/45] clk: mediatek: Allow building MT8192 non-critical clocks as modules AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 37/45] clk: mediatek: Allow MT7622 clocks to be built " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 38/45] clk: mediatek: Allow all MT8167 " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 39/45] clk: mediatek: Allow all MT8183 " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 40/45] clk: mediatek: Allow building most MT6765 clock drivers " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 41/45] clk: mediatek: Allow building most MT6797 " AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 42/45] clk: mediatek: Split configuration options for MT8186 clock drivers AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 43/45] clk: mediatek: mt8192: Move apmixedsys clock driver to its own file AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 44/45] clk: mediatek: Kconfig: Allow module build for core mt8192 clocks AngeloGioacchino Del Regno
2023-02-06 15:29 ` [PATCH v1 45/45] clk: mediatek: Add MODULE_DEVICE_TABLE() where appropriate AngeloGioacchino Del Regno
2023-02-06 15:38 ` [PATCH v1 00/45] MediaTek clocks: full module build and cleanups AngeloGioacchino Del Regno
2023-02-07  9:04   ` Chen-Yu Tsai
2023-02-07  9:19     ` AngeloGioacchino Del Regno
2023-02-07  9:49       ` Chen-Yu Tsai

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=b7b35901-59aa-5342-1bd1-5ed591a0469c@collabora.com \
    --to=angelogioacchino.delregno@collabora.com \
    --cc=chen.zhong@mediatek.com \
    --cc=chun-jie.chen@mediatek.com \
    --cc=daniel@makrotopia.org \
    --cc=edward-jw.yang@mediatek.com \
    --cc=fparent@baylibre.com \
    --cc=granquet@baylibre.com \
    --cc=johnson.wang@mediatek.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=miles.chen@mediatek.com \
    --cc=msp@baylibre.com \
    --cc=mturquette@baylibre.com \
    --cc=nfraprado@collabora.com \
    --cc=pablo.sun@mediatek.com \
    --cc=rex-bc.chen@mediatek.com \
    --cc=sam.shih@mediatek.com \
    --cc=sboyd@kernel.org \
    --cc=sean.wang@mediatek.com \
    --cc=wenst@chromium.org \
    --cc=yangyingliang@huawei.com \
    --cc=zhaojh329@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