kernel-hacking-2024-linux-s.../drivers/mfd
Tony Lindgren daebabd578 mfd: twl4030-power: Fix PM idle pin configuration to not conflict with regulators
Commit 43fef47f94 (mfd: twl4030-power: Add a configuration to turn
off oscillator during off-idle) added support for configuring the PMIC
to cut off resources during deeper idle states to save power.

This however caused regression for n900 display power that needed the
PMIC configuration to be disabled with commit d937678ab6 (ARM: dts:
Revert enabling of twl configuration for n900).

Turns out the root cause of the problem is that we must use
TWL4030_RESCONFIG_UNDEF instead of DEV_GRP_NULL to avoid disabling
regulators that may have been enabled before the init function
for twl4030-power.c runs. With TWL4030_RESCONFIG_UNDEF we let the
regulator framework control the regulators like it should. Here we
need to only configure the sys_clken and sys_off_mode triggers for
the regulators that cannot be done by the regulator framework as
it's not running at that point.

This allows us to enable the PMIC configuration for n900.

Fixes: 43fef47f94 (mfd: twl4030-power: Add a configuration to turn off oscillator during off-idle)

Cc: stable@vger.kernel.org # v3.16
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tested-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2014-08-28 15:57:55 +01:00
..
88pm80x.c
88pm800.c
88pm805.c mfd: 88pm805: msleep(1ms ~ 20ms) may not do what the caller intends 2014-07-09 16:38:02 +01:00
88pm860x-core.c mfd: 88pm860x-core: Repair formatting issues 2014-07-09 16:38:03 +01:00
88pm860x-i2c.c mfd: 88pm860x-i2c: Repair 'space before tab' warning 2014-07-09 16:38:03 +01:00
aat2870-core.c mfd: aat2870-core: Stop using obsolte simple_strtoul() 2014-07-09 16:38:04 +01:00
ab3100-core.c mfd: ab3100-core: Correct code sytle problems 2014-07-09 16:38:05 +01:00
ab3100-otp.c
ab8500-core.c mfd: ab8500-core: Use 'ifdef' for config options 2014-08-20 13:28:02 +01:00
ab8500-debugfs.c mfd: ab8500-debugfs: BIG clean-up 2014-07-21 16:54:25 +01:00
ab8500-gpadc.c
ab8500-sysctrl.c
abx500-core.c mfd: abx500-core: Remove unused function abx500_dump_all_banks() 2014-06-03 08:11:51 +01:00
adp5520.c
arizona-core.c mfd: arizona: Add missing handling for ISRC3 under/overclocked 2014-07-28 11:01:45 +01:00
arizona-i2c.c mfd: arizona: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:38:01 +01:00
arizona-irq.c mfd: arizona: Only free the CTRLIF_ERR IRQ if we requested it 2014-07-28 11:01:47 +01:00
arizona-spi.c mfd: arizona: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:38:01 +01:00
arizona.h mfd: wm5110: Add new interrupt register definitions 2014-07-28 11:01:42 +01:00
as3711.c mfd: as3711: Make of_device_id array const 2014-06-03 08:11:38 +01:00
as3722.c
asic3.c mfd: asic3: Fix potential null pointer dereference 2014-07-09 14:58:01 +01:00
axp20x.c mfd: AXP20x: Add mfd driver for AXP20x PMIC 2014-06-03 08:11:25 +01:00
bcm590xx.c Changes to existing drivers: 2014-06-06 12:08:39 -07:00
cros_ec.c mfd: cros_ec: Move EC interrupt to cros_ec_keyb 2014-07-09 14:58:20 +01:00
cros_ec_i2c.c mfd: cros_ec: Use the proper size when looking at the cros_ec_i2c result 2014-07-09 16:38:21 +01:00
cros_ec_spi.c == Changes to existing drivers == 2014-08-07 17:17:39 -07:00
cs5535-mfd.c
da903x.c
da9052-core.c
da9052-i2c.c
da9052-irq.c
da9052-spi.c
da9055-core.c
da9055-i2c.c
da9063-core.c mfd: da9063: Add support for AD silicon variant 2014-07-28 08:09:25 +01:00
da9063-i2c.c mfd: da9063: Add support for AD silicon variant 2014-07-28 08:09:25 +01:00
da9063-irq.c
davinci_voicecodec.c
db8500-prcmu.c mfd: db8500-prcmu: Remove check for CONFIG_DBX500_PRCMU_DEBUG 2014-06-03 08:11:53 +01:00
dbx500-prcmu-regs.h
dm355evm_msp.c mfd: dm355evm_msp: Fix checkpatch error: insert space after ',' 2014-07-22 13:17:06 +01:00
ezx-pcap.c mfd: ezx-pcap: Repair coding style errors picked up with checkpatch 2014-07-25 15:31:02 +01:00
htc-egpio.c
htc-i2cpld.c mfd: htc-i2cpld: Fix %d confusingly prefixed with 0x in format string 2014-08-20 13:27:48 +01:00
htc-pasic3.c
intel_msic.c mfd: fix comment 2014-06-19 15:23:36 +02:00
intel_soc_pmic_core.c mfd: intel_soc_pmic: Rid compiler working for unused ACPI match table 2014-07-09 16:37:54 +01:00
intel_soc_pmic_core.h mfd: intel_soc_pmic: Core driver 2014-06-17 15:59:20 +01:00
intel_soc_pmic_crc.c mfd: intel_soc_pmic: Crystal Cove support 2014-06-17 15:59:38 +01:00
ipaq-micro.c mfd: ipaq-micro: Fix coding style errors/warnings reported by checkpatch 2014-07-25 15:31:45 +01:00
janz-cmodio.c
jz4740-adc.c
Kconfig Merge remote-tracking branches 'regulator/topic/s2mps11', 'regulator/topic/s2mpu02', 'regulator/topic/s5m8767' and 'regulator/topic/tps65090' into regulator-next 2014-08-05 18:29:27 +01:00
kempld-core.c mfd: kempld-core: Correct a variety of checkpatch warnings 2014-07-25 15:31:45 +01:00
lm3533-core.c
lm3533-ctrlbank.c
lp3943.c mfd: lp3943: Make mfd_cell array const 2014-06-03 08:11:36 +01:00
lp8788-irq.c mfd: lp8788-irq: Fix 'missing blank line after declarations' warning 2014-07-25 15:31:39 +01:00
lp8788.c
lpc_ich.c mfd: lpc_ich: Enable GPIO for Panther Point 2014-06-03 08:11:15 +01:00
lpc_sch.c
Makefile mfd: max77686: Convert to use regmap_irq 2014-07-21 16:54:26 +01:00
max8907.c mfd: max8907: Make of_device_id array const 2014-06-03 08:11:32 +01:00
max8925-core.c mfd: max8925-core: Fix 'missing blank line after declarations' warning 2014-07-25 15:31:41 +01:00
max8925-i2c.c mfd: max8925-i2c: Fix 'blank line after declarations' warning 2014-07-21 16:58:41 +01:00
max8997-irq.c
max8997.c mfd: max8997: Make of_device_id array const 2014-06-03 08:11:30 +01:00
max8998-irq.c
max8998.c mfd: max8998: Make of_device_id array const 2014-06-03 08:11:34 +01:00
max14577.c mfd: max14577: Cast to architecture agnostic data type 2014-06-03 08:11:50 +01:00
max77686.c mfd: max77686: Ensure device type IDs are architecture agnostic 2014-07-25 15:31:48 +01:00
max77693.c mfd: max77693: Handle IRQs using regmap 2014-06-17 15:17:00 +01:00
mc13xxx-core.c mfd: mc13xxx: Use regmap irq framework for interrupts 2014-07-09 14:58:10 +01:00
mc13xxx-i2c.c
mc13xxx-spi.c
mc13xxx.h mfd: mc13xxx: Use regmap irq framework for interrupts 2014-07-09 14:58:10 +01:00
mcp-core.c mfd: mcp-core: Fix 'blank line after declarations' warning 2014-07-22 13:17:02 +01:00
mcp-sa11x0.c
menelaus.c mfd: menelaus: Use module_i2c_driver 2014-06-03 08:12:47 +01:00
mfd-core.c mfd: core: Don't use devres functions before device is added 2014-06-03 08:11:18 +01:00
omap-usb-host.c mfd: omap-usb-host: Fix %d confusingly prefixed with 0x in format string 2014-08-20 13:26:52 +01:00
omap-usb-tll.c
omap-usb.h
palmas.c regulator: palmas: add driver data and modularize the probe 2014-06-23 12:30:56 +01:00
pcf50633-adc.c
pcf50633-core.c mfd: pcf50633: Reconnect -ENOMEM error path 2014-07-09 14:58:14 +01:00
pcf50633-gpio.c
pcf50633-irq.c
pm8921-core.c mfd: pm8921-core: Remove unused variable 2014-07-09 14:58:09 +01:00
rc5t583-irq.c
rc5t583.c
rdc321x-southbridge.c mfd: rdc321x: Fix off-by-one for ngpio setting 2014-06-03 08:11:17 +01:00
retu-mfd.c
rtl8411.c
rts5209.c
rts5227.c
rts5229.c
rts5249.c
rtsx_pcr.c mfd: rtsx: Add dma transfer function 2014-07-09 14:14:58 +01:00
rtsx_pcr.h
rtsx_usb.c drivers/mfd/rtsx_usb.c: export device table 2014-08-14 10:56:15 -06:00
sec-core.c mfd: sec-core: Fix 'missing blank line after declarations' warning 2014-07-22 13:17:07 +01:00
sec-irq.c mfd: sec-core: Add support for S2MPU02 device 2014-07-09 14:58:11 +01:00
si476x-cmd.c mfd: si476x-cmd: Remedy checkpatch style complains 2014-07-25 15:31:44 +01:00
si476x-i2c.c
si476x-prop.c
sm501.c mfd: sm501: Make of_device_id array const 2014-06-03 08:11:25 +01:00
smsc-ece1099.c
ssbi.c
sta2x11-mfd.c
stmpe-i2c.c mfd: stmpe: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:37:55 +01:00
stmpe-spi.c
stmpe.c mfd: stmpe: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:37:55 +01:00
stmpe.h mfd: stmpe: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:37:55 +01:00
stw481x.c
sun6i-prcm.c mfd: sun6i-prcm: Add support for Allwinner A23 PRCM 2014-07-21 16:54:25 +01:00
syscon.c Changes to existing drivers: 2014-06-06 12:08:39 -07:00
t7l66xb.c
tc3589x.c mfd: tc3589x: Translate onecell, not twocell 2014-07-09 14:58:01 +01:00
tc6387xb.c mfd: tc6387xb: Remove unnecessary braces and correct style warnings 2014-07-25 15:31:43 +01:00
tc6393xb.c
ti_am335x_tscadc.c
timberdale.c
timberdale.h
tmio_core.c
tps6105x.c mfd: tps6105x: Use managed resources when allocating memory 2014-07-25 15:31:47 +01:00
tps6507x.c mfd: tps6507x: Make of_device_id array const 2014-06-03 08:11:27 +01:00
tps6586x.c mfd: tps6586x: Make of_device_id array const 2014-06-03 08:11:28 +01:00
tps65010.c
tps65090.c mfd: tps65090: Stop caching most registers 2014-04-23 12:32:19 +01:00
tps65217.c
tps65218.c mfd: tps65218: Terminate of match table 2014-06-03 08:11:54 +01:00
tps65910.c mfd: tps65910: Rid data size incompatibility warn when building for 64bit 2014-07-09 16:38:01 +01:00
tps65911-comparator.c
tps65912-core.c
tps65912-i2c.c
tps65912-irq.c
tps65912-spi.c mfd: tps65912-spi: Remove unused variable 2014-07-28 08:10:06 +01:00
tps80031.c
twl-core.c Immutable branch between MFD and Extcon due for v3.16 merge-window. 2014-06-03 08:08:40 +01:00
twl-core.h
twl4030-audio.c
twl4030-irq.c mfd: twl4030-irq: Fix style warnings relating to pr_warn() and sizeof() 2014-07-25 15:31:40 +01:00
twl4030-power.c mfd: twl4030-power: Fix PM idle pin configuration to not conflict with regulators 2014-08-28 15:57:55 +01:00
twl6030-irq.c mfd: twl6030-irq: Extinguish coding style warnings 2014-07-25 15:31:42 +01:00
twl6040.c mfd: twl6040: Fix 'insert space after ','', error 2014-07-22 13:17:07 +01:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-sysreg.c ARM: vexpress: move HBI check to sysreg driver 2014-05-15 17:02:21 +01:00
viperboard.c
vx855.c
wl1273-core.c
wm831x-auxadc.c
wm831x-core.c
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c
wm5102-tables.c mfd: arizona: Rename thermal shutdown interrupt 2014-07-28 08:10:47 +01:00
wm5110-tables.c mfd: wm5110: Add new interrupt register definitions 2014-07-28 11:01:42 +01:00
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c mfd: wm8350-i2c: Replace spaces with tabs 2014-07-25 15:31:42 +01:00
wm8350-irq.c mfd: wm8350-irq: Fix 'line over 80 chars' warning 2014-07-22 13:17:05 +01:00
wm8350-regmap.c
wm8400-core.c mfd: wm8400-core: Make mfd_cell array const 2014-06-03 08:11:34 +01:00
wm8994-core.c
wm8994-irq.c
wm8994-regmap.c mfd: wm8994: Add a bunch of missing defaults/readables 2014-07-09 14:58:07 +01:00
wm8994.h
wm8997-tables.c mfd: arizona: Rename thermal shutdown interrupt 2014-07-28 08:10:47 +01:00