2021-12-30 14:50:07

by Jan Engelhardt

[permalink] [raw]
Subject: [PATCH] android: use "menuconfig" menu entry type for CONFIG_ANDROID

Allow disabling the Android driver section from within the Device
Drivers submenu, without having to descend into the Android drivers
submenu first.

Signed-off-by: Jan Engelhardt <[email protected]>
---
drivers/android/Kconfig | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/drivers/android/Kconfig b/drivers/android/Kconfig
index 53b22e26266c..dc0a373ab879 100644
--- a/drivers/android/Kconfig
+++ b/drivers/android/Kconfig
@@ -1,7 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-menu "Android"
-
-config ANDROID
+menuconfig ANDROID
bool "Android Drivers"
help
Enable support for various drivers needed on the Android platform
@@ -55,5 +53,3 @@ config ANDROID_BINDER_IPC_SELFTEST
alignments.

endif # if ANDROID
-
-endmenu
--
2.34.1



2021-12-30 16:58:29

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH] android: use "menuconfig" menu entry type for CONFIG_ANDROID

On Thu, Dec 30, 2021 at 03:50:02PM +0100, Jan Engelhardt wrote:
> Allow disabling the Android driver section from within the Device
> Drivers submenu, without having to descend into the Android drivers
> submenu first.
>
> Signed-off-by: Jan Engelhardt <[email protected]>
> ---
> drivers/android/Kconfig | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/drivers/android/Kconfig b/drivers/android/Kconfig
> index 53b22e26266c..dc0a373ab879 100644
> --- a/drivers/android/Kconfig
> +++ b/drivers/android/Kconfig
> @@ -1,7 +1,5 @@
> # SPDX-License-Identifier: GPL-2.0
> -menu "Android"
> -
> -config ANDROID
> +menuconfig ANDROID
> bool "Android Drivers"
> help
> Enable support for various drivers needed on the Android platform
> @@ -55,5 +53,3 @@ config ANDROID_BINDER_IPC_SELFTEST
> alignments.
>
> endif # if ANDROID
> -
> -endmenu
> --
> 2.34.1
>

But, when you do this, you loose these lines from the .config file,
resulting in this diff in the file:

--- .config.save 2021-12-30 17:54:49.327896243 +0100
+++ .config 2021-12-30 17:56:21.459819436 +0100
@@ -6477,17 +6477,11 @@
CONFIG_RAS=y
# CONFIG_RAS_CEC is not set
# CONFIG_USB4 is not set
-
-#
-# Android
-#
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ANDROID_BINDERFS=y
CONFIG_ANDROID_BINDER_DEVICES="binder"
CONFIG_ANDROID_BINDER_IPC_SELFTEST=y
-# end of Android
-
# CONFIG_LIBNVDIMM is not set
CONFIG_DAX=m
CONFIG_NVMEM=y



Is that really a good idea? What's the default these days?

Also, to be pedantic, this is a [v2] patch, right? :)

I'll wait for the other Android driver maintainers to review this before
applying it, if they agree it is ok to do.

thanks,

greg k-h

2021-12-30 17:36:25

by Jan Engelhardt

[permalink] [raw]
Subject: Re: [PATCH] android: use "menuconfig" menu entry type for CONFIG_ANDROID


On Thursday 2021-12-30 17:58, Greg KH wrote:
>On Thu, Dec 30, 2021 at 03:50:02PM +0100, Jan Engelhardt wrote:
>> Allow disabling the Android driver section from within the Device
>> Drivers submenu, without having to descend into the Android drivers
>> submenu first.

>> -config ANDROID
>> +menuconfig ANDROID
>
>But, when you do this, you loose these lines from the .config file,
>resulting in this diff in the file:
>
>-#
>-# Android
>-#
> CONFIG_ANDROID=y
> CONFIG_ANDROID_BINDER_IPC=y
> CONFIG_ANDROID_BINDERFS=y
> CONFIG_ANDROID_BINDER_DEVICES="binder"
> CONFIG_ANDROID_BINDER_IPC_SELFTEST=y
>-# end of Android
>-
>
>Is that really a good idea?


Humour me - what information did "# Android" convey
that CONFIG_ANDROID= didn't already?


>What's the default these days?

There isn't really a default. When someone edits a Kconfig file to
add options for a new knob, they have to decide for one or the other.
At worst, they'll just copy from some other Kconfig file or the
documentation without making a conscious decision.

As you can see in the Device Drivers menu when running the `make
menuconfig` command, it's a mix, but with a clear tendency to go with
the menuconfig type. We used to have much less menuconfig-type options
in the olden days of 2.4.x or so. I would therefore make the case that,
on the whole, menuconfig-typed options are/should be used whenever
possible.


-*- PPS support --->
PTP clock support --->
[ ] Pin controllers ----
[ ] GPIO Support ----
< > Dallas's 1-wire support ----
[ ] Board level reset or power off ----
-*- Power supply class support --->
-*- Hardware Monitoring support --->
-*- Thermal drivers --->
[*] Watchdog Timer Support --->
< > Sonics Silicon Backplane support ----
< > Broadcom specific AMBA ----
Multifunction device drivers --->
[ ] Voltage and Current Regulator Support ----
< > Remote Controller support ----
CEC support --->
< > Multimedia support ----
Graphics support --->
<*> Sound card support --->

There's just no GPIO, W1 or SSB in most contemporary desktop and
laptop x86s for example, and servers generally come without sound, so
it's nice to just hit {N DOWN}*.. quickly rather than having to
{ENTER N RIGHT ENTER DOWN}* to disable driver categories.


>Also, to be pedantic, this is a [v2] patch, right? :)

Sorry, I have been working too long with sites like github et al
where diff -p0/p1 does not play a role (since one is sending commits
not diffs), nor version markers are needed (an update will simply be
appended to the end of a ticket/PR).