Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 84e9c87e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull MFD updates from Lee Jones:
 "Changes to existing drivers:
   - Constify structures; throughout the subsystem
   - Move support to DT in; cros_ec
   - DT changes and documentation; cros-ec, max77693, max77686, arizona, da9063
   - ACPI changes and documentation; mfd-core
   - Use different platform specific API in; cros_ec_*, arizona-core
   - Remove unused parent field from; cros_ec_i2c
   - Add wake-up/reset delay in; cross_ec_spi, arizona-core
   - Staticise structures/functions in; cros_ec
   - Remove redundant code; arizona-core, max77686
   - Bugfix; twl4030-power
   - Allow compile test; aat2870, tps65910
   - MAINTAINERS adaptions; samsung, syscon
   - Resource Management (devm_*); arizona-core
   - Refactor Reset code; arizona-core
   - Insist on at least one full boot; arizona-core
   - Trivial formatting; arizona-core
   - Add low-power-sleep; arizona-core
   - IRQ ONESHOT changes; twl4030-irq, mc13xxx-core, wm831x-auxadc, htc-i2cpld,
                          wm8350-core, ab8500-debugfs, ab8500-gpadc, si476x-i2c

  (Re-)moved drivers:
   - Move protocol helpers out to drivers/platform; cros_ec

  New drivers/supported devices:
   - Add support for AXP22x into axp20x
   - Add support for OnKey into da9063-core
   - Add support for Pinctrl into mt6397-core
   - New STMicroelectronics LPC Watchdog driver
   - New STMicroelectronics LPC Real-Time Clock driver"

* tag 'mfd-for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (59 commits)
  mfd: lpc_ich: Assign subdevice ids automatically
  mfd: si476x-i2c: Pass the IRQF_ONESHOT flag
  mfd: ab8500-gpadc: Pass the IRQF_ONESHOT flag
  mfd: ab8500-debugfs: Pass the IRQF_ONESHOT flag
  mfd: wm8350-core: Pass the IRQF_ONESHOT flag
  mfd: htc-i2cpld: Pass the IRQF_ONESHOT flag
  mfd: wm831x-auxadc: Pass the IRQF_ONESHOT flag
  mfd: mc13xxx-core: Pass the IRQF_ONESHOT flag
  mfd: twl4030-irq: Pass the IRQF_ONESHOT flag
  mfd: mt6397-core: Add GPIO sub-module support
  mfd: arizona: Add convience defines for micd_rate/micd_bias_starttime
  mfd: dt: Add bindings for DA9063 OnKey
  mfd: da9063: Add support for OnKey driver
  mfd: arizona: Fix incorrect Makefile conditionals
  mfd: arizona: Add stub for wm5102_patch()
  mfd: Check ACPI device companion before checking resources
  Documentation: Add WM8998/WM1814 device tree bindings
  mfd: arizona: Split INx_MODE into two fields
  mfd: wm5110: Add delay before releasing reset line
  mfd: arizona: Add better support for system suspend
  ...
parents 7fe0bf90 1abf25a2
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -10,6 +10,9 @@ Required properties:
        "wlf,wm5110"
        "wlf,wm8280"
        "wlf,wm8997"
        "wlf,wm8998"
        "wlf,wm1814"

  - reg : I2C slave address when connected using I2C, chip select number when
    using SPI.

@@ -31,10 +34,10 @@ Required properties:
    as covered in Documentation/devicetree/bindings/regulator/regulator.txt

  - DBVDD2-supply, DBVDD3-supply : Additional databus power supplies (wm5102,
    wm5110, wm8280)
    wm5110, wm8280, wm8998, wm1814)

  - SPKVDDL-supply, SPKVDDR-supply : Speaker driver power supplies (wm5102,
    wm5110, wm8280)
    wm5110, wm8280, wm8998, wm1814)

  - SPKVDD-supply : Speaker driver power supply (wm8997)

@@ -53,8 +56,10 @@ Optional properties:
    of input signals. Valid values are 0 (Differential), 1 (Single-ended) and
    2 (Digital Microphone). If absent, INn_MODE registers set to 0 by default.
    If present, values must be specified less than or equal to the number of
    input singals. If values less than the number of input signals, elements
    that has not been specifed are set to 0 by default.
    input signals. If values less than the number of input signals, elements
    that have not been specified are set to 0 by default. Entries are:
    <IN1, IN2, IN3, IN4> (wm5102, wm5110, wm8280, wm8997)
    <IN1A, IN2A, IN1B, IN2B> (wm8998, wm1814)

  - wlf,dmic-ref : DMIC reference voltage source for each input, can be
    selected from either MICVDD or one of the MICBIAS's, defines
+29 −3
Original line number Diff line number Diff line
AXP202/AXP209 device tree bindings
AXP family PMIC device tree bindings

The axp20x family current members :
axp202 (X-Powers)
axp209 (X-Powers)
axp221 (X-Powers)

Required properties:
- compatible: "x-powers,axp202" or "x-powers,axp209"
- compatible: "x-powers,axp202", "x-powers,axp209", "x-powers,axp221"
- reg: The I2C slave address for the AXP chip
- interrupt-parent: The parent interrupt controller
- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
- interrupt-controller: axp20x has its own internal IRQs
- interrupt-controller: The PMIC has its own internal IRQs
- #interrupt-cells: Should be set to 1

Optional properties:
@@ -48,6 +49,31 @@ LDO3 : LDO : ldo3in-supply
LDO4		: LDO		: ldo24in-supply	: shared supply
LDO5		: LDO		: ldo5in-supply

AXP221 regulators, type, and corresponding input supply names:

Regulator	  Type		  Supply Name		  Notes
---------	  ----		  -----------		  -----
DCDC1		: DC-DC buck	: vin1-supply
DCDC2		: DC-DC buck	: vin2-supply
DCDC3		: DC-DC	buck	: vin3-supply
DCDC4		: DC-DC	buck	: vin4-supply
DCDC5		: DC-DC	buck	: vin5-supply
DC1SW		: On/Off Switch	: dcdc1-supply		: DCDC1 secondary output
DC5LDO		: LDO		: dcdc5-supply		: input from DCDC5
ALDO1		: LDO		: aldoin-supply		: shared supply
ALDO2		: LDO		: aldoin-supply		: shared supply
ALDO3		: LDO		: aldoin-supply		: shared supply
DLDO1		: LDO		: dldoin-supply		: shared supply
DLDO2		: LDO		: dldoin-supply		: shared supply
DLDO3		: LDO		: dldoin-supply		: shared supply
DLDO4		: LDO		: dldoin-supply		: shared supply
ELDO1		: LDO		: eldoin-supply		: shared supply
ELDO2		: LDO		: eldoin-supply		: shared supply
ELDO3		: LDO		: eldoin-supply		: shared supply
LDO_IO0		: LDO		: ips-supply		: GPIO 0
LDO_IO1		: LDO		: ips-supply		: GPIO 1
RTC_LDO		: LDO		: ips-supply		: always on

Example:

axp209: pmic@34 {
+4 −0
Original line number Diff line number Diff line
@@ -18,6 +18,10 @@ Required properties (SPI):
- reg: SPI chip select

Optional properties (SPI):
- google,cros-ec-spi-pre-delay: Some implementations of the EC need a little
  time to wake up from sleep before they can receive SPI transfers at a high
  clock rate. This property specifies the delay, in usecs, between the
  assertion of the CS to the start of the first clock pulse.
- google,cros-ec-spi-msg-delay: Some implementations of the EC require some
  additional processing time in order to accept new transactions. If the delay
  between transactions is not long enough the EC may not be able to respond
+18 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ DA9093 consists of a large and varied group of sub-devices (I2C Only):
Device                   Supply Names    Description
------                   ------------    -----------
da9063-regulator        :               : LDOs & BUCKs
da9063-onkey            :               : On Key
da9063-rtc              :               : Real-Time Clock
da9063-watchdog         :               : Watchdog

@@ -51,6 +52,18 @@ Sub-nodes:
  the DA9063. There are currently no entries in this binding, however
  compatible = "dlg,da9063-rtc" should be added if a node is created.

- onkey : This node defines the OnKey settings for controlling the key
  functionality of the device. The node should contain the compatible property
  with the value "dlg,da9063-onkey".

  Optional onkey properties:

  - dlg,disable-key-power : Disable power-down using a long key-press. If this
    entry exists the OnKey driver will remove support for the KEY_POWER key
    press. If this entry does not exist then by default the key-press
    triggered power down is enabled and the OnKey will support both KEY_POWER
    and KEY_SLEEP.

- watchdog : This node defines settings for the Watchdog timer associated
  with the DA9063. There are currently no entries in this binding, however
  compatible = "dlg,da9063-watchdog" should be added if a node is created.
@@ -73,6 +86,11 @@ Example:
			compatible = "dlg,da9063-watchdog";
		};

		onkey {
			compatible = "dlg,da9063-onkey";
			dlg,disable-key-power;
		};

		regulators {
			DA9063_BCORE1: bcore1 {
				regulator-name = "BCORE1";
+1 −1
Original line number Diff line number Diff line
Maxim MAX77686 multi-function device

MAX77686 is a Mulitifunction device with PMIC, RTC and Charger on chip. It is
MAX77686 is a Multifunction device with PMIC, RTC and Charger on chip. It is
interfaced to host controller using i2c interface. PMIC and Charger submodules
are addressed using same i2c slave address whereas RTC submodule uses
different i2c slave address,presently for which we are statically creating i2c
Loading