sst-linux/drivers/mfd
Nikita Zhandarovich d77be51484 mfd: sm501: Switch to BIT() to mitigate integer overflows
[ Upstream commit 2d8cb9ffe18c2f1e5bd07a19cbce85b26c1d0cf0 ]

If offset end up being high enough, right hand expression in functions
like sm501_gpio_set() shifted left for that number of bits, may
not fit in int type.

Just in case, fix that by using BIT() both as an option safe from
overflow issues and to make this step look similar to other gpio
drivers.

Found by Linux Verification Center (linuxtesting.org) with static
analysis tool SVACE.

Fixes: f61be273d3 ("sm501: add gpiolib support")
Signed-off-by: Nikita Zhandarovich <n.zhandarovich@fintech.ru>
Link: https://lore.kernel.org/r/20250115171206.20308-1-n.zhandarovich@fintech.ru
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-10 14:33:35 +02:00
..
88pm80x.c
88pm800.c
88pm805.c
88pm860x-core.c
88pm860x-i2c.c
aat2870-core.c
ab8500-core.c
ab8500-sysctrl.c
abx500-core.c
ac100.c
acer-ec-a500.c
act8945a.c
adp5520.c
altera-a10sr.c
altera-sysmgr.c
arizona-core.c
arizona-i2c.c
arizona-irq.c
arizona-spi.c
arizona.h
as3711.c
as3722.c
asic3.c
at91-usart.c
atc260x-core.c
atc260x-i2c.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:53:35 +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-regs.h
db8500-prcmu.c
dln2.c
dm355evm_msp.c
ene-kb3930.c
exynos-lpass.c
ezx-pcap.c
fsl-imx25-tsadc.c
gateworks-gsc.c
hi655x-pmic.c
hi6421-pmic-core.c
hi6421-spmi-pmic.c
htc-i2cpld.c
htc-pasic3.c
intel_pmc_bxt.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:53:36 +01:00
intel_soc_pmic_chtdc_ti.c
intel_soc_pmic_chtwc.c
intel_soc_pmic_crc.c
intel_soc_pmic_mrfld.c
intel-lpss-acpi.c
intel-lpss-pci.c
intel-lpss.c
intel-lpss.h
intel-m10-bmc.c
ioc3.c
ipaq-micro.c
iqs62x.c
janz-cmodio.c
Kconfig
kempld-core.c
khadas-mcu.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-02-21 13:49:31 +01:00
lpc_sch.c
madera-core.c
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
max77620.c
max77650.c
max77686.c
max77693.c
max77714.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
mp2629.c
mt6358-irq.c
mt6360-core.c
mt6370.c
mt6370.h
mt6397-core.c
mt6397-irq.c
mxs-lradc.c
ntxec.c
ocelot-core.c
ocelot-spi.c
ocelot.h
omap-usb-host.c
omap-usb-tll.c
omap-usb.h
palmas.c
pcf50633-adc.c
pcf50633-core.c
pcf50633-gpio.c
pcf50633-irq.c
qcom_rpm.c
qcom-pm8xxx.c
qcom-pm8008.c
qcom-spmi-pmic.c
rave-sp.c
rc5t583-irq.c
rc5t583.c
rdc321x-southbridge.c
retu-mfd.c
rk808.c
rn5t618.c
rohm-bd718x7.c
rohm-bd9576.c
rohm-bd71828.c
rsmu_core.c
rsmu_i2c.c
rsmu_spi.c
rsmu.h
rt4831.c
rt5033.c mfd: rt5033: Fix missing regmap_del_irq_chip() 2024-12-14 19:53:40 +01:00
rt5120.c
sec-core.c
sec-irq.c
si476x-cmd.c
si476x-i2c.c
si476x-prop.c
simple-mfd-i2c.c
simple-mfd-i2c.h
sky81452.c
sm501.c mfd: sm501: Switch to BIT() to mitigate integer overflows 2025-04-10 14:33:35 +02:00
sprd-sc27xx-spi.c
ssbi.c
sta2x11-mfd.c
stm32-lptimer.c
stm32-timers.c
stmfx.c
stmpe-i2c.c
stmpe-spi.c
stmpe.c
stmpe.h
stpmic1.c
stw481x.c
sun4i-gpadc.c
sun6i-prcm.c
syscon.c mfd: syscon: Fix race in device_node_get_regmap() 2025-02-21 13:49:03 +01:00
t7l66xb.c
tc3589x.c
tc6387xb.c
tc6393xb.c
ti_am335x_tscadc.c
ti-lmu.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:53:35 +01:00
tps65086.c
tps65090.c
tps65217.c
tps65218.c
tps65910.c
tps65911-comparator.c
tps65912-core.c
tps65912-i2c.c
tps65912-spi.c
tqmx86.c
twl4030-audio.c
twl4030-irq.c
twl4030-power.c
twl6030-irq.c
twl6040.c
twl-core.c
twl-core.h
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-sysreg.c
viperboard.c
vx855.c
wcd934x.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