Re: [PATCH 1/2] ata: clean up how architectures enable PATA_PLATFORM and PATA_OF_PLATFORM

From: Damien Le Moal
Date: Fri Sep 16 2022 - 10:27:20 EST


On 2022/09/14 15:27, Lukas Bulwahn wrote:
> There are two options for platform device PATA support:
>
> PATA_PLATFORM: Generic platform device PATA support
> PATA_OF_PLATFORM: OpenFirmware platform device PATA support
>
> If an architecture allows the generic platform device PATA support, it
> shall select HAVE_PATA_PLATFORM. Then, Generic platform device PATA support
> is available and can be selected.
>
> If an architecture has OpenFirmware support, which it indicates by
> selecting OF, OpenFirmware platform device PATA support is available
> and can be selected.
> If OpenFirmware platform device PATA support is selected, then the
> functionality (code files) from Generic platform device PATA support needs
> to be integrated in the kernel build for the OpenFirmware platform device
> PATA support to work. Select PATA_PLATFORM in PATA_OF_PLATFORM to make sure
> the needed files are added in the build.
>
> So, architectures with OpenFirmware support, do not need to additionally
> select HAVE_PATA_PLATFORM. It is only needed by architecture that want the
> non-OF pata-platform module.
>
> Reflect this way of intended use of config symbols in the ata Kconfig and
> adjust all architecture definitions.
>
> This follows the suggestion from Arnd Bergmann (see Link).
>
> Suggested-by: Arnd Bergmann <arnd@xxxxxxxx>
> Link: https://lore.kernel.org/all/4b33bffc-2b6d-46b4-9f1d-d18e55975a5a@xxxxxxxxxxxxxxxx/
>
> Signed-off-by: Lukas Bulwahn <lukas.bulwahn@xxxxxxxxx>

Applied this patch and 2/2 to for-6.1. Thanks !

> ---
> arch/arm/mach-versatile/Kconfig | 1 -
> arch/arm64/Kconfig | 1 -
> drivers/ata/Kconfig | 6 +++---
> 3 files changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/mach-versatile/Kconfig b/arch/arm/mach-versatile/Kconfig
> index 2ef226194c3a..b1519b4dc03a 100644
> --- a/arch/arm/mach-versatile/Kconfig
> +++ b/arch/arm/mach-versatile/Kconfig
> @@ -256,7 +256,6 @@ menuconfig ARCH_VEXPRESS
> select GPIOLIB
> select HAVE_ARM_SCU if SMP
> select HAVE_ARM_TWD if SMP
> - select HAVE_PATA_PLATFORM
> select CLK_ICST
> select NO_IOPORT_MAP
> select PLAT_VERSATILE
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 51f3f07c3efd..036bd67e662e 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -194,7 +194,6 @@ config ARM64
> select HAVE_IRQ_TIME_ACCOUNTING
> select HAVE_KVM
> select HAVE_NMI
> - select HAVE_PATA_PLATFORM
> select HAVE_PERF_EVENTS
> select HAVE_PERF_REGS
> select HAVE_PERF_USER_STACK_DUMP
> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
> index 1c9f4fb2595d..c93d97455744 100644
> --- a/drivers/ata/Kconfig
> +++ b/drivers/ata/Kconfig
> @@ -1102,8 +1102,7 @@ config PATA_PCMCIA
> If unsure, say N.
>
> config PATA_PLATFORM
> - tristate "Generic platform device PATA support"
> - depends on EXPERT || PPC || HAVE_PATA_PLATFORM
> + tristate "Generic platform device PATA support" if EXPERT || HAVE_PATA_PLATFORM
> help
> This option enables support for generic directly connected ATA
> devices commonly found on embedded systems.
> @@ -1112,7 +1111,8 @@ config PATA_PLATFORM
>
> config PATA_OF_PLATFORM
> tristate "OpenFirmware platform device PATA support"
> - depends on PATA_PLATFORM && OF
> + depends on OF
> + select PATA_PLATFORM
> help
> This option enables support for generic directly connected ATA
> devices commonly found on embedded systems with OpenFirmware

--
Damien Le Moal
Western Digital Research