Enable more options required as dependencies.

When verifying the android-base and android-recommended configurations,
it is useful to start from as minimal a kernel config as possible. The
most minimal config is "allnoconfig".

However, the "allnoconfig" experiment highlights a design problem with
these kernel config fragments. The 'depends' for the options we want to
turn on won't be turned on if the defconfig used as the first parameter
to scripts/kconfig/merge_config.sh forcibly turned them off, even if the
options were 'default y' or 'default m'.

So, rather than relying on somebody running the merge_config.sh having
the 'depends' set favorably for dependent options, explicitly define all
of the dependencies with =y. When testing with an "allnoconfig", which
is a worst-case scenario, all of the 'base' and 'recommended' options
are now turned on correctly.

android-base.cfg:

CONFIG_ADVISE_SYSCALLS=y   bionic: madvise, posix_madvise, etc.
CONFIG_BLOCK=y             CONFIG_EXT4_FS, CONFIG_F2FS_FS
CONFIG_EPOLL=y             bionic: epoll_create, etc.
CONFIG_EVENTFD=y           bionic: eventfd etc.
CONFIG_FUTEX=y             bionic: __futex_wait, __futex_wake.
CONFIG_PROC_FS=y           bionic: linker, pthread, etc.
CONFIG_PROFILING=y         CONFIG_UID_SYS_STATS (missing only on 3.18)
CONFIG_SHMEM=y             CONFIG_ASHMEM
CONFIG_SIGNALFD=y          bionic: signalfd, signalfd64, etc.
CONFIG_SUSPEND=y           CONFIG_PM_SLEEP via CONFIG_PM_WAKELOCKS.
CONFIG_SYSFS=y             bionic: sysinfo, selinux
CONFIG_TIMERFD=y           bionic: timerfd_create, etc.
CONFIG_USB_SUPPORT=y       CONFIG_USB_GADGET

android-recommended.cfg:

CONFIG_CONFIGFS_FS=y       CONFIG_SDCARD_FS
CONFIG_GPIOLIB=y           CONFIG_ANDROID_TIMED_GPIO (only 3.18, 4.4)
CONFIG_HID_GENERIC=y       "Support for generic devices on the HID bus"
CONFIG_KALLSYMS=y          CONFIG_KALLSYMS_ALL
CONFIG_KEYS=y              CONFIG_ASYMMETRIC_KEY_TYPE
CONFIG_MISC_FILESYSTEMS=y  fs/pstore/Kconfig

Bug: 79875143
Change-Id: Ifb76ee5883ff5541771e9a951c055b99fd09e029
Signed-off-by: Alistair Strachan <astrachan@google.com>
diff --git a/android-3.18/android-base.cfg b/android-3.18/android-base.cfg
index fc87342..184f101 100644
--- a/android-3.18/android-base.cfg
+++ b/android-3.18/android-base.cfg
@@ -7,6 +7,7 @@
 # CONFIG_NFS_FS is not set
 # CONFIG_SYSVIPC is not set
 # CONFIG_USELIB is not set
+CONFIG_ADVISE_SYSCALLS=y
 CONFIG_AIO=y
 CONFIG_ANDROID=y
 CONFIG_ANDROID_BINDER_DEVICES=binder,hwbinder,vndbinder
@@ -14,6 +15,7 @@
 CONFIG_ASHMEM=y
 CONFIG_AUDIT=y
 CONFIG_BLK_DEV_INITRD=y
+CONFIG_BLOCK=y
 CONFIG_CGROUPS=y
 CONFIG_CGROUP_CPUACCT=y
 CONFIG_CGROUP_FREEZER=y
@@ -30,6 +32,9 @@
 CONFIG_CRYPTO_SHA512=y
 CONFIG_DEFAULT_SECURITY_SELINUX=y
 CONFIG_EMBEDDED=y
+CONFIG_EPOLL=y
+CONFIG_EVENTFD=y
+CONFIG_FUTEX=y
 CONFIG_HARDENED_USERCOPY=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_IKCONFIG=y
@@ -150,6 +155,8 @@
 CONFIG_PPP_DEFLATE=y
 CONFIG_PPP_MPPE=y
 CONFIG_PREEMPT=y
+CONFIG_PROC_FS=y
+CONFIG_PROFILING=y
 CONFIG_RESOURCE_COUNTERS=y
 CONFIG_RTC_CLASS=y
 CONFIG_RT_GROUP_SCHED=y
@@ -159,11 +166,17 @@
 CONFIG_SECURITY_NETWORK=y
 CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
 CONFIG_SECURITY_SELINUX=y
+CONFIG_SHMEM=y
+CONFIG_SIGNALFD=y
 CONFIG_STAGING=y
+CONFIG_SUSPEND=y
 CONFIG_SWITCH=y
 CONFIG_SYNC=y
+CONFIG_SYSFS=y
+CONFIG_TIMERFD=y
 CONFIG_TUN=y
 CONFIG_UID_SYS_STATS=y
 CONFIG_UNIX=y
 CONFIG_USB_GADGET=y
+CONFIG_USB_SUPPORT=y
 CONFIG_XFRM_USER=y
diff --git a/android-3.18/android-recommended.cfg b/android-3.18/android-recommended.cfg
index 31d8ced..bcfc36d 100644
--- a/android-3.18/android-recommended.cfg
+++ b/android-3.18/android-recommended.cfg
@@ -17,6 +17,7 @@
 CONFIG_BLK_DEV_RAM_SIZE=8192
 CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_COMPACTION=y
+CONFIG_CONFIGFS_FS=y
 CONFIG_CPU_SW_DOMAIN_PAN=y
 CONFIG_DEBUG_RODATA=y
 CONFIG_DM_CRYPT=y
@@ -28,6 +29,7 @@
 CONFIG_EXT4_FS=y
 CONFIG_EXT4_FS_SECURITY=y
 CONFIG_FUSE_FS=y
+CONFIG_GPIOLIB=y
 CONFIG_GREENASIA_FF=y
 CONFIG_HIDRAW=y
 CONFIG_HID_A4TECH=y
@@ -42,6 +44,7 @@
 CONFIG_HID_ELECOM=y
 CONFIG_HID_EMS_FF=y
 CONFIG_HID_EZKEY=y
+CONFIG_HID_GENERIC=y
 CONFIG_HID_GREENASIA=y
 CONFIG_HID_GYRATION=y
 CONFIG_HID_HOLTEK=y
@@ -90,7 +93,9 @@
 CONFIG_JOYSTICK_XPAD=y
 CONFIG_JOYSTICK_XPAD_FF=y
 CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_KALLSYMS=y
 CONFIG_KALLSYMS_ALL=y
+CONFIG_KEYS=y
 CONFIG_KSM=y
 CONFIG_LOGIG940_FF=y
 CONFIG_LOGIRUMBLEPAD2_FF=y
@@ -98,6 +103,7 @@
 CONFIG_MD=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_MEMORY_STATE_TIME=y
+CONFIG_MISC_FILESYSTEMS=y
 CONFIG_MSDOS_FS=y
 CONFIG_PANIC_TIMEOUT=5
 CONFIG_PANTHERLORD_FF=y
diff --git a/android-4.14/android-base.cfg b/android-4.14/android-base.cfg
index c240374..95f430d 100644
--- a/android-4.14/android-base.cfg
+++ b/android-4.14/android-base.cfg
@@ -6,6 +6,7 @@
 # CONFIG_NFS_FS is not set
 # CONFIG_SYSVIPC is not set
 # CONFIG_USELIB is not set
+CONFIG_ADVISE_SYSCALLS=y
 CONFIG_AIO=y
 CONFIG_ANDROID=y
 CONFIG_ANDROID_BINDER_DEVICES=binder,hwbinder,vndbinder
@@ -13,6 +14,7 @@
 CONFIG_ASHMEM=y
 CONFIG_AUDIT=y
 CONFIG_BLK_DEV_INITRD=y
+CONFIG_BLOCK=y
 CONFIG_BPF_SYSCALL=y
 CONFIG_CGROUPS=y
 CONFIG_CGROUP_BPF=y
@@ -31,6 +33,9 @@
 CONFIG_CRYPTO_SHA512=y
 CONFIG_DEFAULT_SECURITY_SELINUX=y
 CONFIG_EMBEDDED=y
+CONFIG_EPOLL=y
+CONFIG_EVENTFD=y
+CONFIG_FUTEX=y
 CONFIG_HARDENED_USERCOPY=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_IKCONFIG=y
@@ -154,6 +159,7 @@
 CONFIG_PPP_DEFLATE=y
 CONFIG_PPP_MPPE=y
 CONFIG_PREEMPT=y
+CONFIG_PROC_FS=y
 CONFIG_PROFILING=y
 CONFIG_RTC_CLASS=y
 CONFIG_RT_GROUP_SCHED=y
@@ -163,8 +169,13 @@
 CONFIG_SECURITY_NETWORK=y
 CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
 CONFIG_SECURITY_SELINUX=y
+CONFIG_SHMEM=y
+CONFIG_SIGNALFD=y
 CONFIG_STAGING=y
+CONFIG_SUSPEND=y
 CONFIG_SYNC_FILE=y
+CONFIG_SYSFS=y
+CONFIG_TIMERFD=y
 CONFIG_TUN=y
 CONFIG_UID_SYS_STATS=y
 CONFIG_UNIX=y
@@ -175,4 +186,5 @@
 CONFIG_USB_CONFIGFS_F_MIDI=y
 CONFIG_USB_CONFIGFS_UEVENT=y
 CONFIG_USB_GADGET=y
+CONFIG_USB_SUPPORT=y
 CONFIG_XFRM_USER=y
diff --git a/android-4.14/android-recommended.cfg b/android-4.14/android-recommended.cfg
index 59b602c8..5443cad 100644
--- a/android-4.14/android-recommended.cfg
+++ b/android-4.14/android-recommended.cfg
@@ -13,6 +13,7 @@
 CONFIG_BLK_DEV_RAM_SIZE=8192
 CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_COMPACTION=y
+CONFIG_CONFIGFS_FS=y
 CONFIG_CPU_SW_DOMAIN_PAN=y
 CONFIG_DM_CRYPT=y
 CONFIG_DM_UEVENT=y
@@ -36,6 +37,7 @@
 CONFIG_HID_ELECOM=y
 CONFIG_HID_EMS_FF=y
 CONFIG_HID_EZKEY=y
+CONFIG_HID_GENERIC=y
 CONFIG_HID_GREENASIA=y
 CONFIG_HID_GYRATION=y
 CONFIG_HID_HOLTEK=y
@@ -84,7 +86,9 @@
 CONFIG_JOYSTICK_XPAD=y
 CONFIG_JOYSTICK_XPAD_FF=y
 CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_KALLSYMS=y
 CONFIG_KALLSYMS_ALL=y
+CONFIG_KEYS=y
 CONFIG_KSM=y
 CONFIG_LOGIG940_FF=y
 CONFIG_LOGIRUMBLEPAD2_FF=y
@@ -92,6 +96,7 @@
 CONFIG_MD=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_MEMORY_STATE_TIME=y
+CONFIG_MISC_FILESYSTEMS=y
 CONFIG_MSDOS_FS=y
 CONFIG_PANIC_TIMEOUT=5
 CONFIG_PANTHERLORD_FF=y
diff --git a/android-4.4/android-base.cfg b/android-4.4/android-base.cfg
index 7e3a4f5..81dd5b7 100644
--- a/android-4.4/android-base.cfg
+++ b/android-4.4/android-base.cfg
@@ -7,6 +7,7 @@
 # CONFIG_NFS_FS is not set
 # CONFIG_SYSVIPC is not set
 # CONFIG_USELIB is not set
+CONFIG_ADVISE_SYSCALLS=y
 CONFIG_AIO=y
 CONFIG_ANDROID=y
 CONFIG_ANDROID_BINDER_DEVICES=binder,hwbinder,vndbinder
@@ -14,6 +15,7 @@
 CONFIG_ASHMEM=y
 CONFIG_AUDIT=y
 CONFIG_BLK_DEV_INITRD=y
+CONFIG_BLOCK=y
 CONFIG_CGROUPS=y
 CONFIG_CGROUP_CPUACCT=y
 CONFIG_CGROUP_FREEZER=y
@@ -30,6 +32,9 @@
 CONFIG_CRYPTO_SHA512=y
 CONFIG_DEFAULT_SECURITY_SELINUX=y
 CONFIG_EMBEDDED=y
+CONFIG_EPOLL=y
+CONFIG_EVENTFD=y
+CONFIG_FUTEX=y
 CONFIG_HARDENED_USERCOPY=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_IKCONFIG=y
@@ -150,6 +155,7 @@
 CONFIG_PPP_DEFLATE=y
 CONFIG_PPP_MPPE=y
 CONFIG_PREEMPT=y
+CONFIG_PROC_FS=y
 CONFIG_PROFILING=y
 CONFIG_RTC_CLASS=y
 CONFIG_RT_GROUP_SCHED=y
@@ -159,8 +165,13 @@
 CONFIG_SECURITY_NETWORK=y
 CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
 CONFIG_SECURITY_SELINUX=y
+CONFIG_SHMEM=y
+CONFIG_SIGNALFD=y
 CONFIG_STAGING=y
+CONFIG_SUSPEND=y
 CONFIG_SYNC=y
+CONFIG_SYSFS=y
+CONFIG_TIMERFD=y
 CONFIG_TUN=y
 CONFIG_UID_SYS_STATS=y
 CONFIG_UNIX=y
@@ -171,4 +182,5 @@
 CONFIG_USB_CONFIGFS_F_MIDI=y
 CONFIG_USB_CONFIGFS_UEVENT=y
 CONFIG_USB_GADGET=y
+CONFIG_USB_SUPPORT=y
 CONFIG_XFRM_USER=y
diff --git a/android-4.4/android-recommended.cfg b/android-4.4/android-recommended.cfg
index 904fb09..ddd8504 100644
--- a/android-4.4/android-recommended.cfg
+++ b/android-4.4/android-recommended.cfg
@@ -15,6 +15,7 @@
 CONFIG_BLK_DEV_RAM_SIZE=8192
 CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_COMPACTION=y
+CONFIG_CONFIGFS_FS=y
 CONFIG_CPU_SW_DOMAIN_PAN=y
 CONFIG_DEBUG_RODATA=y
 CONFIG_DM_CRYPT=y
@@ -26,6 +27,7 @@
 CONFIG_EXT4_FS=y
 CONFIG_EXT4_FS_SECURITY=y
 CONFIG_FUSE_FS=y
+CONFIG_GPIOLIB=y
 CONFIG_GREENASIA_FF=y
 CONFIG_HIDRAW=y
 CONFIG_HID_A4TECH=y
@@ -40,6 +42,7 @@
 CONFIG_HID_ELECOM=y
 CONFIG_HID_EMS_FF=y
 CONFIG_HID_EZKEY=y
+CONFIG_HID_GENERIC=y
 CONFIG_HID_GREENASIA=y
 CONFIG_HID_GYRATION=y
 CONFIG_HID_HOLTEK=y
@@ -88,7 +91,9 @@
 CONFIG_JOYSTICK_XPAD=y
 CONFIG_JOYSTICK_XPAD_FF=y
 CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_KALLSYMS=y
 CONFIG_KALLSYMS_ALL=y
+CONFIG_KEYS=y
 CONFIG_KSM=y
 CONFIG_LOGIG940_FF=y
 CONFIG_LOGIRUMBLEPAD2_FF=y
@@ -96,6 +101,7 @@
 CONFIG_MD=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_MEMORY_STATE_TIME=y
+CONFIG_MISC_FILESYSTEMS=y
 CONFIG_MSDOS_FS=y
 CONFIG_PANIC_TIMEOUT=5
 CONFIG_PANTHERLORD_FF=y
diff --git a/android-4.9/android-base.cfg b/android-4.9/android-base.cfg
index 6764c5b..d413329 100644
--- a/android-4.9/android-base.cfg
+++ b/android-4.9/android-base.cfg
@@ -6,6 +6,7 @@
 # CONFIG_NFS_FS is not set
 # CONFIG_SYSVIPC is not set
 # CONFIG_USELIB is not set
+CONFIG_ADVISE_SYSCALLS=y
 CONFIG_AIO=y
 CONFIG_ANDROID=y
 CONFIG_ANDROID_BINDER_DEVICES=binder,hwbinder,vndbinder
@@ -13,6 +14,7 @@
 CONFIG_ASHMEM=y
 CONFIG_AUDIT=y
 CONFIG_BLK_DEV_INITRD=y
+CONFIG_BLOCK=y
 CONFIG_BPF_SYSCALL=y
 CONFIG_CGROUPS=y
 CONFIG_CGROUP_BPF=y
@@ -31,6 +33,9 @@
 CONFIG_CRYPTO_SHA512=y
 CONFIG_DEFAULT_SECURITY_SELINUX=y
 CONFIG_EMBEDDED=y
+CONFIG_EPOLL=y
+CONFIG_EVENTFD=y
+CONFIG_FUTEX=y
 CONFIG_HARDENED_USERCOPY=y
 CONFIG_HIGH_RES_TIMERS=y
 CONFIG_IKCONFIG=y
@@ -152,6 +157,7 @@
 CONFIG_PPP_DEFLATE=y
 CONFIG_PPP_MPPE=y
 CONFIG_PREEMPT=y
+CONFIG_PROC_FS=y
 CONFIG_PROFILING=y
 CONFIG_RTC_CLASS=y
 CONFIG_RT_GROUP_SCHED=y
@@ -161,8 +167,13 @@
 CONFIG_SECURITY_NETWORK=y
 CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
 CONFIG_SECURITY_SELINUX=y
+CONFIG_SHMEM=y
+CONFIG_SIGNALFD=y
 CONFIG_STAGING=y
+CONFIG_SUSPEND=y
 CONFIG_SYNC_FILE=y
+CONFIG_SYSFS=y
+CONFIG_TIMERFD=y
 CONFIG_TUN=y
 CONFIG_UID_SYS_STATS=y
 CONFIG_UNIX=y
@@ -173,4 +184,5 @@
 CONFIG_USB_CONFIGFS_F_MIDI=y
 CONFIG_USB_CONFIGFS_UEVENT=y
 CONFIG_USB_GADGET=y
+CONFIG_USB_SUPPORT=y
 CONFIG_XFRM_USER=y
diff --git a/android-4.9/android-recommended.cfg b/android-4.9/android-recommended.cfg
index c892ed4..8e2b9ee 100644
--- a/android-4.9/android-recommended.cfg
+++ b/android-4.9/android-recommended.cfg
@@ -13,6 +13,7 @@
 CONFIG_BLK_DEV_RAM_SIZE=8192
 CONFIG_CC_STACKPROTECTOR_STRONG=y
 CONFIG_COMPACTION=y
+CONFIG_CONFIGFS_FS=y
 CONFIG_CPU_SW_DOMAIN_PAN=y
 CONFIG_DEBUG_RODATA=y
 CONFIG_DM_CRYPT=y
@@ -38,6 +39,7 @@
 CONFIG_HID_ELECOM=y
 CONFIG_HID_EMS_FF=y
 CONFIG_HID_EZKEY=y
+CONFIG_HID_GENERIC=y
 CONFIG_HID_GREENASIA=y
 CONFIG_HID_GYRATION=y
 CONFIG_HID_HOLTEK=y
@@ -86,7 +88,9 @@
 CONFIG_JOYSTICK_XPAD=y
 CONFIG_JOYSTICK_XPAD_FF=y
 CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_KALLSYMS=y
 CONFIG_KALLSYMS_ALL=y
+CONFIG_KEYS=y
 CONFIG_KSM=y
 CONFIG_LOGIG940_FF=y
 CONFIG_LOGIRUMBLEPAD2_FF=y
@@ -94,6 +98,7 @@
 CONFIG_MD=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_MEMORY_STATE_TIME=y
+CONFIG_MISC_FILESYSTEMS=y
 CONFIG_MSDOS_FS=y
 CONFIG_PANIC_TIMEOUT=5
 CONFIG_PANTHERLORD_FF=y