zephyr/drivers/sensor
Ulf Magnusson eddd98f811 kconfig: Replace some single-symbol 'if's with 'depends on'
I think people might be reading differences into 'if' and 'depends on'
that aren't there, like maybe 'if' being needed to "hide" a symbol,
while 'depends on' just adds a dependency.

There are no differences between 'if' and 'depends on'. 'if' is just a
shorthand for 'depends on'. They work the same when it comes to creating
implicit menus too.

The way symbols get "hidden" is through their dependencies not being
satisfied ('if'/'depends on' get copied up as a dependency on the
prompt).

Since 'if' and 'depends on' are the same, an 'if' with just a single
symbol in it can be replaced with a 'depends on'. IMO, it's best to
avoid 'if' there as a style choice too, because it confuses people into
thinking there's deep Kconfig magic going on that requires 'if'.

Going for 'depends on' can also remove some nested 'if's, which
generates nicer symbol information and docs, because nested 'if's really
are so simple/dumb that they just add the dependencies from both 'if's
to all symbols within.

Replace a bunch of single-symbol 'if's with 'depends on' to despam the
Kconfig files a bit and make it clearer how things work. Also do some
other minor related dependency refactoring.

The replacement isn't complete. Will fix up the rest later. Splitting it
a bit to make it more manageable.

(Everything above is true for choices, menus, and comments as well.)

Detected by tweaking the Kconfiglib parsing code. It's impossible to
detect after parsing, because 'if' turns into 'depends on'.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2020-02-08 08:32:42 -05:00
..
adt7420
adxl362
adxl372
ak8975
amg88xx
ams_iAQcore
apds9960
bma280
bmc150_magn
bme280
bme680
bmg160
bmi160
bmm150
ccs811
dht
ens210
fxas21002
fxos8700
grove
hmc5883l
hp206c
hts221
iis3dhhc
isl29035
lis2dh
lis2ds12
lis2dw12
lis2mdl
lis3mdl
lps22hb
lps22hh
lps25hb
lsm6ds0
lsm6dsl
lsm6dso
lsm9ds0_gyro
lsm9ds0_mfd
lsm303dlhc_magn
max30101
max44009
mcp9808
mpu6050
ms5607
ms5837
nrf5
nxp_kinetis_temp
opt3001
pms7003
qdec_nrfx
sht3xd
si7006
si7060
stts751
sx9500
th02
ti_hdc
tmp007
tmp112
tmp116
vl53l0x
CMakeLists.txt
Kconfig
sensor_handlers.c
sensor_shell.c