linux-hardened/drivers/mfd
Krzysztof Kozlowski d785334a0d mfd: s2mps11: Add manual shutdown method for Odroid XU3
On Odroid XU3 board (with S2MPS11 PMIC) the PWRHOLD bit in CTRL1
register must be manually set to 0 before initiating power off sequence.

One of usual power down methods for Exynos based devices looks like:
1. PWRHOLD pin of PMIC is connected to PSHOLD of Exynos SoC.
2. Exynos holds up this pin during system operation.
3. ACOKB pin of PMIC is pulled up to VBATT and optionally to pin in
   other device.
4. When PWRHOLD/PSHOLD goes low, the PMIC will turn off the power if
   ACOKB goes high.

On Odroid XU3 family the difference is in (3) - the ACOKB is grounded.
This means that PMIC must manually set PWRHOLD field to low and then
wait for signal from Application Processor (the usual change in
PWRHOLD/PSHOLD pin will actually cut off the power).

The patch adds respective binding allowing Odroid XU3 device to be
powered off.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski.k@gmail.com>
Reported-by: Anand Moon <linux.amoon@gmail.com>
Tested-by: Anand Moon <linux.amoon@gmail.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2015-10-26 14:49:04 +00:00
..
88pm80x.c mfd: 88pm80x: Add 88pm860 chip type support 2015-10-26 14:48:56 +00:00
88pm800.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
88pm805.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
88pm860x-core.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
88pm860x-i2c.c mfd: 88pm860x-i2c: Fix variable length array Sparse warning 2014-09-26 08:15:45 +01:00
aat2870-core.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
ab3100-core.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
ab3100-otp.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
ab8500-core.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
ab8500-debugfs.c mfd: ab8500-debugfs: Pass the IRQF_ONESHOT flag 2015-06-22 12:25:27 +01:00
ab8500-gpadc.c mfd: ab8500-gpadc: Pass the IRQF_ONESHOT flag 2015-06-22 12:25:28 +01:00
ab8500-sysctrl.c mfd: ab8500: Decrement the power supply's device reference counter 2015-03-13 23:15:54 +01:00
abx500-core.c mfd: abx500-core: Remove unused function abx500_dump_all_banks() 2014-06-03 08:11:51 +01:00
adp5520.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
arizona-core.c sound updates for 4.3-rc1 2015-09-04 11:46:02 -07:00
arizona-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
arizona-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
arizona-spi.c mfd: arizona: Add support for WM8280/WM8281 2015-02-26 10:04:07 +00:00
arizona.h mfd: arizona: Add support for WM8998 and WM1814 2015-08-11 15:08:42 +01:00
as3711.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
as3722.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
asic3.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
atmel-hlcdc.c mfd: atmel-hlcdc: Fix module autoload for OF platform driver 2015-10-26 14:48:59 +00:00
axp20x.c mfd: axp20x: Add a cell for the usb power_supply part of the axp20x PMICs 2015-08-12 09:59:39 +01:00
bcm590xx.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
cros_ec.c mfd: cros_ec: Staticise some newly introduced structures 2015-06-22 12:23:02 +01:00
cros_ec_i2c.c mfd: cros_ec_i2c: Add OF match table 2015-10-26 14:48:55 +00:00
cros_ec_spi.c mfd: cros_ec: spi: Add OF match table 2015-08-24 15:27:59 +01:00
cs5535-mfd.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
da903x.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
da9052-core.c mfd: da9052: Fix broken regulator probe 2015-05-27 13:34:15 +01:00
da9052-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
da9052-irq.c mfd: Constify regmap and irq configuration data 2015-06-22 12:25:01 +01:00
da9052-spi.c mfd: da9052: Fix register access via SPI 2015-03-12 09:06:40 +00:00
da9055-core.c mfd: Constify regmap and irq configuration data 2015-06-22 12:25:01 +01:00
da9055-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
da9062-core.c mfd: da9062: Support for the DA9063 OnKey in the DA9062 core 2015-08-11 15:09:08 +01:00
da9063-core.c mfd: da9063: Add support for OnKey driver 2015-06-22 12:25:20 +01:00
da9063-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
da9063-irq.c mfd: da9063: Fix missing DA9063_M_DVC_RDY mask bit 2015-08-11 15:08:51 +01:00
da9150-core.c mfd: da9150: Use DEFINE_RES_IRQ_NAMED() help macro for IRQ resource 2015-10-13 11:28:36 +01:00
davinci_voicecodec.c mfd: davinci_voicecodec: Constify struct regmap_config 2015-01-22 15:56:24 +00:00
db8500-prcmu.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
dbx500-prcmu-regs.h
dln2.c mfd: dln2: Use msecs_to_jiffies for time conversion 2015-03-26 14:20:18 +00:00
dm355evm_msp.c mfd: dm355evm_msp: Fix checkpatch error: insert space after ',' 2014-07-22 13:17:06 +01:00
ezx-pcap.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
hi6421-pmic-core.c mfd: hi6421-pmic: Fix module autoload for OF platform driver 2015-10-26 14:49:00 +00:00
htc-egpio.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
htc-i2cpld.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
htc-pasic3.c
intel-lpss-acpi.c mfd: Add support for Intel Sunrisepoint LPSS devices 2015-07-28 09:56:47 +01:00
intel-lpss-pci.c mfd: Add support for Intel Sunrisepoint LPSS devices 2015-07-28 09:56:47 +01:00
intel-lpss.c mfd: intel-lpss: Use writeq() helper 2015-10-26 14:49:03 +00:00
intel-lpss.h mfd: Add support for Intel Sunrisepoint LPSS devices 2015-07-28 09:56:47 +01:00
intel_msic.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
intel_quark_i2c_gpio.c mfd: intel_quark_i2c_gpio: support devices behind i2c bus 2015-10-26 15:25:55 +01:00
intel_soc_pmic_core.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-09-04 15:49:32 -07:00
intel_soc_pmic_core.h mfd: Constify regmap and irq configuration data 2015-06-22 12:25:01 +01:00
intel_soc_pmic_crc.c mfd: intel_soc_pmic_crc: Add PWM cell device for Crystalcove PMIC 2015-07-21 09:22:08 +02:00
ipaq-micro.c mfd: ipaq-micro: Convert to built-in platform driver 2015-08-11 15:09:00 +01:00
janz-cmodio.c can: janz-ican3: add support for CAL/CANopen firmware 2015-05-06 08:03:20 +02:00
jz4740-adc.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
Kconfig Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-09-04 15:49:32 -07:00
kempld-core.c mfd: kempld-core: Add support for COMe-bBL6 and COMe-cBW6 to Kontron PLD driver 2015-08-11 15:08:50 +01:00
lm3533-core.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
lm3533-ctrlbank.c
lp3943.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
lp8788-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
lp8788.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
lpc_ich.c mfd: watchdog: iTCO_wdt: Expose watchdog properties using platform data 2015-08-11 15:03:21 +01:00
lpc_sch.c mfd: lpc_sch: Enable WDT for Intel Quark X1000 2015-01-22 15:55:56 +00:00
Makefile mfd: da9062: Supply core driver 2015-08-11 15:08:45 +01:00
max8907.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
max8925-core.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
max8925-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
max8997-irq.c mfd: max899x: Avoid redundant irq_data lookup 2015-08-11 15:09:08 +01:00
max8997.c mfd: max8997: Fix module autoload for OF platform driver 2015-10-26 14:49:01 +00:00
max8998-irq.c mfd: max899x: Avoid redundant irq_data lookup 2015-08-11 15:09:08 +01:00
max8998.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
max14577.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
max77686.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
max77693.c - New Device Support 2015-09-04 11:35:03 -07:00
max77843.c drivers: max77843: Switch to common max77693 state container 2015-07-16 21:39:30 +01:00
mc13xxx-core.c mfd: mc13xxx-core: Pass the IRQF_ONESHOT flag 2015-06-22 12:25:24 +01:00
mc13xxx-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
mc13xxx-spi.c mfd: mc13xxx: i2c/spi: Constify struct regmap_config 2015-01-22 16:03:44 +00:00
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 mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
menelaus.c mfd: menelaus: Use macro for magic number 2015-03-30 10:06:55 +01:00
menf21bmc.c mfd: menf21bmc: Introduce MEN 14F021P00 BMC MFD Core driver 2014-09-24 13:30:16 +01:00
mfd-core.c mfd: core: redo ACPI matching of the children devices 2015-10-26 15:25:53 +01:00
mt6397-core.c mfd: mt6397: Implement wake handler and suspend/resume to handle wake up event 2015-08-11 15:09:11 +01:00
omap-usb-host.c mfd: omap-usb-host: Remove some unused functions 2015-01-22 16:03:53 +00:00
omap-usb-tll.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
omap-usb.h
palmas.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
pcf50633-adc.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
pcf50633-core.c mfd: pcf50633: Constify struct regmap_config 2015-01-22 15:56:21 +00:00
pcf50633-gpio.c
pcf50633-irq.c
pm8921-core.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
qcom-spmi-pmic.c mfd: qcom-spmi-pmic: Add specific compatible strings for Qualcomm's SPMI PMIC's 2015-03-30 10:07:08 +01:00
qcom_rpm.c mfd: qcom-rpm: Add apq8064 QDSS clock resource 2015-08-11 15:08:48 +01:00
rc5t583-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
rc5t583.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
rdc321x-southbridge.c mfd: rdc321x: Fix off-by-one for ngpio setting 2014-06-03 08:11:17 +01:00
retu-mfd.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
rk808.c mfd: Constify of_device_id array 2015-03-26 14:20:18 +00:00
rn5t618.c mfd: Add Ricoh RN5T618 PMIC core driver 2014-09-26 08:15:51 +01:00
rt5033.c mfd: Export OF module alias information in missing drivers 2015-08-11 15:09:10 +01:00
rtl8411.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rts5209.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rts5227.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rts5229.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rts5249.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rtsx_pcr.c mfd: rtsx: Using pcr_dbg replace dev_dbg 2015-03-03 16:41:21 +00:00
rtsx_pcr.h mfd: rtsx: Add support for rts525A 2015-03-03 16:41:21 +00:00
rtsx_usb.c mfd: rtsx_usb: Prevent DMA from stack 2015-03-12 09:27:41 +00:00
sec-core.c mfd: s2mps11: Add manual shutdown method for Odroid XU3 2015-10-26 14:49:04 +00:00
sec-irq.c mfd: sec: Fix RTC alarm interrupt number on S2MPS11 2015-04-09 10:26:54 +01:00
si476x-cmd.c mfd: si476x-cmd: Remedy checkpatch style complains 2014-07-25 15:31:44 +01:00
si476x-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
si476x-prop.c
sky81452.c mfd: Add support for Skyworks SKY81452 driver 2015-03-12 09:08:12 +00:00
sm501.c mfd: sm501: Fix module autoload for OF platform driver 2015-10-26 14:49:02 +00:00
smsc-ece1099.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
ssbi.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
sta2x11-mfd.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
stmpe-i2c.c - New Device Support 2015-09-04 11:35:03 -07:00
stmpe-spi.c - New Device Support 2015-09-04 11:35:03 -07:00
stmpe.c mfd: stmpe: PWM on 24xx has altfunc 1 2015-10-26 14:48:57 +00:00
stmpe.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-12-30 16:59:59 -08:00
stw481x.c mfd: stw481x: Export I2C module alias information 2015-08-11 15:09:09 +01:00
sun6i-prcm.c mfd: sun6i-prcm: Add support for the ir-clk 2015-01-22 15:55:49 +00:00
syscon.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
t7l66xb.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
tc3589x.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
tc6387xb.c mfd: tc6387xb: prepare/unprepare clocks 2014-11-25 16:18:58 +00:00
tc6393xb.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
ti_am335x_tscadc.c mfd: ti_am335x_tscadc: Remove unwanted reg_se_cache save 2015-03-03 16:41:15 +00:00
timberdale.c mfd: timberdale: Use pci_enable_msix_exact() instead of pci_enable_msix() 2014-03-19 08:58:34 +00:00
timberdale.h
tmio_core.c
tps6105x.c mfd: tps6105x: Use i2c regmap to access registers 2015-10-05 10:38:22 +01:00
tps6507x.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
tps6586x.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
tps65010.c mfd: tps65010: Remove incorrect __exit markups 2015-04-09 10:26:40 +01:00
tps65090.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
tps65217.c mfd: Export OF module alias information in missing drivers 2015-08-11 15:09:10 +01:00
tps65218.c mfd: Export OF module alias information in missing drivers 2015-08-11 15:09:10 +01:00
tps65910.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
tps65911-comparator.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
tps65912-core.c mfd: Delete non-required instances of include <linux/init.h> 2014-03-19 08:58:07 +00:00
tps65912-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
tps65912-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
tps65912-spi.c mfd: tps65912-spi: Remove unused variable 2014-07-28 08:10:06 +01:00
tps80031.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
twl-core.c twl4030_charger: use runtime_pm to keep usb phy active while charging. 2015-08-05 05:10:06 +02:00
twl-core.h
twl4030-audio.c mfd: drop owner assignment from platform_drivers 2014-10-20 16:20:53 +02:00
twl4030-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
twl4030-power.c mfd: twl4030-power: Fix pmic for boards that need AC charger disabled 2015-06-22 12:25:04 +01:00
twl6030-irq.c mfd: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc 2015-08-11 15:09:06 +01:00
twl6040.c mfd: twl6040: Fix deferred probe handling for clk32k 2015-10-26 14:48:56 +00:00
ucb1x00-assabet.c
ucb1x00-core.c genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
ucb1x00-ts.c
ucb1400_core.c
vexpress-sysreg.c mfd: vexpress: Remove non-DT code 2015-03-03 16:41:14 +00:00
viperboard.c mfd: Use mfd_add_hotplug_devices() helper 2014-11-25 16:18:42 +00:00
vx855.c
wl1273-core.c
wm831x-auxadc.c mfd: wm831x-auxadc: Pass the IRQF_ONESHOT flag 2015-06-22 12:25:25 +01:00
wm831x-core.c
wm831x-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
wm831x-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
wm831x-otp.c
wm831x-spi.c
wm5102-tables.c sound updates for 4.3-rc1 2015-09-04 11:46:02 -07:00
wm5110-tables.c mfd: Fixup clients of multi_reg_write/register_patch 2015-10-26 14:48:58 +00:00
wm8350-core.c mfd: wm8350-core: Pass the IRQF_ONESHOT flag 2015-06-22 12:25:26 +01:00
wm8350-gpio.c
wm8350-i2c.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
wm8350-irq.c mfd: Kill off set_irq_flags usage 2015-08-11 15:09:01 +01:00
wm8350-regmap.c
wm8400-core.c mfd: Drop owner assignment from i2c_drivers 2015-08-11 15:08:48 +01:00
wm8994-core.c sound updates for 4.3-rc1 2015-09-04 11:46:02 -07:00
wm8994-irq.c mfd: wm8994: Fix NULL pointer exception on missing pdata 2015-08-11 15:09:13 +01:00
wm8994-regmap.c mfd: wm8994-regmap: Constify reg_default tables 2015-08-11 15:08:47 +01:00
wm8994.h
wm8997-tables.c sound updates for 4.3-rc1 2015-09-04 11:46:02 -07:00
wm8998-tables.c mfd: Fixup clients of multi_reg_write/register_patch 2015-10-26 14:48:58 +00:00