mirror of
https://github.com/t2linux/kernel.git
synced 2026-04-30 13:48:59 -07:00
Merge tag 'mfd-next-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
Pull MFD updates from Lee Jones: "New Drivers: - Freescale MXS Low Resolution ADC - Freescale i.MX23/i.MX28 LRADC touchscreen - Motorola CPCAP Power Button - TI LMU (Lighting Management Unit) - Atmel SMC (Static Memory Controller) New Device Support: - Add support for X-Powers AXP803 to axp20x - Add support for Dialog Semi DA9061 to da9062-core - Add support for Intel Cougar Mountain to lpc_ich - Add support for Intel Gemini Lake to lpc_ich New Functionality: - Add Device Tree support; wm831x-*, axp20x, ti-lmu, da9062, sun4i-gpadc - Add IRQ sense support; motorola-cpcap - Add ACPI support; cros_ec - Add Reset support; altera-a10sr - Add ADC support; axp20x - Add AC Power support; axp20x - Add Runtime PM support; atmel-ebi, exynos-lpass - Add Battery Power Supply support; axp20x - Add Clock support; exynos-lpass, hi655x-pmic Fix-ups: - Implicitly specify required headers; motorola-cpcap, intel_soc_pmic_bxtwc - Add .remove() method; stm32-timers, exynos-lpass - Remove unused code; intel_soc_pmic_core, intel-lpss-acpi, ipaq-micro, atmel-smc, menelaus - Rename variables for clarity; axp20x - Convert pr_warning() to pr_warn(); db8500-prcmu, sta2x11-mfd, twl4030-power - Improve formatting; arizona-core, axp20x - Use raw_spinlock_*() variants; asic3, t7l66xb, tc6393xb - Simplify/refactor code; arizona-core, atmel-ebi - Improve error checking; intel_soc_pmic_core Bug Fixes: - Ensure OMAP3630/3730 boards can successfully reboot; twl4030-power - Correct max-register value; stm32-timers - Extend timeout to account for clock stretching; cros_ec_spi - Use correct IRQ trigger type; motorola-cpcap - Fix bad use of IRQ sense register; motorola-cpcap - Logic error "||" should be "&&"; mxs-lradc-ts" * tag 'mfd-next-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (79 commits) input: touchscreen: mxs-lradc: || vs && typos dt-bindings: Add AXP803's regulator info mfd: axp20x: Support AXP803 variant dt-bindings: Add device tree binding for X-Powers AXP803 PMIC dt-bindings: Make AXP20X compatible strings one per line mfd: intel_soc_pmic_core: Fix unchecked return value mfd: menelaus: Remove obsolete local_irq_disable() and local_irq_enable() mfd: omap-usb-tll: Configure ULPIAUTOIDLE mfd: omap-usb-tll: Fix inverted bit use for USB TLL mode mfd: palmas: Fixed spelling mistake in error message mfd: lpc_ich: Add support for Intel Gemini Lake SoC mfd: hi655x: Add the clock cell to provide WiFi and Bluetooth mfd: intel_soc_pmic: Fix a mess with compilation units mfd: exynos-lpass: Add runtime PM support mfd: exynos-lpass: Add missing remove() function mfd: exynos-lpass: Add support for clocks mfd: exynos-lpass: Remove pad retention control iio: adc: add support for X-Powers AXP20X and AXP22X PMICs ADCs mfd: cpcap: Fix bad use of IRQ sense register mfd: cpcap: Use ack_invert interrupts ...
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
Motorola CPCAP on key
|
||||
|
||||
This module is part of the CPCAP. For more details about the whole
|
||||
chip see Documentation/devicetree/bindings/mfd/motorola-cpcap.txt.
|
||||
|
||||
This module provides a simple power button event via an Interrupt.
|
||||
|
||||
Required properties:
|
||||
- compatible: should be one of the following
|
||||
- "motorola,cpcap-pwrbutton"
|
||||
- interrupts: irq specifier for CPCAP's ON IRQ
|
||||
|
||||
Example:
|
||||
|
||||
&cpcap {
|
||||
cpcap_pwrbutton: pwrbutton {
|
||||
compatible = "motorola,cpcap-pwrbutton";
|
||||
interrupts = <23 IRQ_TYPE_NONE>;
|
||||
};
|
||||
};
|
||||
@@ -18,6 +18,7 @@ The A10SR consists of these sub-devices:
|
||||
Device Description
|
||||
------ ----------
|
||||
a10sr_gpio GPIO Controller
|
||||
a10sr_rst Reset Controller
|
||||
|
||||
Arria10 GPIO
|
||||
Required Properties:
|
||||
@@ -27,6 +28,11 @@ Required Properties:
|
||||
the second cell is used to specify flags.
|
||||
See ../gpio/gpio.txt for more information.
|
||||
|
||||
Arria10 Peripheral PHY Reset
|
||||
Required Properties:
|
||||
- compatible : Should be "altr,a10sr-reset"
|
||||
- #reset-cells : Should be one.
|
||||
|
||||
Example:
|
||||
|
||||
resource-manager@0 {
|
||||
@@ -43,4 +49,9 @@ Example:
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
a10sr_rst: reset-controller {
|
||||
compatible = "altr,a10sr-reset";
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,12 +6,19 @@ axp202 (X-Powers)
|
||||
axp209 (X-Powers)
|
||||
axp221 (X-Powers)
|
||||
axp223 (X-Powers)
|
||||
axp803 (X-Powers)
|
||||
axp809 (X-Powers)
|
||||
|
||||
Required properties:
|
||||
- compatible: "x-powers,axp152", "x-powers,axp202", "x-powers,axp209",
|
||||
"x-powers,axp221", "x-powers,axp223", "x-powers,axp806",
|
||||
"x-powers,axp809"
|
||||
- compatible: should be one of:
|
||||
* "x-powers,axp152"
|
||||
* "x-powers,axp202"
|
||||
* "x-powers,axp209"
|
||||
* "x-powers,axp221"
|
||||
* "x-powers,axp223"
|
||||
* "x-powers,axp803"
|
||||
* "x-powers,axp806"
|
||||
* "x-powers,axp809"
|
||||
- reg: The I2C slave address or RSB hardware address for the AXP chip
|
||||
- interrupt-parent: The parent interrupt controller
|
||||
- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
|
||||
@@ -28,6 +35,9 @@ Optional properties:
|
||||
regulator to drive the OTG VBus, rather then as an input pin
|
||||
which signals whether the board is driving OTG VBus or not.
|
||||
|
||||
- x-powers,master-mode: Boolean (axp806 only). Set this when the PMIC is
|
||||
wired for master mode. The default is slave mode.
|
||||
|
||||
- <input>-supply: a phandle to the regulator supply node. May be omitted if
|
||||
inputs are unregulated, such as using the IPSOUT output
|
||||
from the PMIC.
|
||||
@@ -86,6 +96,33 @@ LDO_IO1 : LDO : ips-supply : GPIO 1
|
||||
RTC_LDO : LDO : ips-supply : always on
|
||||
DRIVEVBUS : Enable output : drivevbus-supply : external regulator
|
||||
|
||||
AXP803 regulators, type, and corresponding input supply names:
|
||||
|
||||
Regulator Type Supply Name Notes
|
||||
--------- ---- ----------- -----
|
||||
DCDC1 : DC-DC buck : vin1-supply
|
||||
DCDC2 : DC-DC buck : vin2-supply : poly-phase capable
|
||||
DCDC3 : DC-DC buck : vin3-supply : poly-phase capable
|
||||
DCDC4 : DC-DC buck : vin4-supply
|
||||
DCDC5 : DC-DC buck : vin5-supply : poly-phase capable
|
||||
DCDC6 : DC-DC buck : vin6-supply : poly-phase capable
|
||||
DC1SW : On/Off Switch : : DCDC1 secondary output
|
||||
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
|
||||
FLDO1 : LDO : fldoin-supply : shared supply
|
||||
FLDO2 : LDO : fldoin-supply : shared supply
|
||||
LDO_IO0 : LDO : ips-supply : GPIO 0
|
||||
LDO_IO1 : LDO : ips-supply : GPIO 1
|
||||
RTC_LDO : LDO : ips-supply : always on
|
||||
|
||||
AXP806 regulators, type, and corresponding input supply names:
|
||||
|
||||
Regulator Type Supply Name Notes
|
||||
|
||||
@@ -1,22 +1,39 @@
|
||||
* Dialog DA9062 Power Management Integrated Circuit (PMIC)
|
||||
|
||||
DA9062 consists of a large and varied group of sub-devices:
|
||||
Product information for the DA9062 and DA9061 devices can be found here:
|
||||
- http://www.dialog-semiconductor.com/products/da9062
|
||||
- http://www.dialog-semiconductor.com/products/da9061
|
||||
|
||||
The DA9062 PMIC consists of:
|
||||
|
||||
Device Supply Names Description
|
||||
------ ------------ -----------
|
||||
da9062-regulator : : LDOs & BUCKs
|
||||
da9062-rtc : : Real-Time Clock
|
||||
da9062-onkey : : On Key
|
||||
da9062-watchdog : : Watchdog Timer
|
||||
da9062-thermal : : Thermal
|
||||
|
||||
The DA9061 PMIC consists of:
|
||||
|
||||
Device Supply Names Description
|
||||
------ ------------ -----------
|
||||
da9062-regulator : : LDOs & BUCKs
|
||||
da9062-onkey : : On Key
|
||||
da9062-watchdog : : Watchdog Timer
|
||||
da9062-thermal : : Thermal
|
||||
|
||||
======
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : Should be "dlg,da9062".
|
||||
- compatible : Should be
|
||||
"dlg,da9062" for DA9062
|
||||
"dlg,da9061" for DA9061
|
||||
- reg : Specifies the I2C slave address (this defaults to 0x58 but it can be
|
||||
modified to match the chip's OTP settings).
|
||||
- interrupt-parent : Specifies the reference to the interrupt controller for
|
||||
the DA9062.
|
||||
the DA9062 or DA9061.
|
||||
- interrupts : IRQ line information.
|
||||
- interrupt-controller
|
||||
|
||||
@@ -25,8 +42,8 @@ further information on IRQ bindings.
|
||||
|
||||
Sub-nodes:
|
||||
|
||||
- regulators : This node defines the settings for the LDOs and BUCKs. The
|
||||
DA9062 regulators are bound using their names listed below:
|
||||
- regulators : This node defines the settings for the LDOs and BUCKs.
|
||||
The DA9062 regulators are bound using their names listed below:
|
||||
|
||||
buck1 : BUCK_1
|
||||
buck2 : BUCK_2
|
||||
@@ -37,19 +54,29 @@ Sub-nodes:
|
||||
ldo3 : LDO_3
|
||||
ldo4 : LDO_4
|
||||
|
||||
The DA9061 regulators are bound using their names listed below:
|
||||
|
||||
buck1 : BUCK_1
|
||||
buck2 : BUCK_2
|
||||
buck3 : BUCK_3
|
||||
ldo1 : LDO_1
|
||||
ldo2 : LDO_2
|
||||
ldo3 : LDO_3
|
||||
ldo4 : LDO_4
|
||||
|
||||
The component follows the standard regulator framework and the bindings
|
||||
details of individual regulator device can be found in:
|
||||
Documentation/devicetree/bindings/regulator/regulator.txt
|
||||
|
||||
|
||||
- rtc : This node defines settings required for the Real-Time Clock associated
|
||||
with the DA9062. There are currently no entries in this binding, however
|
||||
compatible = "dlg,da9062-rtc" should be added if a node is created.
|
||||
|
||||
- watchdog: This node defines the settings for the watchdog driver associated
|
||||
with the DA9062 PMIC. The compatible = "dlg,da9062-watchdog" should be added
|
||||
if a node is created.
|
||||
- onkey : See ../input/da9062-onkey.txt
|
||||
|
||||
- watchdog: See ../watchdog/da9062-watchdog.txt
|
||||
|
||||
- thermal : See ../thermal/da9062-thermal.txt
|
||||
|
||||
Example:
|
||||
|
||||
@@ -64,10 +91,6 @@ Example:
|
||||
compatible = "dlg,da9062-rtc";
|
||||
};
|
||||
|
||||
watchdog {
|
||||
compatible = "dlg,da9062-watchdog";
|
||||
};
|
||||
|
||||
regulators {
|
||||
DA9062_BUCK1: buck1 {
|
||||
regulator-name = "BUCK1";
|
||||
|
||||
@@ -6,6 +6,7 @@ MT6397/MT6323 is a multifunction device with the following sub modules:
|
||||
- Audio codec
|
||||
- GPIO
|
||||
- Clock
|
||||
- LED
|
||||
|
||||
It is interfaced to host controller using SPI interface by a proprietary hardware
|
||||
called PMIC wrapper or pwrap. MT6397/MT6323 MFD is a child device of pwrap.
|
||||
|
||||
@@ -5,7 +5,10 @@ Required properties:
|
||||
- compatible : "samsung,exynos5433-lpass"
|
||||
- reg : should contain the LPASS top SFR region location
|
||||
and size
|
||||
- samsung,pmu-syscon : the phandle to the Power Management Unit node
|
||||
- clock-names : should contain following required clocks: "sfr0_ctrl"
|
||||
- clocks : should contain clock specifiers of all clocks, which
|
||||
input names have been specified in clock-names
|
||||
property, in same order.
|
||||
- #address-cells : should be 1
|
||||
- #size-cells : should be 1
|
||||
- ranges : must be present
|
||||
@@ -25,7 +28,8 @@ Example:
|
||||
audio-subsystem {
|
||||
compatible = "samsung,exynos5433-lpass";
|
||||
reg = <0x11400000 0x100>, <0x11500000 0x08>;
|
||||
samsung,pmu-syscon = <&pmu_system_controller>;
|
||||
clocks = <&cmu_aud CLK_PCLK_SFR0_CTRL>;
|
||||
clock-names = "sfr0_ctrl";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
|
||||
+21
@@ -1,3 +1,24 @@
|
||||
Allwinner SoCs' GPADC Device Tree bindings
|
||||
------------------------------------------
|
||||
The Allwinner SoCs all have an ADC that can also act as a thermal sensor
|
||||
and sometimes as a touchscreen controller.
|
||||
|
||||
Required properties:
|
||||
- compatible: "allwinner,sun8i-a33-ths",
|
||||
- reg: mmio address range of the chip,
|
||||
- #thermal-sensor-cells: shall be 0,
|
||||
- #io-channel-cells: shall be 0,
|
||||
|
||||
Example:
|
||||
ths: ths@01c25000 {
|
||||
compatible = "allwinner,sun8i-a33-ths";
|
||||
reg = <0x01c25000 0x100>;
|
||||
#thermal-sensor-cells = <0>;
|
||||
#io-channel-cells = <0>;
|
||||
};
|
||||
|
||||
sun4i, sun5i and sun6i SoCs are also supported via the older binding:
|
||||
|
||||
sun4i resistive touchscreen controller
|
||||
--------------------------------------
|
||||
|
||||
@@ -0,0 +1,243 @@
|
||||
TI LMU (Lighting Management Unit) device tree bindings
|
||||
|
||||
TI LMU driver supports lighting devices below.
|
||||
|
||||
Name Child nodes
|
||||
------ ---------------------------------
|
||||
LM3532 Backlight
|
||||
LM3631 Backlight and regulator
|
||||
LM3632 Backlight and regulator
|
||||
LM3633 Backlight, LED and fault monitor
|
||||
LM3695 Backlight
|
||||
LM3697 Backlight and fault monitor
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be one of:
|
||||
"ti,lm3532"
|
||||
"ti,lm3631"
|
||||
"ti,lm3632"
|
||||
"ti,lm3633"
|
||||
"ti,lm3695"
|
||||
"ti,lm3697"
|
||||
- reg: I2C slave address.
|
||||
0x11 for LM3632
|
||||
0x29 for LM3631
|
||||
0x36 for LM3633, LM3697
|
||||
0x38 for LM3532
|
||||
0x63 for LM3695
|
||||
|
||||
Optional property:
|
||||
- enable-gpios: A GPIO specifier for hardware enable pin.
|
||||
|
||||
Required node:
|
||||
- backlight: All LMU devices have backlight child nodes.
|
||||
For the properties, please refer to [1].
|
||||
|
||||
Optional nodes:
|
||||
- fault-monitor: Hardware fault monitoring driver for LM3633 and LM3697.
|
||||
Required properties:
|
||||
- compatible: Should be one of:
|
||||
"ti,lm3633-fault-monitor"
|
||||
"ti,lm3697-fault-monitor"
|
||||
- leds: LED properties for LM3633. Please refer to [2].
|
||||
- regulators: Regulator properties for LM3631 and LM3632.
|
||||
Please refer to [3].
|
||||
|
||||
[1] ../leds/backlight/ti-lmu-backlight.txt
|
||||
[2] ../leds/leds-lm3633.txt
|
||||
[3] ../regulator/lm363x-regulator.txt
|
||||
|
||||
lm3532@38 {
|
||||
compatible = "ti,lm3532";
|
||||
reg = <0x38>;
|
||||
|
||||
enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3532-backlight";
|
||||
|
||||
lcd {
|
||||
led-sources = <0 1 2>;
|
||||
ramp-up-msec = <30>;
|
||||
ramp-down-msec = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lm3631@29 {
|
||||
compatible = "ti,lm3631";
|
||||
reg = <0x29>;
|
||||
|
||||
regulators {
|
||||
compatible = "ti,lm363x-regulator";
|
||||
|
||||
vboost {
|
||||
regulator-name = "lcd_boost";
|
||||
regulator-min-microvolt = <4500000>;
|
||||
regulator-max-microvolt = <6350000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcont {
|
||||
regulator-name = "lcd_vcont";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
voref {
|
||||
regulator-name = "lcd_voref";
|
||||
regulator-min-microvolt = <4000000>;
|
||||
regulator-max-microvolt = <6000000>;
|
||||
};
|
||||
|
||||
vpos {
|
||||
regulator-name = "lcd_vpos";
|
||||
regulator-min-microvolt = <4000000>;
|
||||
regulator-max-microvolt = <6000000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vneg {
|
||||
regulator-name = "lcd_vneg";
|
||||
regulator-min-microvolt = <4000000>;
|
||||
regulator-max-microvolt = <6000000>;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3631-backlight";
|
||||
|
||||
lcd_bl {
|
||||
led-sources = <0 1>;
|
||||
ramp-up-msec = <300>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lm3632@11 {
|
||||
compatible = "ti,lm3632";
|
||||
reg = <0x11>;
|
||||
|
||||
enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>; /* PC2 */
|
||||
|
||||
regulators {
|
||||
compatible = "ti,lm363x-regulator";
|
||||
|
||||
ti,lcm-en1-gpio = <&pioC 0 GPIO_ACTIVE_HIGH>; /* PC0 */
|
||||
ti,lcm-en2-gpio = <&pioC 1 GPIO_ACTIVE_HIGH>; /* PC1 */
|
||||
|
||||
vboost {
|
||||
regulator-name = "lcd_boost";
|
||||
regulator-min-microvolt = <4500000>;
|
||||
regulator-max-microvolt = <6400000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vpos {
|
||||
regulator-name = "lcd_vpos";
|
||||
regulator-min-microvolt = <4000000>;
|
||||
regulator-max-microvolt = <6000000>;
|
||||
};
|
||||
|
||||
vneg {
|
||||
regulator-name = "lcd_vneg";
|
||||
regulator-min-microvolt = <4000000>;
|
||||
regulator-max-microvolt = <6000000>;
|
||||
};
|
||||
};
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3632-backlight";
|
||||
|
||||
pwms = <&pwm0 0 10000 0>; /* pwm number, period, polarity */
|
||||
pwm-names = "lmu-backlight";
|
||||
|
||||
lcd {
|
||||
led-sources = <0 1>;
|
||||
pwm-period = <10000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lm3633@36 {
|
||||
compatible = "ti,lm3633";
|
||||
reg = <0x36>;
|
||||
|
||||
enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3633-backlight";
|
||||
|
||||
main {
|
||||
label = "main_lcd";
|
||||
led-sources = <1 2>;
|
||||
ramp-up-msec = <500>;
|
||||
ramp-down-msec = <500>;
|
||||
};
|
||||
|
||||
front {
|
||||
label = "front_lcd";
|
||||
led-sources = <0>;
|
||||
ramp-up-msec = <1000>;
|
||||
ramp-down-msec = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "ti,lm3633-leds";
|
||||
|
||||
chan1 {
|
||||
label = "status";
|
||||
led-sources = <1>;
|
||||
led-max-microamp = <6000>;
|
||||
};
|
||||
|
||||
chan345 {
|
||||
label = "rgb";
|
||||
led-sources = <3 4 5>;
|
||||
led-max-microamp = <10000>;
|
||||
};
|
||||
};
|
||||
|
||||
fault-monitor {
|
||||
compatible = "ti,lm3633-fault-monitor";
|
||||
};
|
||||
};
|
||||
|
||||
lm3695@63 {
|
||||
compatible = "ti,lm3695";
|
||||
reg = <0x63>;
|
||||
|
||||
enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3695-backlight";
|
||||
|
||||
lcd {
|
||||
label = "bl";
|
||||
led-sources = <0 1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
lm3697@36 {
|
||||
compatible = "ti,lm3697";
|
||||
reg = <0x36>;
|
||||
|
||||
enable-gpios = <&pioC 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
backlight {
|
||||
compatible = "ti,lm3697-backlight";
|
||||
|
||||
lcd {
|
||||
led-sources = <0 1 2>;
|
||||
ramp-up-msec = <200>;
|
||||
ramp-down-msec = <200>;
|
||||
};
|
||||
};
|
||||
|
||||
fault-monitor {
|
||||
compatible = "ti,lm3697-fault-monitor";
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,81 @@
|
||||
Cirrus Logic/Wolfson Microelectronics wm831x PMICs
|
||||
|
||||
System PMICs with a wide range of additional features.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : One of the following chip-specific strings:
|
||||
"wlf,wm8310"
|
||||
"wlf,wm8311"
|
||||
"wlf,wm8312"
|
||||
"wlf,wm8320"
|
||||
"wlf,wm8321"
|
||||
"wlf,wm8325"
|
||||
"wlf,wm8326"
|
||||
|
||||
- reg : I2C slave address when connected using I2C, chip select number
|
||||
when using SPI.
|
||||
|
||||
- gpio-controller : Indicates this device is a GPIO controller.
|
||||
- #gpio-cells : Must be 2. The first cell is the pin number and the
|
||||
second cell is used to specify optional parameters (currently unused).
|
||||
|
||||
- interrupts : The interrupt line the IRQ signal for the device is
|
||||
connected to.
|
||||
- interrupt-parent : The parent interrupt controller.
|
||||
|
||||
- interrupt-controller : wm831x devices contain interrupt controllers and
|
||||
may provide interrupt services to other devices.
|
||||
- #interrupt-cells: Must be 2. The first cell is the IRQ number, and the
|
||||
second cell is the flags, encoded as the trigger masks from
|
||||
../interrupt-controller/interrupts.txt
|
||||
|
||||
Optional sub-nodes:
|
||||
- regulators : Contains sub-nodes for each of the regulators supplied by
|
||||
the device. The regulators are bound using their names listed below:
|
||||
|
||||
dcdc1 : DCDC1
|
||||
dcdc2 : DCDC2
|
||||
dcdc3 : DCDC3
|
||||
dcdc4 : DCDC3
|
||||
isink1 : ISINK1
|
||||
isink2 : ISINK2
|
||||
ldo1 : LDO1
|
||||
ldo2 : LDO2
|
||||
ldo3 : LDO3
|
||||
ldo4 : LDO4
|
||||
ldo5 : LDO5
|
||||
ldo7 : LDO7
|
||||
ldo11 : LDO11
|
||||
|
||||
The bindings details of each regulator can be found in:
|
||||
../regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
wm8310: pmic@36 {
|
||||
compatible = "wlf,wm8310";
|
||||
reg = <0x36>;
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
interrupts = <347>;
|
||||
interrupt-parent = <&gic>;
|
||||
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
|
||||
regulators {
|
||||
dcdc1: dcdc1 {
|
||||
regulator-name = "DCDC1";
|
||||
regulator-min-microvolt = <600000>;
|
||||
regulator-max-microvolt = <600000>;
|
||||
};
|
||||
ldo1: ldo1 {
|
||||
regulator-name = "LDO1";
|
||||
regulator-min-microvolt = <1700000>;
|
||||
regulator-max-microvolt = <1700000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -13731,6 +13731,7 @@ F: Documentation/hwmon/wm83??
|
||||
F: Documentation/devicetree/bindings/extcon/extcon-arizona.txt
|
||||
F: Documentation/devicetree/bindings/regulator/arizona-regulator.txt
|
||||
F: Documentation/devicetree/bindings/mfd/arizona.txt
|
||||
F: Documentation/devicetree/bindings/mfd/wm831x.txt
|
||||
F: arch/arm/mach-s3c64xx/mach-crag6410*
|
||||
F: drivers/clk/clk-wm83*.c
|
||||
F: drivers/extcon/extcon-arizona.c
|
||||
|
||||
@@ -511,7 +511,7 @@ config XPOWER_PMIC_OPREGION
|
||||
|
||||
config BXT_WC_PMIC_OPREGION
|
||||
bool "ACPI operation region support for BXT WhiskeyCove PMIC"
|
||||
depends on INTEL_SOC_PMIC
|
||||
depends on INTEL_SOC_PMIC_BXTWC
|
||||
help
|
||||
This config adds ACPI operation region support for BXT WhiskeyCove PMIC.
|
||||
|
||||
|
||||
@@ -1054,7 +1054,7 @@ config GPIO_UCB1400
|
||||
|
||||
config GPIO_WHISKEY_COVE
|
||||
tristate "GPIO support for Whiskey Cove PMIC"
|
||||
depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC
|
||||
depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC_BXTWC
|
||||
select GPIOLIB_IRQCHIP
|
||||
help
|
||||
Support for GPIO pins on Whiskey Cove PMIC.
|
||||
|
||||
@@ -263,7 +263,7 @@ static const struct gpio_chip template_chip = {
|
||||
static int wm831x_gpio_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent);
|
||||
struct wm831x_pdata *pdata = dev_get_platdata(wm831x->dev);
|
||||
struct wm831x_pdata *pdata = &wm831x->pdata;
|
||||
struct wm831x_gpio *wm831x_gpio;
|
||||
int ret;
|
||||
|
||||
@@ -280,6 +280,9 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
|
||||
wm831x_gpio->gpio_chip.base = pdata->gpio_base;
|
||||
else
|
||||
wm831x_gpio->gpio_chip.base = -1;
|
||||
#ifdef CONFIG_OF_GPIO
|
||||
wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node;
|
||||
#endif
|
||||
|
||||
ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip,
|
||||
wm831x_gpio);
|
||||
|
||||
+23
-14
@@ -154,6 +154,16 @@ config AT91_SAMA5D2_ADC
|
||||
To compile this driver as a module, choose M here: the module will be
|
||||
called at91-sama5d2_adc.
|
||||
|
||||
config AXP20X_ADC
|
||||
tristate "X-Powers AXP20X and AXP22X ADC driver"
|
||||
depends on MFD_AXP20X
|
||||
help
|
||||
Say yes here to have support for X-Powers power management IC (PMIC)
|
||||
AXP20X and AXP22X ADC devices.
|
||||
|
||||
To compile this driver as a module, choose M here: the module will be
|
||||
called axp20x_adc.
|
||||
|
||||
config AXP288_ADC
|
||||
tristate "X-Powers AXP288 ADC driver"
|
||||
depends on MFD_AXP20X
|
||||
@@ -229,6 +239,19 @@ config EXYNOS_ADC
|
||||
To compile this driver as a module, choose M here: the module will be
|
||||
called exynos_adc.
|
||||
|
||||
config MXS_LRADC_ADC
|
||||
tristate "Freescale i.MX23/i.MX28 LRADC ADC"
|
||||
depends on MFD_MXS_LRADC
|
||||
select IIO_BUFFER
|
||||
select IIO_TRIGGERED_BUFFER
|
||||
help
|
||||
Say yes here to build support for the ADC functions of the
|
||||
i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
|
||||
battery voltage measurement, and die temperature measurement.
|
||||
|
||||
This driver can also be built as a module. If so, the module will be
|
||||
called mxs-lradc-adc.
|
||||
|
||||
config FSL_MX25_ADC
|
||||
tristate "Freescale MX25 ADC driver"
|
||||
depends on MFD_MX25_TSADC
|
||||
@@ -411,20 +434,6 @@ config MESON_SARADC
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called meson_saradc.
|
||||
|
||||
config MXS_LRADC
|
||||
tristate "Freescale i.MX23/i.MX28 LRADC"
|
||||
depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
|
||||
depends on INPUT
|
||||
select STMP_DEVICE
|
||||
select IIO_BUFFER
|
||||
select IIO_TRIGGERED_BUFFER
|
||||
help
|
||||
Say yes here to build support for i.MX23/i.MX28 LRADC convertor
|
||||
built into these chips.
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called mxs-lradc.
|
||||
|
||||
config NAU7802
|
||||
tristate "Nuvoton NAU7802 ADC driver"
|
||||
depends on I2C
|
||||
|
||||
@@ -16,6 +16,7 @@ obj-$(CONFIG_AD7887) += ad7887.o
|
||||
obj-$(CONFIG_AD799X) += ad799x.o
|
||||
obj-$(CONFIG_AT91_ADC) += at91_adc.o
|
||||
obj-$(CONFIG_AT91_SAMA5D2_ADC) += at91-sama5d2_adc.o
|
||||
obj-$(CONFIG_AXP20X_ADC) += axp20x_adc.o
|
||||
obj-$(CONFIG_AXP288_ADC) += axp288_adc.o
|
||||
obj-$(CONFIG_BCM_IPROC_ADC) += bcm_iproc_adc.o
|
||||
obj-$(CONFIG_BERLIN2_ADC) += berlin2-adc.o
|
||||
@@ -39,7 +40,7 @@ obj-$(CONFIG_MCP3422) += mcp3422.o
|
||||
obj-$(CONFIG_MEDIATEK_MT6577_AUXADC) += mt6577_auxadc.o
|
||||
obj-$(CONFIG_MEN_Z188_ADC) += men_z188_adc.o
|
||||
obj-$(CONFIG_MESON_SARADC) += meson_saradc.o
|
||||
obj-$(CONFIG_MXS_LRADC) += mxs-lradc.o
|
||||
obj-$(CONFIG_MXS_LRADC_ADC) += mxs-lradc-adc.o
|
||||
obj-$(CONFIG_NAU7802) += nau7802.o
|
||||
obj-$(CONFIG_PALMAS_GPADC) += palmas_gpadc.o
|
||||
obj-$(CONFIG_QCOM_SPMI_IADC) += qcom-spmi-iadc.o
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -316,6 +316,16 @@ config INPUT_COBALT_BTNS
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called cobalt_btns.
|
||||
|
||||
config INPUT_CPCAP_PWRBUTTON
|
||||
tristate "CPCAP OnKey"
|
||||
depends on MFD_CPCAP
|
||||
help
|
||||
Say Y here if you want to enable power key reporting via the
|
||||
Motorola CPCAP chip.
|
||||
|
||||
To compile this driver as a module, choose M here. The module will
|
||||
be called cpcap-pwrbutton.
|
||||
|
||||
config INPUT_WISTRON_BTNS
|
||||
tristate "x86 Wistron laptop button interface"
|
||||
depends on X86_32
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user