mbox series

[00/18] genpd: Create a genpd directory to host genpd providers

Message ID 20230707140434.723349-1-ulf.hansson@linaro.org
Headers show
Series genpd: Create a genpd directory to host genpd providers | expand

Message

Ulf Hansson July 7, 2023, 2:04 p.m. UTC
There are currently ~60 users of the genpd provider interface, which
implementations are sprinkled across various subsystems. To help out with
maintenance and to gain a bit better control, let's create a new subsystem
(drivers/genpd) and move some of the providers from the soc directories in here.

Clearly some providers aren't really feasible to move - and that's perfectly
fine too. We don't need to keep all genpd providers together to improve the
situation, but keeping most of them would be nice, I think. At this point I
have walked through driver/soc and /arch/ - deferring others to later.

Note that, the intention is also to host a git tree (it's not been created yet,
but should be quick if this seems reasonable to everybody), to collect and to
get the patches tested/integrated through the linux-next tree. Ideally this
should release some of the burden on the soc maintainers (Arnd/Olof/etc).

Note that, going forward - it's probably best to funnel this through the soc
tree (I can send a pull request if agreed) the I can take over in the next
release cycle at v6.6-rc1 and onwards. In that case, I will of course require
acks/reviews from the current platform/soc maintainers, hence the MAINTAINERS
are also being updated as a part of $subject series.

Does this make sense?

Kind regards
Ulf Hansson


Ulf Hansson (18):
  genpd: Create a new subsystem directory to host genpd providers
  soc: actions: Move power-domain driver to the genpd dir
  soc: amlogic: Move power-domain drivers to the genpd dir
  soc: apple: Move power-domain driver to the genpd dir
  soc: bcm: Move power-domain drivers to the genpd dir
  soc: imx: Move power-domain drivers to the genpd dir
  soc: mediatek: Move power-domain drivers to the genpd dir
  soc: qcom: Move power-domain drivers to the genpd dir
  soc: renesas: Move power-domain drivers to the genpd dir
  soc: rockchip: Mover power-domain driver to the genpd dir
  soc: samsung: Move power-domain driver to the genpd dir
  soc: starfive: Move the power-domain driver to the genpd dir
  soc: sunxi: Move power-domain driver to the genpd dir
  soc: tegra: Move powergate-bpmp driver to the genpd dir
  soc: ti: Mover power-domain drivers to the genpd dir
  soc: xilinx: Move power-domain driver to the genpd dir
  ARM: ux500: Convert power-domain code into a regular platform driver
  ARM: ux500: Move power-domain driver to the genpd dir

 MAINTAINERS                                   | 22 ++++++++++----
 arch/arm/mach-ux500/Makefile                  |  1 -
 arch/arm/mach-ux500/cpu-db8500.c              |  5 ----
 arch/arm/mach-ux500/pm_domains.h              | 17 -----------
 drivers/Makefile                              |  1 +
 drivers/genpd/Makefile                        | 16 ++++++++++
 drivers/genpd/actions/Makefile                |  2 ++
 drivers/{soc => genpd}/actions/owl-sps.c      |  0
 drivers/genpd/amlogic/Makefile                |  4 +++
 .../{soc => genpd}/amlogic/meson-ee-pwrc.c    |  0
 .../amlogic/meson-gx-pwrc-vpu.c               |  0
 .../amlogic/meson-secure-pwrc.c               |  0
 drivers/genpd/apple/Makefile                  |  2 ++
 .../apple/pmgr-pwrstate.c}                    |  0
 drivers/genpd/bcm/Makefile                    |  5 ++++
 .../{soc/bcm/bcm63xx => genpd/bcm}/bcm-pmb.c  |  0
 drivers/{soc => genpd}/bcm/bcm2835-power.c    |  0
 .../bcm/bcm63xx => genpd/bcm}/bcm63xx-power.c |  0
 .../{soc => genpd}/bcm/raspberrypi-power.c    |  0
 drivers/genpd/imx/Makefile                    |  7 +++++
 drivers/{soc => genpd}/imx/gpc.c              |  0
 drivers/{soc => genpd}/imx/gpcv2.c            |  0
 drivers/{soc => genpd}/imx/imx8m-blk-ctrl.c   |  0
 drivers/{soc => genpd}/imx/imx8mp-blk-ctrl.c  |  0
 drivers/{soc => genpd}/imx/imx93-blk-ctrl.c   |  0
 drivers/{soc => genpd}/imx/imx93-pd.c         |  0
 drivers/genpd/mediatek/Makefile               |  3 ++
 .../mediatek/mt6795-pm-domains.h              |  0
 .../mediatek/mt8167-pm-domains.h              |  0
 .../mediatek/mt8173-pm-domains.h              |  0
 .../mediatek/mt8183-pm-domains.h              |  0
 .../mediatek/mt8186-pm-domains.h              |  0
 .../mediatek/mt8188-pm-domains.h              |  0
 .../mediatek/mt8192-pm-domains.h              |  0
 .../mediatek/mt8195-pm-domains.h              |  0
 .../{soc => genpd}/mediatek/mtk-pm-domains.c  |  0
 .../{soc => genpd}/mediatek/mtk-pm-domains.h  |  0
 drivers/{soc => genpd}/mediatek/mtk-scpsys.c  |  0
 drivers/genpd/qcom/Makefile                   |  4 +++
 drivers/{soc => genpd}/qcom/cpr.c             |  0
 drivers/{soc => genpd}/qcom/rpmhpd.c          |  0
 drivers/{soc => genpd}/qcom/rpmpd.c           |  0
 drivers/genpd/renesas/Makefile                | 30 +++++++++++++++++++
 drivers/{soc => genpd}/renesas/r8a7742-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7743-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7745-sysc.c |  0
 .../{soc => genpd}/renesas/r8a77470-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a774a1-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a774b1-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a774c0-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a774e1-sysc.c    |  0
 drivers/{soc => genpd}/renesas/r8a7779-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7790-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7791-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7792-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7794-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7795-sysc.c |  0
 drivers/{soc => genpd}/renesas/r8a7796-sysc.c |  0
 .../{soc => genpd}/renesas/r8a77965-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a77970-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a77980-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a77990-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a77995-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a779a0-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a779f0-sysc.c    |  0
 .../{soc => genpd}/renesas/r8a779g0-sysc.c    |  0
 .../{soc => genpd}/renesas/rcar-gen4-sysc.c   |  0
 .../{soc => genpd}/renesas/rcar-gen4-sysc.h   |  0
 drivers/{soc => genpd}/renesas/rcar-sysc.c    |  0
 drivers/{soc => genpd}/renesas/rcar-sysc.h    |  0
 drivers/{soc => genpd}/renesas/rmobile-sysc.c |  0
 drivers/genpd/rockchip/Makefile               |  2 ++
 .../rockchip/pm-domains.c}                    |  0
 drivers/genpd/samsung/Makefile                |  2 ++
 .../samsung/exynos-pm-domains.c}              |  0
 drivers/genpd/st/Makefile                     |  2 ++
 .../genpd/st/ste-ux500-pm-domain.c            | 25 ++++++++++++----
 drivers/genpd/starfive/Makefile               |  2 ++
 .../starfive/jh71xx-pmu.c}                    |  0
 drivers/genpd/sunxi/Makefile                  |  2 ++
 drivers/{soc => genpd}/sunxi/sun20i-ppu.c     |  0
 drivers/genpd/tegra/Makefile                  |  2 ++
 drivers/{soc => genpd}/tegra/powergate-bpmp.c |  0
 drivers/genpd/ti/Makefile                     |  3 ++
 drivers/{soc => genpd}/ti/omap_prm.c          |  0
 drivers/{soc => genpd}/ti/ti_sci_pm_domains.c |  0
 drivers/genpd/xilinx/Makefile                 |  2 ++
 .../xilinx/zynqmp-pm-domains.c}               |  0
 drivers/soc/Makefile                          |  1 -
 drivers/soc/actions/Makefile                  |  1 -
 drivers/soc/amlogic/Makefile                  |  3 --
 drivers/soc/apple/Makefile                    |  2 --
 drivers/soc/bcm/Kconfig                       | 22 +++++++++++++-
 drivers/soc/bcm/Makefile                      |  3 --
 drivers/soc/bcm/bcm63xx/Kconfig               | 21 -------------
 drivers/soc/bcm/bcm63xx/Makefile              |  3 --
 drivers/soc/imx/Makefile                      |  7 +----
 drivers/soc/mediatek/Makefile                 |  2 --
 drivers/soc/qcom/Makefile                     |  3 --
 drivers/soc/renesas/Makefile                  | 27 -----------------
 drivers/soc/rockchip/Makefile                 |  1 -
 drivers/soc/samsung/Makefile                  |  1 -
 drivers/soc/starfive/Makefile                 |  3 --
 drivers/soc/sunxi/Makefile                    |  1 -
 drivers/soc/tegra/Makefile                    |  1 -
 drivers/soc/ti/Makefile                       |  2 --
 drivers/soc/xilinx/Makefile                   |  1 -
 107 files changed, 150 insertions(+), 116 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/pm_domains.h
 create mode 100644 drivers/genpd/Makefile
 create mode 100644 drivers/genpd/actions/Makefile
 rename drivers/{soc => genpd}/actions/owl-sps.c (100%)
 create mode 100644 drivers/genpd/amlogic/Makefile
 rename drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c (100%)
 rename drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c (100%)
 rename drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c (100%)
 create mode 100644 drivers/genpd/apple/Makefile
 rename drivers/{soc/apple/apple-pmgr-pwrstate.c => genpd/apple/pmgr-pwrstate.c} (100%)
 create mode 100644 drivers/genpd/bcm/Makefile
 rename drivers/{soc/bcm/bcm63xx => genpd/bcm}/bcm-pmb.c (100%)
 rename drivers/{soc => genpd}/bcm/bcm2835-power.c (100%)
 rename drivers/{soc/bcm/bcm63xx => genpd/bcm}/bcm63xx-power.c (100%)
 rename drivers/{soc => genpd}/bcm/raspberrypi-power.c (100%)
 create mode 100644 drivers/genpd/imx/Makefile
 rename drivers/{soc => genpd}/imx/gpc.c (100%)
 rename drivers/{soc => genpd}/imx/gpcv2.c (100%)
 rename drivers/{soc => genpd}/imx/imx8m-blk-ctrl.c (100%)
 rename drivers/{soc => genpd}/imx/imx8mp-blk-ctrl.c (100%)
 rename drivers/{soc => genpd}/imx/imx93-blk-ctrl.c (100%)
 rename drivers/{soc => genpd}/imx/imx93-pd.c (100%)
 create mode 100644 drivers/genpd/mediatek/Makefile
 rename drivers/{soc => genpd}/mediatek/mt6795-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8167-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8173-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8183-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8186-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8188-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8192-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mt8195-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.c (100%)
 rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.h (100%)
 rename drivers/{soc => genpd}/mediatek/mtk-scpsys.c (100%)
 create mode 100644 drivers/genpd/qcom/Makefile
 rename drivers/{soc => genpd}/qcom/cpr.c (100%)
 rename drivers/{soc => genpd}/qcom/rpmhpd.c (100%)
 rename drivers/{soc => genpd}/qcom/rpmpd.c (100%)
 create mode 100644 drivers/genpd/renesas/Makefile
 rename drivers/{soc => genpd}/renesas/r8a7742-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7743-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7745-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77470-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a774a1-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a774b1-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a774c0-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a774e1-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7779-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7790-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7791-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7792-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7794-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7795-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a7796-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77965-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77970-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77980-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77990-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a77995-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a779a0-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a779f0-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/r8a779g0-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/rcar-gen4-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/rcar-gen4-sysc.h (100%)
 rename drivers/{soc => genpd}/renesas/rcar-sysc.c (100%)
 rename drivers/{soc => genpd}/renesas/rcar-sysc.h (100%)
 rename drivers/{soc => genpd}/renesas/rmobile-sysc.c (100%)
 create mode 100644 drivers/genpd/rockchip/Makefile
 rename drivers/{soc/rockchip/pm_domains.c => genpd/rockchip/pm-domains.c} (100%)
 create mode 100644 drivers/genpd/samsung/Makefile
 rename drivers/{soc/samsung/pm_domains.c => genpd/samsung/exynos-pm-domains.c} (100%)
 create mode 100644 drivers/genpd/st/Makefile
 rename arch/arm/mach-ux500/pm_domains.c => drivers/genpd/st/ste-ux500-pm-domain.c (75%)
 create mode 100644 drivers/genpd/starfive/Makefile
 rename drivers/{soc/starfive/jh71xx_pmu.c => genpd/starfive/jh71xx-pmu.c} (100%)
 create mode 100644 drivers/genpd/sunxi/Makefile
 rename drivers/{soc => genpd}/sunxi/sun20i-ppu.c (100%)
 create mode 100644 drivers/genpd/tegra/Makefile
 rename drivers/{soc => genpd}/tegra/powergate-bpmp.c (100%)
 create mode 100644 drivers/genpd/ti/Makefile
 rename drivers/{soc => genpd}/ti/omap_prm.c (100%)
 rename drivers/{soc => genpd}/ti/ti_sci_pm_domains.c (100%)
 create mode 100644 drivers/genpd/xilinx/Makefile
 rename drivers/{soc/xilinx/zynqmp_pm_domains.c => genpd/xilinx/zynqmp-pm-domains.c} (100%)
 delete mode 100644 drivers/soc/bcm/bcm63xx/Kconfig
 delete mode 100644 drivers/soc/bcm/bcm63xx/Makefile
 delete mode 100644 drivers/soc/starfive/Makefile

Comments

Matthias Brugger July 7, 2023, 2:45 p.m. UTC | #1
On 07/07/2023 16:04, Ulf Hansson wrote:
> Cc: Matthias Brugger <matthias.bgg@gmail.com>
> Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> Cc: <linux-mediatek@lists.infradead.org>
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>

We are missing a complete commit message here, is that intentional?
It would also need a patch against the maintainers file.

Apart from that patch looks good.

Regards,
Matthias

> ---
>   drivers/genpd/Makefile                              | 1 +
>   drivers/genpd/mediatek/Makefile                     | 3 +++
>   drivers/{soc => genpd}/mediatek/mt6795-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8167-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8173-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8183-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8186-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8188-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8192-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mt8195-pm-domains.h | 0
>   drivers/{soc => genpd}/mediatek/mtk-pm-domains.c    | 0
>   drivers/{soc => genpd}/mediatek/mtk-pm-domains.h    | 0
>   drivers/{soc => genpd}/mediatek/mtk-scpsys.c        | 0
>   drivers/soc/mediatek/Makefile                       | 2 --
>   14 files changed, 4 insertions(+), 2 deletions(-)
>   create mode 100644 drivers/genpd/mediatek/Makefile
>   rename drivers/{soc => genpd}/mediatek/mt6795-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8167-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8173-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8183-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8186-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8188-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8192-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mt8195-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.c (100%)
>   rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.h (100%)
>   rename drivers/{soc => genpd}/mediatek/mtk-scpsys.c (100%)
> 
> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> index 6b9e9fe907f3..1a0a56925756 100644
> --- a/drivers/genpd/Makefile
> +++ b/drivers/genpd/Makefile
> @@ -3,3 +3,4 @@ obj-y					+= actions/
>   obj-y					+= amlogic/
>   obj-y					+= apple/
>   obj-y					+= bcm/
> +obj-y					+= mediatek/
> diff --git a/drivers/genpd/mediatek/Makefile b/drivers/genpd/mediatek/Makefile
> new file mode 100644
> index 000000000000..8cde09e654b3
> --- /dev/null
> +++ b/drivers/genpd/mediatek/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +obj-$(CONFIG_MTK_SCPSYS)		+= mtk-scpsys.o
> +obj-$(CONFIG_MTK_SCPSYS_PM_DOMAINS) 	+= mtk-pm-domains.o
> diff --git a/drivers/soc/mediatek/mt6795-pm-domains.h b/drivers/genpd/mediatek/mt6795-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt6795-pm-domains.h
> rename to drivers/genpd/mediatek/mt6795-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8167-pm-domains.h b/drivers/genpd/mediatek/mt8167-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8167-pm-domains.h
> rename to drivers/genpd/mediatek/mt8167-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8173-pm-domains.h b/drivers/genpd/mediatek/mt8173-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8173-pm-domains.h
> rename to drivers/genpd/mediatek/mt8173-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8183-pm-domains.h b/drivers/genpd/mediatek/mt8183-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8183-pm-domains.h
> rename to drivers/genpd/mediatek/mt8183-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8186-pm-domains.h b/drivers/genpd/mediatek/mt8186-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8186-pm-domains.h
> rename to drivers/genpd/mediatek/mt8186-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8188-pm-domains.h b/drivers/genpd/mediatek/mt8188-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8188-pm-domains.h
> rename to drivers/genpd/mediatek/mt8188-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8192-pm-domains.h b/drivers/genpd/mediatek/mt8192-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8192-pm-domains.h
> rename to drivers/genpd/mediatek/mt8192-pm-domains.h
> diff --git a/drivers/soc/mediatek/mt8195-pm-domains.h b/drivers/genpd/mediatek/mt8195-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mt8195-pm-domains.h
> rename to drivers/genpd/mediatek/mt8195-pm-domains.h
> diff --git a/drivers/soc/mediatek/mtk-pm-domains.c b/drivers/genpd/mediatek/mtk-pm-domains.c
> similarity index 100%
> rename from drivers/soc/mediatek/mtk-pm-domains.c
> rename to drivers/genpd/mediatek/mtk-pm-domains.c
> diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/genpd/mediatek/mtk-pm-domains.h
> similarity index 100%
> rename from drivers/soc/mediatek/mtk-pm-domains.h
> rename to drivers/genpd/mediatek/mtk-pm-domains.h
> diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/genpd/mediatek/mtk-scpsys.c
> similarity index 100%
> rename from drivers/soc/mediatek/mtk-scpsys.c
> rename to drivers/genpd/mediatek/mtk-scpsys.c
> diff --git a/drivers/soc/mediatek/Makefile b/drivers/soc/mediatek/Makefile
> index 8c0ddacbcde8..9d3ce7878c5c 100644
> --- a/drivers/soc/mediatek/Makefile
> +++ b/drivers/soc/mediatek/Makefile
> @@ -4,8 +4,6 @@ obj-$(CONFIG_MTK_DEVAPC) += mtk-devapc.o
>   obj-$(CONFIG_MTK_INFRACFG) += mtk-infracfg.o
>   obj-$(CONFIG_MTK_PMIC_WRAP) += mtk-pmic-wrap.o
>   obj-$(CONFIG_MTK_REGULATOR_COUPLER) += mtk-regulator-coupler.o
> -obj-$(CONFIG_MTK_SCPSYS) += mtk-scpsys.o
> -obj-$(CONFIG_MTK_SCPSYS_PM_DOMAINS) += mtk-pm-domains.o
>   obj-$(CONFIG_MTK_MMSYS) += mtk-mmsys.o
>   obj-$(CONFIG_MTK_MMSYS) += mtk-mutex.o
>   obj-$(CONFIG_MTK_SVS) += mtk-svs.o
Ulf Hansson July 7, 2023, 2:59 p.m. UTC | #2
On Fri, 7 Jul 2023 at 16:45, Matthias Brugger <matthias.bgg@gmail.com> wrote:
>
>
>
> On 07/07/2023 16:04, Ulf Hansson wrote:
> > Cc: Matthias Brugger <matthias.bgg@gmail.com>
> > Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> > Cc: <linux-mediatek@lists.infradead.org>
> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
>
> We are missing a complete commit message here, is that intentional?

I was lazy and added the motivations behind this in patch 1. I will
re-spin and fix this.

> It would also need a patch against the maintainers file.

You already have this in the Mediatek SoC section. But I can add the
genpd directory too, to make it explicit if you prefer that?

N:      mtk
N:      mt[2678]
K:      mediatek


>
> Apart from that patch looks good.
>
> Regards,
> Matthias

Thanks!

Kind regards
Uffe

>
> > ---
> >   drivers/genpd/Makefile                              | 1 +
> >   drivers/genpd/mediatek/Makefile                     | 3 +++
> >   drivers/{soc => genpd}/mediatek/mt6795-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8167-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8173-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8183-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8186-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8188-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8192-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mt8195-pm-domains.h | 0
> >   drivers/{soc => genpd}/mediatek/mtk-pm-domains.c    | 0
> >   drivers/{soc => genpd}/mediatek/mtk-pm-domains.h    | 0
> >   drivers/{soc => genpd}/mediatek/mtk-scpsys.c        | 0
> >   drivers/soc/mediatek/Makefile                       | 2 --
> >   14 files changed, 4 insertions(+), 2 deletions(-)
> >   create mode 100644 drivers/genpd/mediatek/Makefile
> >   rename drivers/{soc => genpd}/mediatek/mt6795-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8167-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8173-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8183-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8186-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8188-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8192-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mt8195-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.c (100%)
> >   rename drivers/{soc => genpd}/mediatek/mtk-pm-domains.h (100%)
> >   rename drivers/{soc => genpd}/mediatek/mtk-scpsys.c (100%)
> >
> > diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> > index 6b9e9fe907f3..1a0a56925756 100644
> > --- a/drivers/genpd/Makefile
> > +++ b/drivers/genpd/Makefile
> > @@ -3,3 +3,4 @@ obj-y                                 += actions/
> >   obj-y                                       += amlogic/
> >   obj-y                                       += apple/
> >   obj-y                                       += bcm/
> > +obj-y                                        += mediatek/
> > diff --git a/drivers/genpd/mediatek/Makefile b/drivers/genpd/mediatek/Makefile
> > new file mode 100644
> > index 000000000000..8cde09e654b3
> > --- /dev/null
> > +++ b/drivers/genpd/mediatek/Makefile
> > @@ -0,0 +1,3 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +obj-$(CONFIG_MTK_SCPSYS)             += mtk-scpsys.o
> > +obj-$(CONFIG_MTK_SCPSYS_PM_DOMAINS)  += mtk-pm-domains.o
> > diff --git a/drivers/soc/mediatek/mt6795-pm-domains.h b/drivers/genpd/mediatek/mt6795-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt6795-pm-domains.h
> > rename to drivers/genpd/mediatek/mt6795-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8167-pm-domains.h b/drivers/genpd/mediatek/mt8167-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8167-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8167-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8173-pm-domains.h b/drivers/genpd/mediatek/mt8173-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8173-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8173-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8183-pm-domains.h b/drivers/genpd/mediatek/mt8183-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8183-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8183-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8186-pm-domains.h b/drivers/genpd/mediatek/mt8186-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8186-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8186-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8188-pm-domains.h b/drivers/genpd/mediatek/mt8188-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8188-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8188-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8192-pm-domains.h b/drivers/genpd/mediatek/mt8192-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8192-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8192-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mt8195-pm-domains.h b/drivers/genpd/mediatek/mt8195-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mt8195-pm-domains.h
> > rename to drivers/genpd/mediatek/mt8195-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mtk-pm-domains.c b/drivers/genpd/mediatek/mtk-pm-domains.c
> > similarity index 100%
> > rename from drivers/soc/mediatek/mtk-pm-domains.c
> > rename to drivers/genpd/mediatek/mtk-pm-domains.c
> > diff --git a/drivers/soc/mediatek/mtk-pm-domains.h b/drivers/genpd/mediatek/mtk-pm-domains.h
> > similarity index 100%
> > rename from drivers/soc/mediatek/mtk-pm-domains.h
> > rename to drivers/genpd/mediatek/mtk-pm-domains.h
> > diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/genpd/mediatek/mtk-scpsys.c
> > similarity index 100%
> > rename from drivers/soc/mediatek/mtk-scpsys.c
> > rename to drivers/genpd/mediatek/mtk-scpsys.c
> > diff --git a/drivers/soc/mediatek/Makefile b/drivers/soc/mediatek/Makefile
> > index 8c0ddacbcde8..9d3ce7878c5c 100644
> > --- a/drivers/soc/mediatek/Makefile
> > +++ b/drivers/soc/mediatek/Makefile
> > @@ -4,8 +4,6 @@ obj-$(CONFIG_MTK_DEVAPC) += mtk-devapc.o
> >   obj-$(CONFIG_MTK_INFRACFG) += mtk-infracfg.o
> >   obj-$(CONFIG_MTK_PMIC_WRAP) += mtk-pmic-wrap.o
> >   obj-$(CONFIG_MTK_REGULATOR_COUPLER) += mtk-regulator-coupler.o
> > -obj-$(CONFIG_MTK_SCPSYS) += mtk-scpsys.o
> > -obj-$(CONFIG_MTK_SCPSYS_PM_DOMAINS) += mtk-pm-domains.o
> >   obj-$(CONFIG_MTK_MMSYS) += mtk-mmsys.o
> >   obj-$(CONFIG_MTK_MMSYS) += mtk-mutex.o
> >   obj-$(CONFIG_MTK_SVS) += mtk-svs.o
Neil Armstrong July 7, 2023, 3:12 p.m. UTC | #3
On 07/07/2023 16:54, Ulf Hansson wrote:
> On Fri, 7 Jul 2023 at 16:42, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>>
>> Hi,
>>
>> On 07/07/2023 16:04, Ulf Hansson wrote:
>>> Cc: Neil Armstrong <neil.armstrong@linaro.org>
>>> Cc: Kevin Hilman <khilman@baylibre.com>
>>> Cc: Jerome Brunet <jbrunet@baylibre.com>
>>> Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
>>> Cc: <linux-amlogic@lists.infradead.org>
>>> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
>>> ---
>>>    MAINTAINERS                                        | 1 +
>>>    drivers/genpd/Makefile                             | 1 +
>>>    drivers/genpd/amlogic/Makefile                     | 4 ++++
>>>    drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c     | 0
>>>    drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c | 0
>>>    drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c | 0
>>>    drivers/soc/Makefile                               | 1 -
>>>    drivers/soc/amlogic/Makefile                       | 3 ---
>>>    8 files changed, 6 insertions(+), 4 deletions(-)
>>>    create mode 100644 drivers/genpd/amlogic/Makefile
>>>    rename drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c (100%)
>>>    rename drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c (100%)
>>>    rename drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c (100%)
>>>
>>> diff --git a/MAINTAINERS b/MAINTAINERS
>>> index 588769fab516..9b8c9ae2375d 100644
>>> --- a/MAINTAINERS
>>> +++ b/MAINTAINERS
>>> @@ -1843,6 +1843,7 @@ F:      Documentation/devicetree/bindings/phy/amlogic*
>>>    F:  arch/arm/boot/dts/amlogic/
>>>    F:  arch/arm/mach-meson/
>>>    F:  arch/arm64/boot/dts/amlogic/
>>> +F:   drivers/genpd/amlogic/
>>>    F:  drivers/mmc/host/meson*
>>>    F:  drivers/phy/amlogic/
>>>    F:  drivers/pinctrl/meson/
>>> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
>>> index a2d5b2095915..cdba3b9f0c75 100644
>>> --- a/drivers/genpd/Makefile
>>> +++ b/drivers/genpd/Makefile
>>> @@ -1,2 +1,3 @@
>>>    # SPDX-License-Identifier: GPL-2.0-only
>>>    obj-y                                       += actions/
>>> +obj-y                                        += amlogic/
>>> diff --git a/drivers/genpd/amlogic/Makefile b/drivers/genpd/amlogic/Makefile
>>> new file mode 100644
>>> index 000000000000..3d58abd574f9
>>> --- /dev/null
>>> +++ b/drivers/genpd/amlogic/Makefile
>>> @@ -0,0 +1,4 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> +obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
>>> +obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
>>> +obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
>>> diff --git a/drivers/soc/amlogic/meson-ee-pwrc.c b/drivers/genpd/amlogic/meson-ee-pwrc.c
>>> similarity index 100%
>>> rename from drivers/soc/amlogic/meson-ee-pwrc.c
>>> rename to drivers/genpd/amlogic/meson-ee-pwrc.c
>>> diff --git a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c b/drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
>>> similarity index 100%
>>> rename from drivers/soc/amlogic/meson-gx-pwrc-vpu.c
>>> rename to drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
>>> diff --git a/drivers/soc/amlogic/meson-secure-pwrc.c b/drivers/genpd/amlogic/meson-secure-pwrc.c
>>> similarity index 100%
>>> rename from drivers/soc/amlogic/meson-secure-pwrc.c
>>> rename to drivers/genpd/amlogic/meson-secure-pwrc.c
>>> diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
>>> index 3b0f9fb3b5c8..dc93e1762ca7 100644
>>> --- a/drivers/soc/Makefile
>>> +++ b/drivers/soc/Makefile
>>> @@ -23,7 +23,6 @@ obj-y                               += mediatek/
>>>    obj-y                               += microchip/
>>>    obj-y                               += nuvoton/
>>>    obj-y                               += pxa/
>>> -obj-y                                += amlogic/
>>>    obj-y                               += qcom/
>>>    obj-y                               += renesas/
>>>    obj-y                               += rockchip/
>>> diff --git a/drivers/soc/amlogic/Makefile b/drivers/soc/amlogic/Makefile
>>> index 7b8c5d323f5c..c25f835e6a26 100644
>>> --- a/drivers/soc/amlogic/Makefile
>>> +++ b/drivers/soc/amlogic/Makefile
>>> @@ -2,7 +2,4 @@
>>>    obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
>>>    obj-$(CONFIG_MESON_CLK_MEASURE) += meson-clk-measure.o
>>>    obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
>>> -obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
>>>    obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
>>> -obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
>>> -obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
>>
>> I've a few changes for v6.6, how shall we handle that ?
> 
> I think we should continue to use the soc tree until v6.6-rc1 (or if
> Arnd have some other ideas), there are some more thoughts around this
> in the cover letter.
> 
> Beyond v6.6-rc1 I plan to help with maintenance in practice  and run
> my own separate git tree.

If it helps I can send you a PR with only the pwrc changes you can merge
before applying this serie.

Neil

> 
>>
>> Acked-by: Neil Armstrong <neil.armstrong@linaro.org>
>>
>> Thanks !
>> Neil
> 
> Thanks!
> 
> Kind regards
> Uffe
Ulf Hansson July 7, 2023, 3:27 p.m. UTC | #4
On Fri, 7 Jul 2023 at 17:12, <neil.armstrong@linaro.org> wrote:
>
> On 07/07/2023 16:54, Ulf Hansson wrote:
> > On Fri, 7 Jul 2023 at 16:42, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> >>
> >> Hi,
> >>
> >> On 07/07/2023 16:04, Ulf Hansson wrote:
> >>> Cc: Neil Armstrong <neil.armstrong@linaro.org>
> >>> Cc: Kevin Hilman <khilman@baylibre.com>
> >>> Cc: Jerome Brunet <jbrunet@baylibre.com>
> >>> Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> >>> Cc: <linux-amlogic@lists.infradead.org>
> >>> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> >>> ---
> >>>    MAINTAINERS                                        | 1 +
> >>>    drivers/genpd/Makefile                             | 1 +
> >>>    drivers/genpd/amlogic/Makefile                     | 4 ++++
> >>>    drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c     | 0
> >>>    drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c | 0
> >>>    drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c | 0
> >>>    drivers/soc/Makefile                               | 1 -
> >>>    drivers/soc/amlogic/Makefile                       | 3 ---
> >>>    8 files changed, 6 insertions(+), 4 deletions(-)
> >>>    create mode 100644 drivers/genpd/amlogic/Makefile
> >>>    rename drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c (100%)
> >>>    rename drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c (100%)
> >>>    rename drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c (100%)
> >>>
> >>> diff --git a/MAINTAINERS b/MAINTAINERS
> >>> index 588769fab516..9b8c9ae2375d 100644
> >>> --- a/MAINTAINERS
> >>> +++ b/MAINTAINERS
> >>> @@ -1843,6 +1843,7 @@ F:      Documentation/devicetree/bindings/phy/amlogic*
> >>>    F:  arch/arm/boot/dts/amlogic/
> >>>    F:  arch/arm/mach-meson/
> >>>    F:  arch/arm64/boot/dts/amlogic/
> >>> +F:   drivers/genpd/amlogic/
> >>>    F:  drivers/mmc/host/meson*
> >>>    F:  drivers/phy/amlogic/
> >>>    F:  drivers/pinctrl/meson/
> >>> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> >>> index a2d5b2095915..cdba3b9f0c75 100644
> >>> --- a/drivers/genpd/Makefile
> >>> +++ b/drivers/genpd/Makefile
> >>> @@ -1,2 +1,3 @@
> >>>    # SPDX-License-Identifier: GPL-2.0-only
> >>>    obj-y                                       += actions/
> >>> +obj-y                                        += amlogic/
> >>> diff --git a/drivers/genpd/amlogic/Makefile b/drivers/genpd/amlogic/Makefile
> >>> new file mode 100644
> >>> index 000000000000..3d58abd574f9
> >>> --- /dev/null
> >>> +++ b/drivers/genpd/amlogic/Makefile
> >>> @@ -0,0 +1,4 @@
> >>> +# SPDX-License-Identifier: GPL-2.0-only
> >>> +obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> >>> +obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> >>> +obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> >>> diff --git a/drivers/soc/amlogic/meson-ee-pwrc.c b/drivers/genpd/amlogic/meson-ee-pwrc.c
> >>> similarity index 100%
> >>> rename from drivers/soc/amlogic/meson-ee-pwrc.c
> >>> rename to drivers/genpd/amlogic/meson-ee-pwrc.c
> >>> diff --git a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c b/drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> >>> similarity index 100%
> >>> rename from drivers/soc/amlogic/meson-gx-pwrc-vpu.c
> >>> rename to drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> >>> diff --git a/drivers/soc/amlogic/meson-secure-pwrc.c b/drivers/genpd/amlogic/meson-secure-pwrc.c
> >>> similarity index 100%
> >>> rename from drivers/soc/amlogic/meson-secure-pwrc.c
> >>> rename to drivers/genpd/amlogic/meson-secure-pwrc.c
> >>> diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
> >>> index 3b0f9fb3b5c8..dc93e1762ca7 100644
> >>> --- a/drivers/soc/Makefile
> >>> +++ b/drivers/soc/Makefile
> >>> @@ -23,7 +23,6 @@ obj-y                               += mediatek/
> >>>    obj-y                               += microchip/
> >>>    obj-y                               += nuvoton/
> >>>    obj-y                               += pxa/
> >>> -obj-y                                += amlogic/
> >>>    obj-y                               += qcom/
> >>>    obj-y                               += renesas/
> >>>    obj-y                               += rockchip/
> >>> diff --git a/drivers/soc/amlogic/Makefile b/drivers/soc/amlogic/Makefile
> >>> index 7b8c5d323f5c..c25f835e6a26 100644
> >>> --- a/drivers/soc/amlogic/Makefile
> >>> +++ b/drivers/soc/amlogic/Makefile
> >>> @@ -2,7 +2,4 @@
> >>>    obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
> >>>    obj-$(CONFIG_MESON_CLK_MEASURE) += meson-clk-measure.o
> >>>    obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
> >>> -obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> >>>    obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
> >>> -obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> >>> -obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> >>
> >> I've a few changes for v6.6, how shall we handle that ?
> >
> > I think we should continue to use the soc tree until v6.6-rc1 (or if
> > Arnd have some other ideas), there are some more thoughts around this
> > in the cover letter.
> >
> > Beyond v6.6-rc1 I plan to help with maintenance in practice  and run
> > my own separate git tree.
>
> If it helps I can send you a PR with only the pwrc changes you can merge
> before applying this serie.

Right, that could be a good idea, but let's defer to Arnd before we
agree on the way forward.

Kind regards
Uffe
Nishanth Menon July 7, 2023, 5:50 p.m. UTC | #5
On 16:04-20230707, Ulf Hansson wrote:
> Cc: Nishanth Menon <nm@ti.com>
> Cc: Santosh Shilimkar <ssantosh@kernel.org>
> Cc: Tero Kristo <kristo@kernel.org>
> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> ---
>  MAINTAINERS                                   | 3 ++-
>  drivers/genpd/Makefile                        | 1 +
>  drivers/genpd/ti/Makefile                     | 3 +++
>  drivers/{soc => genpd}/ti/omap_prm.c          | 0
>  drivers/{soc => genpd}/ti/ti_sci_pm_domains.c | 0
>  drivers/soc/ti/Makefile                       | 2 --
>  6 files changed, 6 insertions(+), 3 deletions(-)
>  create mode 100644 drivers/genpd/ti/Makefile
>  rename drivers/{soc => genpd}/ti/omap_prm.c (100%)
>  rename drivers/{soc => genpd}/ti/ti_sci_pm_domains.c (100%)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9e580df3e5db..3cf16ffac892 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -21101,7 +21101,7 @@ F:	drivers/irqchip/irq-ti-sci-inta.c
>  F:	drivers/irqchip/irq-ti-sci-intr.c
>  F:	drivers/reset/reset-ti-sci.c
>  F:	drivers/soc/ti/ti_sci_inta_msi.c
> -F:	drivers/soc/ti/ti_sci_pm_domains.c
> +F:	drivers/genpd/ti/ti_sci_pm_domains.c
>  F:	include/dt-bindings/soc/ti,sci_pm_domain.h
>  F:	include/linux/soc/ti/ti_sci_inta_msi.h
>  F:	include/linux/soc/ti/ti_sci_protocol.h
> @@ -21335,6 +21335,7 @@ L:	linux-kernel@vger.kernel.org
>  L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
>  S:	Maintained
>  T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
> +F:	drivers/genpd/ti/omap_prm.c

Probably the wrong place for this as omap_prm is'nt a keystone navigator
driver set. Maybe Tony has a suggestion?

>  F:	drivers/soc/ti/*
>  
>  TI LM49xxx FAMILY ASoC CODEC DRIVERS
> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> index e6f34d82e6a8..193892189f0d 100644
> --- a/drivers/genpd/Makefile
> +++ b/drivers/genpd/Makefile
> @@ -11,3 +11,4 @@ obj-y					+= samsung/
>  obj-y					+= starfive/
>  obj-y					+= sunxi/
>  obj-y					+= tegra/
> +obj-y					+= ti/
> diff --git a/drivers/genpd/ti/Makefile b/drivers/genpd/ti/Makefile
> new file mode 100644
> index 000000000000..69580afbb436
> --- /dev/null
> +++ b/drivers/genpd/ti/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +obj-$(CONFIG_ARCH_OMAP2PLUS)		+= omap_prm.o
> +obj-$(CONFIG_TI_SCI_PM_DOMAINS)		+= ti_sci_pm_domains.o
> diff --git a/drivers/soc/ti/omap_prm.c b/drivers/genpd/ti/omap_prm.c
> similarity index 100%
> rename from drivers/soc/ti/omap_prm.c
> rename to drivers/genpd/ti/omap_prm.c
> diff --git a/drivers/soc/ti/ti_sci_pm_domains.c b/drivers/genpd/ti/ti_sci_pm_domains.c
> similarity index 100%
> rename from drivers/soc/ti/ti_sci_pm_domains.c
> rename to drivers/genpd/ti/ti_sci_pm_domains.c
> diff --git a/drivers/soc/ti/Makefile b/drivers/soc/ti/Makefile
> index cc3c972fad2e..cb800a745e66 100644
> --- a/drivers/soc/ti/Makefile
> +++ b/drivers/soc/ti/Makefile
> @@ -6,9 +6,7 @@ obj-$(CONFIG_KEYSTONE_NAVIGATOR_QMSS)	+= knav_qmss.o
>  knav_qmss-y := knav_qmss_queue.o knav_qmss_acc.o
>  obj-$(CONFIG_KEYSTONE_NAVIGATOR_DMA)	+= knav_dma.o
>  obj-$(CONFIG_AMX3_PM)			+= pm33xx.o
> -obj-$(CONFIG_ARCH_OMAP2PLUS)		+= omap_prm.o
>  obj-$(CONFIG_WKUP_M3_IPC)		+= wkup_m3_ipc.o
> -obj-$(CONFIG_TI_SCI_PM_DOMAINS)		+= ti_sci_pm_domains.o
>  obj-$(CONFIG_TI_SCI_INTA_MSI_DOMAIN)	+= ti_sci_inta_msi.o
>  obj-$(CONFIG_TI_K3_RINGACC)		+= k3-ringacc.o
>  obj-$(CONFIG_TI_K3_SOCINFO)		+= k3-socinfo.o
> -- 
> 2.34.1
>
Arnd Bergmann July 7, 2023, 7:04 p.m. UTC | #6
On Fri, Jul 7, 2023, at 16:54, Ulf Hansson wrote:
> On Fri, 7 Jul 2023 at 16:42, Neil Armstrong <neil.armstrong@linaro.org> wrote:

>> > @@ -2,7 +2,4 @@
>> >   obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
>> >   obj-$(CONFIG_MESON_CLK_MEASURE) += meson-clk-measure.o
>> >   obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
>> > -obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
>> >   obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
>> > -obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
>> > -obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
>>
>> I've a few changes for v6.6, how shall we handle that ?
>
> I think we should continue to use the soc tree until v6.6-rc1 (or if
> Arnd have some other ideas), there are some more thoughts around this
> in the cover letter.

Right, I think I can handle the merge conflicts as I add stuff
to the soc tree.

     Arnd
Bjorn Andersson July 9, 2023, 2:25 a.m. UTC | #7
On Fri, Jul 07, 2023 at 05:27:39PM +0200, Ulf Hansson wrote:
> On Fri, 7 Jul 2023 at 17:12, <neil.armstrong@linaro.org> wrote:
> >
> > On 07/07/2023 16:54, Ulf Hansson wrote:
> > > On Fri, 7 Jul 2023 at 16:42, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> > >>
> > >> Hi,
> > >>
> > >> On 07/07/2023 16:04, Ulf Hansson wrote:
> > >>> Cc: Neil Armstrong <neil.armstrong@linaro.org>
> > >>> Cc: Kevin Hilman <khilman@baylibre.com>
> > >>> Cc: Jerome Brunet <jbrunet@baylibre.com>
> > >>> Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> > >>> Cc: <linux-amlogic@lists.infradead.org>
> > >>> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > >>> ---
> > >>>    MAINTAINERS                                        | 1 +
> > >>>    drivers/genpd/Makefile                             | 1 +
> > >>>    drivers/genpd/amlogic/Makefile                     | 4 ++++
> > >>>    drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c     | 0
> > >>>    drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c | 0
> > >>>    drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c | 0
> > >>>    drivers/soc/Makefile                               | 1 -
> > >>>    drivers/soc/amlogic/Makefile                       | 3 ---
> > >>>    8 files changed, 6 insertions(+), 4 deletions(-)
> > >>>    create mode 100644 drivers/genpd/amlogic/Makefile
> > >>>    rename drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c (100%)
> > >>>    rename drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c (100%)
> > >>>    rename drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c (100%)
> > >>>
> > >>> diff --git a/MAINTAINERS b/MAINTAINERS
> > >>> index 588769fab516..9b8c9ae2375d 100644
> > >>> --- a/MAINTAINERS
> > >>> +++ b/MAINTAINERS
> > >>> @@ -1843,6 +1843,7 @@ F:      Documentation/devicetree/bindings/phy/amlogic*
> > >>>    F:  arch/arm/boot/dts/amlogic/
> > >>>    F:  arch/arm/mach-meson/
> > >>>    F:  arch/arm64/boot/dts/amlogic/
> > >>> +F:   drivers/genpd/amlogic/
> > >>>    F:  drivers/mmc/host/meson*
> > >>>    F:  drivers/phy/amlogic/
> > >>>    F:  drivers/pinctrl/meson/
> > >>> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> > >>> index a2d5b2095915..cdba3b9f0c75 100644
> > >>> --- a/drivers/genpd/Makefile
> > >>> +++ b/drivers/genpd/Makefile
> > >>> @@ -1,2 +1,3 @@
> > >>>    # SPDX-License-Identifier: GPL-2.0-only
> > >>>    obj-y                                       += actions/
> > >>> +obj-y                                        += amlogic/
> > >>> diff --git a/drivers/genpd/amlogic/Makefile b/drivers/genpd/amlogic/Makefile
> > >>> new file mode 100644
> > >>> index 000000000000..3d58abd574f9
> > >>> --- /dev/null
> > >>> +++ b/drivers/genpd/amlogic/Makefile
> > >>> @@ -0,0 +1,4 @@
> > >>> +# SPDX-License-Identifier: GPL-2.0-only
> > >>> +obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> > >>> +obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> > >>> +obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> > >>> diff --git a/drivers/soc/amlogic/meson-ee-pwrc.c b/drivers/genpd/amlogic/meson-ee-pwrc.c
> > >>> similarity index 100%
> > >>> rename from drivers/soc/amlogic/meson-ee-pwrc.c
> > >>> rename to drivers/genpd/amlogic/meson-ee-pwrc.c
> > >>> diff --git a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c b/drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> > >>> similarity index 100%
> > >>> rename from drivers/soc/amlogic/meson-gx-pwrc-vpu.c
> > >>> rename to drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> > >>> diff --git a/drivers/soc/amlogic/meson-secure-pwrc.c b/drivers/genpd/amlogic/meson-secure-pwrc.c
> > >>> similarity index 100%
> > >>> rename from drivers/soc/amlogic/meson-secure-pwrc.c
> > >>> rename to drivers/genpd/amlogic/meson-secure-pwrc.c
> > >>> diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
> > >>> index 3b0f9fb3b5c8..dc93e1762ca7 100644
> > >>> --- a/drivers/soc/Makefile
> > >>> +++ b/drivers/soc/Makefile
> > >>> @@ -23,7 +23,6 @@ obj-y                               += mediatek/
> > >>>    obj-y                               += microchip/
> > >>>    obj-y                               += nuvoton/
> > >>>    obj-y                               += pxa/
> > >>> -obj-y                                += amlogic/
> > >>>    obj-y                               += qcom/
> > >>>    obj-y                               += renesas/
> > >>>    obj-y                               += rockchip/
> > >>> diff --git a/drivers/soc/amlogic/Makefile b/drivers/soc/amlogic/Makefile
> > >>> index 7b8c5d323f5c..c25f835e6a26 100644
> > >>> --- a/drivers/soc/amlogic/Makefile
> > >>> +++ b/drivers/soc/amlogic/Makefile
> > >>> @@ -2,7 +2,4 @@
> > >>>    obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
> > >>>    obj-$(CONFIG_MESON_CLK_MEASURE) += meson-clk-measure.o
> > >>>    obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
> > >>> -obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> > >>>    obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
> > >>> -obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> > >>> -obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> > >>
> > >> I've a few changes for v6.6, how shall we handle that ?
> > >
> > > I think we should continue to use the soc tree until v6.6-rc1 (or if
> > > Arnd have some other ideas), there are some more thoughts around this
> > > in the cover letter.
> > >
> > > Beyond v6.6-rc1 I plan to help with maintenance in practice  and run
> > > my own separate git tree.
> >
> > If it helps I can send you a PR with only the pwrc changes you can merge
> > before applying this serie.
> 
> Right, that could be a good idea, but let's defer to Arnd before we
> agree on the way forward.
> 

How about sharing an immutable branch/tag with patch 1, then each one of
us can merge that together with the soc-specific change, followed by any
subsequent patches - leading up to the next merge window.

Stephen will have a merge conflict in drivers/genpd/Makefile as each
soc-specific addition comes in, and Arnd will see this conflict too. But
this is going to be extremely trivial. But apart from this, there will
not be any conflicts or additional branching constraints for us...

Regards,
Bjorn

> Kind regards
> Uffe
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Ulf Hansson July 10, 2023, 12:37 p.m. UTC | #8
On Sun, 9 Jul 2023 at 04:21, Bjorn Andersson <andersson@kernel.org> wrote:
>
> On Fri, Jul 07, 2023 at 05:27:39PM +0200, Ulf Hansson wrote:
> > On Fri, 7 Jul 2023 at 17:12, <neil.armstrong@linaro.org> wrote:
> > >
> > > On 07/07/2023 16:54, Ulf Hansson wrote:
> > > > On Fri, 7 Jul 2023 at 16:42, Neil Armstrong <neil.armstrong@linaro.org> wrote:
> > > >>
> > > >> Hi,
> > > >>
> > > >> On 07/07/2023 16:04, Ulf Hansson wrote:
> > > >>> Cc: Neil Armstrong <neil.armstrong@linaro.org>
> > > >>> Cc: Kevin Hilman <khilman@baylibre.com>
> > > >>> Cc: Jerome Brunet <jbrunet@baylibre.com>
> > > >>> Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
> > > >>> Cc: <linux-amlogic@lists.infradead.org>
> > > >>> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > >>> ---
> > > >>>    MAINTAINERS                                        | 1 +
> > > >>>    drivers/genpd/Makefile                             | 1 +
> > > >>>    drivers/genpd/amlogic/Makefile                     | 4 ++++
> > > >>>    drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c     | 0
> > > >>>    drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c | 0
> > > >>>    drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c | 0
> > > >>>    drivers/soc/Makefile                               | 1 -
> > > >>>    drivers/soc/amlogic/Makefile                       | 3 ---
> > > >>>    8 files changed, 6 insertions(+), 4 deletions(-)
> > > >>>    create mode 100644 drivers/genpd/amlogic/Makefile
> > > >>>    rename drivers/{soc => genpd}/amlogic/meson-ee-pwrc.c (100%)
> > > >>>    rename drivers/{soc => genpd}/amlogic/meson-gx-pwrc-vpu.c (100%)
> > > >>>    rename drivers/{soc => genpd}/amlogic/meson-secure-pwrc.c (100%)
> > > >>>
> > > >>> diff --git a/MAINTAINERS b/MAINTAINERS
> > > >>> index 588769fab516..9b8c9ae2375d 100644
> > > >>> --- a/MAINTAINERS
> > > >>> +++ b/MAINTAINERS
> > > >>> @@ -1843,6 +1843,7 @@ F:      Documentation/devicetree/bindings/phy/amlogic*
> > > >>>    F:  arch/arm/boot/dts/amlogic/
> > > >>>    F:  arch/arm/mach-meson/
> > > >>>    F:  arch/arm64/boot/dts/amlogic/
> > > >>> +F:   drivers/genpd/amlogic/
> > > >>>    F:  drivers/mmc/host/meson*
> > > >>>    F:  drivers/phy/amlogic/
> > > >>>    F:  drivers/pinctrl/meson/
> > > >>> diff --git a/drivers/genpd/Makefile b/drivers/genpd/Makefile
> > > >>> index a2d5b2095915..cdba3b9f0c75 100644
> > > >>> --- a/drivers/genpd/Makefile
> > > >>> +++ b/drivers/genpd/Makefile
> > > >>> @@ -1,2 +1,3 @@
> > > >>>    # SPDX-License-Identifier: GPL-2.0-only
> > > >>>    obj-y                                       += actions/
> > > >>> +obj-y                                        += amlogic/
> > > >>> diff --git a/drivers/genpd/amlogic/Makefile b/drivers/genpd/amlogic/Makefile
> > > >>> new file mode 100644
> > > >>> index 000000000000..3d58abd574f9
> > > >>> --- /dev/null
> > > >>> +++ b/drivers/genpd/amlogic/Makefile
> > > >>> @@ -0,0 +1,4 @@
> > > >>> +# SPDX-License-Identifier: GPL-2.0-only
> > > >>> +obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> > > >>> +obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> > > >>> +obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> > > >>> diff --git a/drivers/soc/amlogic/meson-ee-pwrc.c b/drivers/genpd/amlogic/meson-ee-pwrc.c
> > > >>> similarity index 100%
> > > >>> rename from drivers/soc/amlogic/meson-ee-pwrc.c
> > > >>> rename to drivers/genpd/amlogic/meson-ee-pwrc.c
> > > >>> diff --git a/drivers/soc/amlogic/meson-gx-pwrc-vpu.c b/drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> > > >>> similarity index 100%
> > > >>> rename from drivers/soc/amlogic/meson-gx-pwrc-vpu.c
> > > >>> rename to drivers/genpd/amlogic/meson-gx-pwrc-vpu.c
> > > >>> diff --git a/drivers/soc/amlogic/meson-secure-pwrc.c b/drivers/genpd/amlogic/meson-secure-pwrc.c
> > > >>> similarity index 100%
> > > >>> rename from drivers/soc/amlogic/meson-secure-pwrc.c
> > > >>> rename to drivers/genpd/amlogic/meson-secure-pwrc.c
> > > >>> diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
> > > >>> index 3b0f9fb3b5c8..dc93e1762ca7 100644
> > > >>> --- a/drivers/soc/Makefile
> > > >>> +++ b/drivers/soc/Makefile
> > > >>> @@ -23,7 +23,6 @@ obj-y                               += mediatek/
> > > >>>    obj-y                               += microchip/
> > > >>>    obj-y                               += nuvoton/
> > > >>>    obj-y                               += pxa/
> > > >>> -obj-y                                += amlogic/
> > > >>>    obj-y                               += qcom/
> > > >>>    obj-y                               += renesas/
> > > >>>    obj-y                               += rockchip/
> > > >>> diff --git a/drivers/soc/amlogic/Makefile b/drivers/soc/amlogic/Makefile
> > > >>> index 7b8c5d323f5c..c25f835e6a26 100644
> > > >>> --- a/drivers/soc/amlogic/Makefile
> > > >>> +++ b/drivers/soc/amlogic/Makefile
> > > >>> @@ -2,7 +2,4 @@
> > > >>>    obj-$(CONFIG_MESON_CANVAS) += meson-canvas.o
> > > >>>    obj-$(CONFIG_MESON_CLK_MEASURE) += meson-clk-measure.o
> > > >>>    obj-$(CONFIG_MESON_GX_SOCINFO) += meson-gx-socinfo.o
> > > >>> -obj-$(CONFIG_MESON_GX_PM_DOMAINS) += meson-gx-pwrc-vpu.o
> > > >>>    obj-$(CONFIG_MESON_MX_SOCINFO) += meson-mx-socinfo.o
> > > >>> -obj-$(CONFIG_MESON_EE_PM_DOMAINS) += meson-ee-pwrc.o
> > > >>> -obj-$(CONFIG_MESON_SECURE_PM_DOMAINS) += meson-secure-pwrc.o
> > > >>
> > > >> I've a few changes for v6.6, how shall we handle that ?
> > > >
> > > > I think we should continue to use the soc tree until v6.6-rc1 (or if
> > > > Arnd have some other ideas), there are some more thoughts around this
> > > > in the cover letter.
> > > >
> > > > Beyond v6.6-rc1 I plan to help with maintenance in practice  and run
> > > > my own separate git tree.
> > >
> > > If it helps I can send you a PR with only the pwrc changes you can merge
> > > before applying this serie.
> >
> > Right, that could be a good idea, but let's defer to Arnd before we
> > agree on the way forward.
> >
>
> How about sharing an immutable branch/tag with patch 1, then each one of
> us can merge that together with the soc-specific change, followed by any
> subsequent patches - leading up to the next merge window.
>
> Stephen will have a merge conflict in drivers/genpd/Makefile as each
> soc-specific addition comes in, and Arnd will see this conflict too. But
> this is going to be extremely trivial. But apart from this, there will
> not be any conflicts or additional branching constraints for us...
>

If I understand correctly, you are suggesting that each platform
maintainer should merge the immutable branch with patch1 - and that I
should send the patches (based on the immutable branch) to each of the
platform maintainers to manage. Instead of one pull request with
everything directly to Arnd, right?

This still means that Arnd will have to resolve the conflicts as the
pull requests arrive in his inbox.

Although, I guess what you are looking for is less work for the soc/
maintainers, which seems reasonable. Although, in that case, I might
as well share an immutable branch with the complete series, rather
than just patch1. That should help Arnd too, I think.

Again, let's leave the call to Arnd on what to do.

Kind regards
Uffe
Arnd Bergmann July 10, 2023, 12:45 p.m. UTC | #9
On Mon, Jul 10, 2023, at 14:37, Ulf Hansson wrote:
> On Sun, 9 Jul 2023 at 04:21, Bjorn Andersson <andersson@kernel.org> wrote:
>> On Fri, Jul 07, 2023 at 05:27:39PM +0200, Ulf Hansson wrote:
>
> If I understand correctly, you are suggesting that each platform
> maintainer should merge the immutable branch with patch1 - and that I
> should send the patches (based on the immutable branch) to each of the
> platform maintainers to manage. Instead of one pull request with
> everything directly to Arnd, right?
>
> This still means that Arnd will have to resolve the conflicts as the
> pull requests arrive in his inbox.
>
> Although, I guess what you are looking for is less work for the soc/
> maintainers, which seems reasonable. Although, in that case, I might
> as well share an immutable branch with the complete series, rather
> than just patch1. That should help Arnd too, I think.
>
> Again, let's leave the call to Arnd on what to do.

I think it's much easier for me to pick up a single branch with
all of your patches. For platform maintainers, other changes can
go one of two ways:

- send a normal pull requests with changes against the same
  files, and have me take care of any conflicts where they
  arise. Since most of the changes are just simple file moves
  rather than changing file contents, 'git mergetool' handles
  these fine is most cases

- If there is a non-obvious merge, the entire genpd branch
  can be shared as an immutable branch, with patches for
  a particular platform rebased on top of that branch.

     Arnd
Nishanth Menon July 11, 2023, 12:49 p.m. UTC | #10
On 11:16-20230711, Ulf Hansson wrote:
> On Fri, 7 Jul 2023 at 19:50, Nishanth Menon <nm@ti.com> wrote:
> >
> > On 16:04-20230707, Ulf Hansson wrote:
> > > Cc: Nishanth Menon <nm@ti.com>
> > > Cc: Santosh Shilimkar <ssantosh@kernel.org>
> > > Cc: Tero Kristo <kristo@kernel.org>
> > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > ---
> > >  MAINTAINERS                                   | 3 ++-
> > >  drivers/genpd/Makefile                        | 1 +
> > >  drivers/genpd/ti/Makefile                     | 3 +++
> > >  drivers/{soc => genpd}/ti/omap_prm.c          | 0
> > >  drivers/{soc => genpd}/ti/ti_sci_pm_domains.c | 0
> > >  drivers/soc/ti/Makefile                       | 2 --
> > >  6 files changed, 6 insertions(+), 3 deletions(-)
> > >  create mode 100644 drivers/genpd/ti/Makefile
> > >  rename drivers/{soc => genpd}/ti/omap_prm.c (100%)
> > >  rename drivers/{soc => genpd}/ti/ti_sci_pm_domains.c (100%)
> > >
> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index 9e580df3e5db..3cf16ffac892 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -21101,7 +21101,7 @@ F:    drivers/irqchip/irq-ti-sci-inta.c
> > >  F:   drivers/irqchip/irq-ti-sci-intr.c
> > >  F:   drivers/reset/reset-ti-sci.c
> > >  F:   drivers/soc/ti/ti_sci_inta_msi.c
> > > -F:   drivers/soc/ti/ti_sci_pm_domains.c
> > > +F:   drivers/genpd/ti/ti_sci_pm_domains.c
> > >  F:   include/dt-bindings/soc/ti,sci_pm_domain.h
> > >  F:   include/linux/soc/ti/ti_sci_inta_msi.h
> > >  F:   include/linux/soc/ti/ti_sci_protocol.h
> > > @@ -21335,6 +21335,7 @@ L:    linux-kernel@vger.kernel.org
> > >  L:   linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
> > >  S:   Maintained
> > >  T:   git git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
> > > +F:   drivers/genpd/ti/omap_prm.c
> >
> > Probably the wrong place for this as omap_prm is'nt a keystone navigator
> > driver set. Maybe Tony has a suggestion?
> 
> I guess we could add it to the OMAP2+ section then?

That would be my suggestion.

> 
> In any case, I suggest we consider that as a separate patch on top, as
> I am just obeying to the existing pattern that the get_maintainers
> script provides.
> 

OK. otherwise, this looks good to me.

Reviewed-by: Nishanth Menon <nm@ti.com>
Ulf Hansson July 13, 2023, 9:50 a.m. UTC | #11
On Thu, 13 Jul 2023 at 02:45, Bjorn Andersson <andersson@kernel.org> wrote:
>
> On Mon, Jul 10, 2023 at 02:45:12PM +0200, Arnd Bergmann wrote:
> > On Mon, Jul 10, 2023, at 14:37, Ulf Hansson wrote:
> > > On Sun, 9 Jul 2023 at 04:21, Bjorn Andersson <andersson@kernel.org> wrote:
> > >> On Fri, Jul 07, 2023 at 05:27:39PM +0200, Ulf Hansson wrote:
> > >
> > > If I understand correctly, you are suggesting that each platform
> > > maintainer should merge the immutable branch with patch1 - and that I
> > > should send the patches (based on the immutable branch) to each of the
> > > platform maintainers to manage. Instead of one pull request with
> > > everything directly to Arnd, right?
> > >
>
> That's what I suggest, yes.
>
> > > This still means that Arnd will have to resolve the conflicts as the
> > > pull requests arrive in his inbox.
> > >
>
> Yes, we will have N maintainers modifying drivers/genpd/Makefile, all
> adding their single obj-y line. A quite trivial conflict to manage.
>
> > > Although, I guess what you are looking for is less work for the soc/
> > > maintainers, which seems reasonable. Although, in that case, I might
> > > as well share an immutable branch with the complete series, rather
> > > than just patch1. That should help Arnd too, I think.
> > >
> > > Again, let's leave the call to Arnd on what to do.
> >
> > I think it's much easier for me to pick up a single branch with
> > all of your patches. For platform maintainers, other changes can
> > go one of two ways:
> >
> > - send a normal pull requests with changes against the same
> >   files, and have me take care of any conflicts where they
> >   arise. Since most of the changes are just simple file moves
> >   rather than changing file contents, 'git mergetool' handles
> >   these fine is most cases
> >
> > - If there is a non-obvious merge, the entire genpd branch
> >   can be shared as an immutable branch, with patches for
> >   a particular platform rebased on top of that branch.
> >
>
> I already have a set of patches to these drivers in my tree for v6.6, in
> their current location.

Right.

>
> I'm afraid I am unable to see how we're going to handle the merge
> conflict you're going to create in linux-next. Perhaps you're proposing
> to just never publish Ulf's patches to linux-next?
>
> By me merging the immutable patch 1 and the qcom-patch, the conflicts
> would be minimal, and except for the genpd/Makefile entirely handled by
> me.

If you would merge the immutable branch containing the complete
series, that should work too, rather than just patch1, right?

As a heads up, I am planning to send the pull request with the v2
series tomorrow, allowing a few more acks to arrive. At that point I
will announce the immutable branch too.

Kind regards
Uffe
Bjorn Andersson July 14, 2023, 3:10 a.m. UTC | #12
On Thu, Jul 13, 2023 at 11:50:29AM +0200, Ulf Hansson wrote:
> On Thu, 13 Jul 2023 at 02:45, Bjorn Andersson <andersson@kernel.org> wrote:
> >
> > On Mon, Jul 10, 2023 at 02:45:12PM +0200, Arnd Bergmann wrote:
> > > On Mon, Jul 10, 2023, at 14:37, Ulf Hansson wrote:
> > > > On Sun, 9 Jul 2023 at 04:21, Bjorn Andersson <andersson@kernel.org> wrote:
> > > >> On Fri, Jul 07, 2023 at 05:27:39PM +0200, Ulf Hansson wrote:
> > > >
> > > > If I understand correctly, you are suggesting that each platform
> > > > maintainer should merge the immutable branch with patch1 - and that I
> > > > should send the patches (based on the immutable branch) to each of the
> > > > platform maintainers to manage. Instead of one pull request with
> > > > everything directly to Arnd, right?
> > > >
> >
> > That's what I suggest, yes.
> >
> > > > This still means that Arnd will have to resolve the conflicts as the
> > > > pull requests arrive in his inbox.
> > > >
> >
> > Yes, we will have N maintainers modifying drivers/genpd/Makefile, all
> > adding their single obj-y line. A quite trivial conflict to manage.
> >
> > > > Although, I guess what you are looking for is less work for the soc/
> > > > maintainers, which seems reasonable. Although, in that case, I might
> > > > as well share an immutable branch with the complete series, rather
> > > > than just patch1. That should help Arnd too, I think.
> > > >
> > > > Again, let's leave the call to Arnd on what to do.
> > >
> > > I think it's much easier for me to pick up a single branch with
> > > all of your patches. For platform maintainers, other changes can
> > > go one of two ways:
> > >
> > > - send a normal pull requests with changes against the same
> > >   files, and have me take care of any conflicts where they
> > >   arise. Since most of the changes are just simple file moves
> > >   rather than changing file contents, 'git mergetool' handles
> > >   these fine is most cases
> > >
> > > - If there is a non-obvious merge, the entire genpd branch
> > >   can be shared as an immutable branch, with patches for
> > >   a particular platform rebased on top of that branch.
> > >
> >
> > I already have a set of patches to these drivers in my tree for v6.6, in
> > their current location.
> 
> Right.
> 
> >
> > I'm afraid I am unable to see how we're going to handle the merge
> > conflict you're going to create in linux-next. Perhaps you're proposing
> > to just never publish Ulf's patches to linux-next?
> >
> > By me merging the immutable patch 1 and the qcom-patch, the conflicts
> > would be minimal, and except for the genpd/Makefile entirely handled by
> > me.
> 
> If you would merge the immutable branch containing the complete
> series, that should work too, rather than just patch1, right?
> 

I believe git should sort that out as well. If so I have no concerns
with that option.

Regards,
Bjorn

> As a heads up, I am planning to send the pull request with the v2
> series tomorrow, allowing a few more acks to arrive. At that point I
> will announce the immutable branch too.
> 
> Kind regards
> Uffe
Tony Lindgren July 14, 2023, 7:51 a.m. UTC | #13
* Nishanth Menon <nm@ti.com> [230711 12:49]:
> On 11:16-20230711, Ulf Hansson wrote:
> > On Fri, 7 Jul 2023 at 19:50, Nishanth Menon <nm@ti.com> wrote:
> > >
> > > On 16:04-20230707, Ulf Hansson wrote:
> > > > Cc: Nishanth Menon <nm@ti.com>
> > > > Cc: Santosh Shilimkar <ssantosh@kernel.org>
> > > > Cc: Tero Kristo <kristo@kernel.org>
> > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
> > > > ---
> > > >  MAINTAINERS                                   | 3 ++-
> > > >  drivers/genpd/Makefile                        | 1 +
> > > >  drivers/genpd/ti/Makefile                     | 3 +++
> > > >  drivers/{soc => genpd}/ti/omap_prm.c          | 0
> > > >  drivers/{soc => genpd}/ti/ti_sci_pm_domains.c | 0
> > > >  drivers/soc/ti/Makefile                       | 2 --
> > > >  6 files changed, 6 insertions(+), 3 deletions(-)
> > > >  create mode 100644 drivers/genpd/ti/Makefile
> > > >  rename drivers/{soc => genpd}/ti/omap_prm.c (100%)
> > > >  rename drivers/{soc => genpd}/ti/ti_sci_pm_domains.c (100%)
> > > >
> > > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > index 9e580df3e5db..3cf16ffac892 100644
> > > > --- a/MAINTAINERS
> > > > +++ b/MAINTAINERS
> > > > @@ -21101,7 +21101,7 @@ F:    drivers/irqchip/irq-ti-sci-inta.c
> > > >  F:   drivers/irqchip/irq-ti-sci-intr.c
> > > >  F:   drivers/reset/reset-ti-sci.c
> > > >  F:   drivers/soc/ti/ti_sci_inta_msi.c
> > > > -F:   drivers/soc/ti/ti_sci_pm_domains.c
> > > > +F:   drivers/genpd/ti/ti_sci_pm_domains.c
> > > >  F:   include/dt-bindings/soc/ti,sci_pm_domain.h
> > > >  F:   include/linux/soc/ti/ti_sci_inta_msi.h
> > > >  F:   include/linux/soc/ti/ti_sci_protocol.h
> > > > @@ -21335,6 +21335,7 @@ L:    linux-kernel@vger.kernel.org
> > > >  L:   linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
> > > >  S:   Maintained
> > > >  T:   git git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
> > > > +F:   drivers/genpd/ti/omap_prm.c
> > >
> > > Probably the wrong place for this as omap_prm is'nt a keystone navigator
> > > driver set. Maybe Tony has a suggestion?
> > 
> > I guess we could add it to the OMAP2+ section then?
> 
> That would be my suggestion.

Makes sense to me too.

Regards,

Tony