From: Arnd Bergmann <email@example.com>
To: Masahiro Yamada <firstname.lastname@example.org>
Cc: Lee Jones <email@example.com>,
Greg Kroah-Hartman <firstname.lastname@example.org>,
Linux Kernel Mailing List <email@example.com>,
Linux ARM <firstname.lastname@example.org>,
Subject: Re: [RFC PATCH] drivers: use 'depends on MFD_SYSCON' instead of 'select MFD_SYSCON'
Date: Tue, 27 Feb 2018 10:03:50 +0100 [thread overview]
Message-ID: <CAK8P3a1cEcBTiH7_gcUPZtsuRaeoOYaH3H4cYxkUBQiLMTMq=A@mail.gmail.com> (raw)
On Tue, Feb 27, 2018 at 1:46 AM, Masahiro Yamada
> 2018-02-26 21:43 GMT+09:00 Arnd Bergmann <email@example.com>:
>> On Mon, Feb 26, 2018 at 12:53 PM, Masahiro Yamada
>> <firstname.lastname@example.org> wrote:
>>> 2018-02-26 17:43 GMT+09:00 Arnd Bergmann <email@example.com>:
>>>> On Sat, Feb 24, 2018 at 3:50 PM, Masahiro Yamada
>>>> <firstname.lastname@example.org> wrote:
>>>>> As Documentation/kbuild/kconfig-language.txt notes, 'select' should be
>>>>> used with care - it forces a lower limit of another symbol, ignoring
>>>>> the dependency.
>>>>> MFD_SYSCON depends on HAS_IOMEM, but several drivers with COMPILE_TEST
>>>>> select it.
>>>>> This causes unmet dependencies for architecture without HAS_IOMEM.
>>>>> $ make ARCH=score randconfig
>>>>> scripts/kconfig/conf --randconfig Kconfig
>>>>> warning: (HWSPINLOCK_QCOM && AHCI_MTK && STMMAC_PLATFORM && ...)
>>>>> selects MFD_SYSCON which has unmet direct dependencies (HAS_IOMEM)
>>>>> Use 'depends on' to observe the dependency.
>>>>> This commit was created by the following command:
>>>>> $ find drivers -name 'Kconfig*' | xargs sed -i -e \
>>>>> 's/select MFD_SYSCON$/depends on MFD_SYSCON/'
>>>>> Then, COMMON_CLK_NXP and S3C2410_WATCHDOG were fixed up manually.
>>>>> Also, make MFD_SYSCON 'default y' because some defconfig files may
>>>>> rely on someone select's MFD_SYSCON.
>>>>> Signed-off-by: Masahiro Yamada <email@example.com>
>>>>> If you have a better idea to fix 'unmet dependencies',
>>>>> please suggest.
>>>> Changing 'select MFD_SYSCON' to 'depends on' will definitely break lots
>>>> of defconfig configurations, I'd rather not do that.
>>> Could you explain why?
>>> I set 'default y' for MFD_SYSCON.
>>> Would it still break defconfig configurations?
>> No, you are right, that would not break defconfigs, it would just mean one
>> useless driver being enabled for many configurations that don't need it.
> If we are unhappy about this,
> we can send per-arch patches
> to add CONFIG_MTD_SYSCON=y to defconfigs that need it.
> But, we need to decide what the right solution is.
I think for consistency, we should change the existing
'depends on MFD_SYSCON' to 'select MFD_SYSCON'. This
matches what we do with REGMAP_MMIO.
MFD_SYSCON is really a thin wrapper around REGMAP_MMIO,
so I would keep using the same conventions here, even though
we normally prefer to not 'select' any user-visible options.
It might be possible to make MFD_SYSCON a silent symbol
as well, but we'd have to make sure that all users select the symbol
next prev parent reply other threads:[~2018-02-27 9:03 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-24 14:50 [RFC PATCH] drivers: use 'depends on MFD_SYSCON' instead of 'select MFD_SYSCON' Masahiro Yamada
2018-02-25 12:13 ` Andy Shevchenko
2018-02-26 8:43 ` Arnd Bergmann
2018-02-26 11:53 ` Masahiro Yamada
2018-02-26 12:43 ` Arnd Bergmann
2018-02-27 0:46 ` Masahiro Yamada
2018-02-27 9:03 ` Arnd Bergmann [this message]
2018-02-27 10:22 ` Masahiro Yamada
2018-02-27 13:39 ` Arnd Bergmann
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:
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
* 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;
as well as URLs for NNTP newsgroup(s).