Re: [PATCH v1] soc: sifive: shunt ccache driver to drivers/cache

From: Samuel Holland
Date: Tue Nov 21 2023 - 20:25:29 EST


Hi Conor,

On 2023-10-12 4:22 AM, Conor Dooley wrote:
> From: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
>
> Move the ccache driver over to drivers/cache, out of the drivers/soc
> dumping ground, to this new collection point for cache controller
> drivers.
>
> Signed-off-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> ---
> CC: Conor Dooley <conor@xxxxxxxxxx>
> CC: Palmer Dabbelt <palmer@xxxxxxxxxxx>
> CC: Paul Walmsley <paul.walmsley@xxxxxxxxxx>
> CC: Emil Renner Berthing <kernel@xxxxxxxx>
> CC: linux-kernel@xxxxxxxxxxxxxxx
> CC: linux-riscv@xxxxxxxxxxxxxxxxxxx
> ---
> MAINTAINERS | 14 +++++++-------
> drivers/cache/Kconfig | 8 ++++++++
> drivers/cache/Makefile | 3 ++-
> drivers/{soc/sifive => cache}/sifive_ccache.c | 0
> drivers/soc/Kconfig | 1 -
> drivers/soc/Makefile | 1 -
> drivers/soc/sifive/Kconfig | 10 ----------
> drivers/soc/sifive/Makefile | 3 ---
> 8 files changed, 17 insertions(+), 23 deletions(-)
> rename drivers/{soc/sifive => cache}/sifive_ccache.c (100%)
> delete mode 100644 drivers/soc/sifive/Kconfig
> delete mode 100644 drivers/soc/sifive/Makefile
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 90f13281d297..ab32599fc799 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -19580,6 +19580,13 @@ S: Supported
> N: sifive
> K: [^@]sifive
>
> +SIFIVE CACHE DRIVER
> +M: Conor Dooley <conor@xxxxxxxxxx>
> +L: linux-riscv@xxxxxxxxxxxxxxxxxxx
> +S: Maintained
> +F: Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
> +F: drivers/cache/sifive_ccache.c
> +
> SIFIVE FU540 SYSTEM-ON-CHIP
> M: Paul Walmsley <paul.walmsley@xxxxxxxxxx>
> M: Palmer Dabbelt <palmer@xxxxxxxxxxx>
> @@ -19595,13 +19602,6 @@ S: Maintained
> F: Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
> F: drivers/dma/sf-pdma/
>
> -SIFIVE SOC DRIVERS
> -M: Conor Dooley <conor@xxxxxxxxxx>
> -L: linux-riscv@xxxxxxxxxxxxxxxxxxx
> -S: Maintained
> -T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
> -F: Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
> -F: drivers/soc/sifive/
>
> SILEAD TOUCHSCREEN DRIVER
> M: Hans de Goede <hdegoede@xxxxxxxxxx>
> diff --git a/drivers/cache/Kconfig b/drivers/cache/Kconfig
> index a57677f908f3..433b7ded8787 100644
> --- a/drivers/cache/Kconfig
> +++ b/drivers/cache/Kconfig
> @@ -8,4 +8,12 @@ config AX45MP_L2_CACHE
> help
> Support for the L2 cache controller on Andes Technology AX45MP platforms.
>
> +if ARCH_SIFIVE || ARCH_STARFIVE

Since this is now in a file grouped/sorted by subsystem instead of by platform,
maybe it makes sense to convert this to a "depends on" line?

> +
> +config SIFIVE_CCACHE
> + bool "Sifive Composable Cache controller"
> + help
> + Support for the composable cache controller on SiFive platforms.
> +
> +endif
> endmenu
> diff --git a/drivers/cache/Makefile b/drivers/cache/Makefile
> index 2012e7fb978d..7657cff3bd6c 100644
> --- a/drivers/cache/Makefile
> +++ b/drivers/cache/Makefile
> @@ -1,3 +1,4 @@
> # SPDX-License-Identifier: GPL-2.0
>
> -obj-$(CONFIG_AX45MP_L2_CACHE) += ax45mp_cache.o
> +obj-$(CONFIG_AX45MP_L2_CACHE) += ax45mp_cache.o
> +obj-$(CONFIG_SIFIVE_CCACHE) += sifive_ccache.o
> diff --git a/drivers/soc/sifive/sifive_ccache.c b/drivers/cache/sifive_ccache.c
> similarity index 100%
> rename from drivers/soc/sifive/sifive_ccache.c
> rename to drivers/cache/sifive_ccache.c
> diff --git a/drivers/soc/Kconfig b/drivers/soc/Kconfig
> index d21e75d69294..76afeff93045 100644
> --- a/drivers/soc/Kconfig
> +++ b/drivers/soc/Kconfig
> @@ -23,7 +23,6 @@ source "drivers/soc/qcom/Kconfig"
> source "drivers/soc/renesas/Kconfig"
> source "drivers/soc/rockchip/Kconfig"
> source "drivers/soc/samsung/Kconfig"
> -source "drivers/soc/sifive/Kconfig"
> source "drivers/soc/starfive/Kconfig"

This file has a conflict and needs to be rebased, but otherwise:

Reviewed-by: Samuel Holland <samuel.holland@xxxxxxxxxx>
Tested-by: Samuel Holland <samuel.holland@xxxxxxxxxx>

> source "drivers/soc/sunxi/Kconfig"
> source "drivers/soc/tegra/Kconfig"
> diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
> index 0706a27d13be..ba8f5b5460e1 100644
> --- a/drivers/soc/Makefile
> +++ b/drivers/soc/Makefile
> @@ -28,7 +28,6 @@ obj-y += qcom/
> obj-y += renesas/
> obj-y += rockchip/
> obj-$(CONFIG_SOC_SAMSUNG) += samsung/
> -obj-y += sifive/
> obj-y += sunxi/
> obj-$(CONFIG_ARCH_TEGRA) += tegra/
> obj-y += ti/
> diff --git a/drivers/soc/sifive/Kconfig b/drivers/soc/sifive/Kconfig
> deleted file mode 100644
> index 139884addc41..000000000000
> --- a/drivers/soc/sifive/Kconfig
> +++ /dev/null
> @@ -1,10 +0,0 @@
> -# SPDX-License-Identifier: GPL-2.0
> -
> -if ARCH_SIFIVE || ARCH_STARFIVE
> -
> -config SIFIVE_CCACHE
> - bool "Sifive Composable Cache controller"
> - help
> - Support for the composable cache controller on SiFive platforms.
> -
> -endif
> diff --git a/drivers/soc/sifive/Makefile b/drivers/soc/sifive/Makefile
> deleted file mode 100644
> index 1f5dc339bf82..000000000000
> --- a/drivers/soc/sifive/Makefile
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -# SPDX-License-Identifier: GPL-2.0
> -
> -obj-$(CONFIG_SIFIVE_CCACHE) += sifive_ccache.o