Re: [PATCH v5 2/4] platform: Add ARM64 platform directory

From: Ilpo Järvinen
Date: Mon Mar 18 2024 - 07:32:05 EST


On Fri, 15 Mar 2024, Nikita Travkin wrote:

> Some ARM64 based laptops and computers require vendor/board specific
> drivers for their embedded controllers. Even though usually the most
> important functionality of those devices is implemented inside ACPI,
> unfortunately Linux doesn't currently have great support for ACPI on
> platforms like Qualcomm Snapdragon that are used in most ARM64 laptops
> today. Instead Linux relies on Device Tree for Qualcomm based devices
> and it's significantly easier to reimplement the EC functionality in
> a dedicated driver than to make use of ACPI code.
>
> This commit introduces a new platform/arm64 subdirectory to give a
> place to such drivers for EC-like devices.
>
> A new MAINTAINERS entry is added for this directory. Patches to files in
> this directory will be taken up by the platform-drivers-x86 team (i.e.
> Hans de Goede and Ilpo Järvinen) with additional review from Bryan
> O'Donoghue to represent ARM64 maintainers.
>
> Signed-off-by: Nikita Travkin <nikita@xxxxxxx>

Acked-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>

And big thanks for Bryan for volunteering!

--
i.

> ---
> MAINTAINERS | 10 ++++++++++
> drivers/platform/Kconfig | 2 ++
> drivers/platform/Makefile | 1 +
> drivers/platform/arm64/Kconfig | 19 +++++++++++++++++++
> drivers/platform/arm64/Makefile | 6 ++++++
> 5 files changed, 38 insertions(+)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 76b3714710c2..186338451099 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -3050,6 +3050,16 @@ F: drivers/mmc/host/sdhci-of-arasan.c
> N: zynq
> N: xilinx
>
> +ARM64 PLATFORM DRIVERS
> +M: Hans de Goede <hdegoede@xxxxxxxxxx>
> +M: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
> +R: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx>
> +L: platform-driver-x86@xxxxxxxxxxxxxxx
> +S: Maintained
> +Q: https://patchwork.kernel.org/project/platform-driver-x86/list/
> +T: git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
> +F: drivers/platform/arm64/
> +
> ARM64 PORT (AARCH64 ARCHITECTURE)
> M: Catalin Marinas <catalin.marinas@xxxxxxx>
> M: Will Deacon <will@xxxxxxxxxx>
> diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
> index 868b20361769..81a298517df2 100644
> --- a/drivers/platform/Kconfig
> +++ b/drivers/platform/Kconfig
> @@ -14,3 +14,5 @@ source "drivers/platform/olpc/Kconfig"
> source "drivers/platform/surface/Kconfig"
>
> source "drivers/platform/x86/Kconfig"
> +
> +source "drivers/platform/arm64/Kconfig"
> diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
> index 41640172975a..fbbe4f77aa5d 100644
> --- a/drivers/platform/Makefile
> +++ b/drivers/platform/Makefile
> @@ -11,3 +11,4 @@ obj-$(CONFIG_OLPC_EC) += olpc/
> obj-$(CONFIG_GOLDFISH) += goldfish/
> obj-$(CONFIG_CHROME_PLATFORMS) += chrome/
> obj-$(CONFIG_SURFACE_PLATFORMS) += surface/
> +obj-$(CONFIG_ARM64) += arm64/
> diff --git a/drivers/platform/arm64/Kconfig b/drivers/platform/arm64/Kconfig
> new file mode 100644
> index 000000000000..644b83ede093
> --- /dev/null
> +++ b/drivers/platform/arm64/Kconfig
> @@ -0,0 +1,19 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# EC-like Drivers for aarch64 based devices.
> +#
> +
> +menuconfig ARM64_PLATFORM_DEVICES
> + bool "ARM64 Platform-Specific Device Drivers"
> + depends on ARM64 || COMPILE_TEST
> + default y
> + help
> + Say Y here to get to see options for platform-specific device drivers
> + for arm64 based devices, primarily EC-like device drivers.
> + This option alone does not add any kernel code.
> +
> + If you say N, all options in this submenu will be skipped and disabled.
> +
> +if ARM64_PLATFORM_DEVICES
> +
> +endif # ARM64_PLATFORM_DEVICES
> diff --git a/drivers/platform/arm64/Makefile b/drivers/platform/arm64/Makefile
> new file mode 100644
> index 000000000000..f91cdc7155e2
> --- /dev/null
> +++ b/drivers/platform/arm64/Makefile
> @@ -0,0 +1,6 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Makefile for linux/drivers/platform/arm64
> +#
> +# This dir should only include drivers for EC-like devices.
> +#
>
>