android_kernel_motorola_sm6375/drivers/mfd
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Arnd Bergmann e29ee40c2e mfd: madera: Work around false-positive -Wininitialized warning
[ Upstream commit 364752aa0c6ab0a06a2d5bfdb362c1ca407f1a30 ]

clang-21 warns about one uninitialized variable getting dereferenced
in madera_dev_init:

drivers/mfd/madera-core.c:739:10: error: variable 'mfd_devs' is uninitialized when used here [-Werror,-Wuninitialized]
  739 |                               mfd_devs, n_devs,
      |                               ^~~~~~~~
drivers/mfd/madera-core.c:459:33: note: initialize the variable 'mfd_devs' to silence this warning
  459 |         const struct mfd_cell *mfd_devs;
      |                                        ^
      |                                         = NULL

The code is actually correct here because n_devs is only nonzero
when mfd_devs is a valid pointer, but this is impossible for the
compiler to see reliably.

Change the logic to check for the pointer as well, to make this easier
for the compiler to follow.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20250807071932.4085458-1-arnd@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-12-03 12:45:08 +01:00
..
88pm80x.c
88pm800.c
88pm805.c
88pm860x-core.c
88pm860x-i2c.c
aat2870-core.c
ab3100-core.c
ab3100-otp.c
ab8500-core.c
ab8500-debugfs.c
ab8500-gpadc.c
ab8500-sysctrl.c
abx500-core.c
ac100.c
act8945a.c
adp5520.c
altera-a10sr.c
altera-sysmgr.c mfd: altera-sysmgr: Call of_node_put() only when of_parse_phandle() takes a ref 2024-03-26 18:22:21 -04:00
arizona-core.c
arizona-i2c.c
arizona-irq.c
arizona-spi.c
arizona.h
as3711.c
as3722.c
asic3.c
at91-usart.c
atmel-flexcom.c
atmel-hlcdc.c
atmel-smc.c
axp20x-i2c.c
axp20x-rsb.c
axp20x.c
bcm590xx.c
bcm2835-pm.c
bd9571mwv.c
cros_ec_dev.c
cs47l15-tables.c
cs47l24-tables.c
cs47l35-tables.c
cs47l85-tables.c
cs47l90-tables.c
cs47l92-tables.c
cs5535-mfd.c
da903x.c
da9052-core.c
da9052-i2c.c
da9052-irq.c
da9052-spi.c mfd: da9052-spi: Change read-mask to write-mask 2024-12-14 19:44:28 +01:00
da9055-core.c
da9055-i2c.c
da9062-core.c
da9063-core.c
da9063-i2c.c
da9063-irq.c
da9150-core.c
davinci_voicecodec.c
db8500-prcmu.c
dbx500-prcmu-regs.h
dln2.c mfd: dln2: Fix double put in dln2_probe 2023-11-20 10:30:13 +01:00
dm355evm_msp.c
exynos-lpass.c mfd: exynos-lpass: Avoid calling exynos_lpass_disable() twice in exynos_lpass_remove() 2025-06-27 11:02:48 +01:00
ezx-pcap.c
fsl-imx25-tsadc.c
hi655x-pmic.c
hi6421-pmic-core.c
htc-i2cpld.c
htc-pasic3.c
intel-lpss-acpi.c mfd: intel-lpss: Add missing check for platform_get_resource 2023-07-27 08:37:21 +02:00
intel-lpss-pci.c
intel-lpss.c
intel-lpss.h
intel_msic.c
intel_quark_i2c_gpio.c
intel_soc_pmic_bxtwc.c mfd: intel_soc_pmic_bxtwc: Use IRQ domain for PMIC devices 2024-12-14 19:44:29 +01:00
intel_soc_pmic_chtdc_ti.c mfd: intel_soc_pmic_chtdc_ti: Set use_single_read regmap_config flag 2025-10-29 13:59:55 +01:00
intel_soc_pmic_chtwc.c
intel_soc_pmic_core.c
intel_soc_pmic_core.h
intel_soc_pmic_crc.c
intel_soc_pmic_mrfld.c
ipaq-micro.c
janz-cmodio.c
Kconfig mfd: ti_am335x_tscadc: Fix TI SoC dependencies 2024-02-23 08:25:02 +01:00
kempld-core.c
lm3533-core.c
lm3533-ctrlbank.c
lochnagar-i2c.c
lp873x.c
lp3943.c
lp8788-irq.c
lp8788.c
lp87565.c
lpc_ich.c mfd: lpc_ich: Add another Gemini Lake ISA bridge PCI device-id 2025-03-13 12:43:03 +01:00
lpc_sch.c
madera-core.c mfd: madera: Work around false-positive -Wininitialized warning 2025-12-03 12:45:08 +01:00
madera-i2c.c
madera-spi.c
madera.h
Makefile
max8907.c
max8925-core.c
max8925-i2c.c
max8997-irq.c
max8997.c
max8998-irq.c
max8998.c
max14577.c mfd: max14577: Fix wakeup source leaks on device unbind 2025-07-17 18:24:49 +02:00
max77620.c
max77650.c
max77686.c
max77693.c
max77843.c
mc13xxx-core.c
mc13xxx-i2c.c
mc13xxx-spi.c
mc13xxx.h
mcp-core.c
mcp-sa11x0.c
menelaus.c
menf21bmc.c
mfd-core.c
motorola-cpcap.c
mt6397-core.c
mt6397-irq.c
mxs-lradc.c
omap-usb-host.c
omap-usb-tll.c mfd: omap-usb-tll: Use struct_size to allocate tll 2024-08-19 05:33:32 +02:00
omap-usb.h
palmas.c
pcf50633-adc.c
pcf50633-core.c
pcf50633-gpio.c
pcf50633-irq.c
qcom-pm8xxx.c
qcom-spmi-pmic.c
qcom_rpm.c
rave-sp.c
rc5t583-irq.c
rc5t583.c
rdc321x-southbridge.c
retu-mfd.c
rk808.c
rn5t618.c
rohm-bd718x7.c
rohm-bd70528.c
rt5033.c mfd: rt5033: Fix missing regmap_del_irq_chip() 2024-12-14 19:44:29 +01:00
sec-core.c
sec-irq.c
si476x-cmd.c
si476x-i2c.c
si476x-prop.c
sky81452.c
sm501.c mfd: sm501: Switch to BIT() to mitigate integer overflows 2025-04-10 14:29:41 +02:00
smsc-ece1099.c
sprd-sc27xx-spi.c
ssbi.c
sta2x11-mfd.c
stm32-lptimer.c
stm32-timers.c
stmfx.c mfd: stmfx: Fix error path in stmfx_chip_init 2023-07-27 08:37:21 +02:00
stmpe-i2c.c mfd: stmpe-i2c: Add missing MODULE_LICENSE 2025-12-03 12:45:08 +01:00
stmpe-spi.c mfd: stmpe-spi: Correct the name used in MODULE_DEVICE_TABLE 2025-06-27 11:02:48 +01:00
stmpe.c mfd: stmpe: Remove IRQ domain upon removal 2025-12-03 12:45:08 +01:00
stmpe.h
stpmic1.c
stw481x.c
sun4i-gpadc.c
sun6i-prcm.c
syscon.c mfd: syscon: Call of_node_put() only when of_parse_phandle() takes a ref 2024-03-26 18:22:21 -04:00
t7l66xb.c
tc3589x.c
tc6387xb.c
tc6393xb.c
ti-lmu.c
ti_am335x_tscadc.c
timberdale.c
timberdale.h
tmio_core.c
tps6105x.c
tps6507x.c
tps6586x.c
tps65010.c mfd: tps65010: Use IRQF_NO_AUTOEN flag in request_irq() to fix race 2024-12-14 19:44:28 +01:00
tps65086.c
tps65090.c
tps65217.c
tps65218.c
tps65910.c
tps65911-comparator.c
tps65912-core.c
tps65912-i2c.c
tps65912-spi.c
tps68470.c
tps80031.c
tqmx86.c
twl-core.c
twl-core.h
twl4030-audio.c
twl4030-irq.c
twl4030-power.c
twl6030-irq.c
twl6040.c
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-sysreg.c mfd: vexpress-sysreg: Check the return value of devm_gpiochip_add_data() 2025-10-29 13:59:54 +01:00
viperboard.c
vx855.c
wl1273-core.c
wm97xx-core.c
wm831x-auxadc.c
wm831x-core.c
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c
wm5102-tables.c
wm5110-tables.c
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c
wm8350-regmap.c
wm8400-core.c
wm8994-core.c
wm8994-irq.c
wm8994-regmap.c
wm8994.h
wm8997-tables.c
wm8998-tables.c