aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 15:41:17 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 15:41:17 -0400
commit3e701cdfe601306817604ca7f79f1d1c1088007c (patch)
tree1b0a4088a091f035d8be06758a604ca449223fc0 /Documentation/devicetree
parent7d3d09b01a028e9dd1282149fdcd2a6e0edd73e4 (diff)
parent3c1534c7ecffeb4330bba4c55d17f301528195b6 (diff)
Merge tag 'mfd-3.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6
Pull MFD bits from Samuel Ortiz: "We have support for a few new drivers: - Samsung s2mps11 - Wolfson Microelectronics wm5102 and wm5110 - Marvell 88PM800 and 88PM805 - TI twl6041 We also have our regular driver improvements: - Device tree and IRQ domain support for STE AB8500 - Regmap and devm_* API conversion for TI tps6586x - Device tree support for Samsung max77686 - devm_* API conversion for STE AB3100 Besides that, quite a lot of fixing and cleanup for mc13xxx, tps65910, tps65090, da9052 and twl-core." Fix up mostly trivial conflicts, with the exception of drivers/usb/host/ehci-omap.c in particular, which had some re-organization of the reset sequence (commit 1a49e2ac9651: "EHCI: centralize controller initialization") that clashed with commit 2761a6394516 ("mfd: USB: Fix the omap-usb EHCI ULPI PHY reset fix issues"). In particular, commit 2761a6394516 moved the usb_add_hcd() to the *middle* of the reset sequence, which clashes fairly badly with the reset sequence re-organization (although it could have been done inside the new omap_ehci_init() function). I left that part of commit 2761a6394516 just undone. * tag 'mfd-3.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (110 commits) mfd: Ensure AB8500 platform data is passed through db8500-prcmu to MFD Core mfd: Arizone core should select MFD_CORE mfd: Fix arizona-irq.c build by selecting REGMAP_IRQ mfd: Add debug trace on entering and leaving arizone runtime suspend mfd: Correct tps65090 cell names mfd: Remove gpio support from tps6586x core driver ARM: tegra: defconfig: Enable tps6586x gpio gpio: tps6586x: Add gpio support through platform driver mfd: Cache tps6586x register through regmap mfd: Use regmap for tps6586x register access. mfd: Use devm managed resources for tps6586x input: Add onkey support for 88PM80X PMIC mfd: Add support for twl6041 mfd: Fix twl6040 revision information mfd: Matches should be NULL when populate anatop child devices input: ab8500-ponkey: Create AB8500 domain IRQ mapping mfd: Add missing out of memory check for pcf50633 Documentation: Describe the AB8500 Device Tree bindings mfd: Add tps65910 32-kHz-crystal-input init mfd: Drop modifying mc13xxx driver's id_table in probe ...
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r--Documentation/devicetree/bindings/mfd/ab8500.txt123
-rw-r--r--Documentation/devicetree/bindings/mfd/max77686.txt59
-rw-r--r--Documentation/devicetree/bindings/mfd/tps65910.txt2
-rw-r--r--Documentation/devicetree/bindings/mfd/twl6040.txt2
4 files changed, 184 insertions, 2 deletions
diff --git a/Documentation/devicetree/bindings/mfd/ab8500.txt b/Documentation/devicetree/bindings/mfd/ab8500.txt
new file mode 100644
index 000000000000..69e757a657a0
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/ab8500.txt
@@ -0,0 +1,123 @@
1* AB8500 Multi-Functional Device (MFD)
2
3Required parent device properties:
4- compatible : contains "stericsson,ab8500";
5- interrupts : contains the IRQ line for the AB8500
6- interrupt-controller : describes the AB8500 as an Interrupt Controller (has its own domain)
7- #interrupt-cells : should be 2, for 2-cell format
8 - The first cell is the AB8500 local IRQ number
9 - The second cell is used to specify optional parameters
10 - bits[3:0] trigger type and level flags:
11 1 = low-to-high edge triggered
12 2 = high-to-low edge triggered
13 4 = active high level-sensitive
14 8 = active low level-sensitive
15
16Optional parent device properties:
17- reg : contains the PRCMU mailbox address for the AB8500 i2c port
18
19The AB8500 consists of a large and varied group of sub-devices:
20
21Device IRQ Names Supply Names Description
22------ --------- ------------ -----------
23ab8500-bm : : : Battery Manager
24ab8500-btemp : : : Battery Temperature
25ab8500-charger : : : Battery Charger
26ab8500-fg : : : Fuel Gauge
27ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter
28 SW_CONV_END : :
29ab8500-gpio : : : GPIO Controller
30ab8500-ponkey : ONKEY_DBF : : Power-on Key
31 ONKEY_DBR : :
32ab8500-pwm : : : Pulse Width Modulator
33ab8500-regulator : : : Regulators
34ab8500-rtc : 60S : : Real Time Clock
35 : ALARM : :
36ab8500-sysctrl : : : System Control
37ab8500-usb : ID_WAKEUP_R : vddulpivio18 : Universal Serial Bus
38 : ID_WAKEUP_F : v-ape :
39 : VBUS_DET_F : musb_1v8 :
40 : VBUS_DET_R : :
41 : USB_LINK_STATUS : :
42 : USB_ADP_PROBE_PLUG : :
43 : USB_ADP_PROBE_UNPLUG : :
44
45Required child device properties:
46- compatible : "stericsson,ab8500-[bm|btemp|charger|fg|gpadc|gpio|ponkey|
47 pwm|regulator|rtc|sysctrl|usb]";
48
49Optional child device properties:
50- interrupts : contains the device IRQ(s) using the 2-cell format (see above)
51- interrupt-names : contains names of IRQ resource in the order in which they were
52 supplied in the interrupts property
53- <supply_name>-supply : contains a phandle to the regulator supply node in Device Tree
54
55ab8500@5 {
56 compatible = "stericsson,ab8500";
57 reg = <5>; /* mailbox 5 is i2c */
58 interrupts = <0 40 0x4>;
59 interrupt-controller;
60 #interrupt-cells = <2>;
61
62 ab8500-rtc {
63 compatible = "stericsson,ab8500-rtc";
64 interrupts = <17 0x4
65 18 0x4>;
66 interrupt-names = "60S", "ALARM";
67 };
68
69 ab8500-gpadc {
70 compatible = "stericsson,ab8500-gpadc";
71 interrupts = <32 0x4
72 39 0x4>;
73 interrupt-names = "HW_CONV_END", "SW_CONV_END";
74 vddadc-supply = <&ab8500_ldo_tvout_reg>;
75 };
76
77 ab8500-usb {
78 compatible = "stericsson,ab8500-usb";
79 interrupts = < 90 0x4
80 96 0x4
81 14 0x4
82 15 0x4
83 79 0x4
84 74 0x4
85 75 0x4>;
86 interrupt-names = "ID_WAKEUP_R",
87 "ID_WAKEUP_F",
88 "VBUS_DET_F",
89 "VBUS_DET_R",
90 "USB_LINK_STATUS",
91 "USB_ADP_PROBE_PLUG",
92 "USB_ADP_PROBE_UNPLUG";
93 vddulpivio18-supply = <&ab8500_ldo_initcore_reg>;
94 v-ape-supply = <&db8500_vape_reg>;
95 musb_1v8-supply = <&db8500_vsmps2_reg>;
96 };
97
98 ab8500-ponkey {
99 compatible = "stericsson,ab8500-ponkey";
100 interrupts = <6 0x4
101 7 0x4>;
102 interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
103 };
104
105 ab8500-sysctrl {
106 compatible = "stericsson,ab8500-sysctrl";
107 };
108
109 ab8500-pwm {
110 compatible = "stericsson,ab8500-pwm";
111 };
112
113 ab8500-regulators {
114 compatible = "stericsson,ab8500-regulator";
115
116 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
117 /*
118 * See: Documentation/devicetree/bindings/regulator/regulator.txt
119 * for more information on regulators
120 */
121 };
122 };
123};
diff --git a/Documentation/devicetree/bindings/mfd/max77686.txt b/Documentation/devicetree/bindings/mfd/max77686.txt
new file mode 100644
index 000000000000..c6a3469d3436
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/max77686.txt
@@ -0,0 +1,59 @@
1Maxim MAX77686 multi-function device
2
3MAX77686 is a Mulitifunction device with PMIC, RTC and Charger on chip. It is
4interfaced to host controller using i2c interface. PMIC and Charger submodules
5are addressed using same i2c slave address whereas RTC submodule uses
6different i2c slave address,presently for which we are statically creating i2c
7client while probing.This document describes the binding for mfd device and
8PMIC submodule.
9
10Required properties:
11- compatible : Must be "maxim,max77686";
12- reg : Specifies the i2c slave address of PMIC block.
13- interrupts : This i2c device has an IRQ line connected to the main SoC.
14- interrupt-parent : The parent interrupt controller.
15
16Optional node:
17- voltage-regulators : The regulators of max77686 have to be instantiated
18 under subnode named "voltage-regulators" using the following format.
19
20 regulator_name {
21 regulator-compatible = LDOn/BUCKn
22 standard regulator constraints....
23 };
24 refer Documentation/devicetree/bindings/regulator/regulator.txt
25
26 The regulator-compatible property of regulator should initialized with string
27to get matched with their hardware counterparts as follow:
28
29 -LDOn : for LDOs, where n can lie in range 1 to 26.
30 example: LDO1, LDO2, LDO26.
31 -BUCKn : for BUCKs, where n can lie in range 1 to 9.
32 example: BUCK1, BUCK5, BUCK9.
33
34Example:
35
36 max77686@09 {
37 compatible = "maxim,max77686";
38 interrupt-parent = <&wakeup_eint>;
39 interrupts = <26 0>;
40 reg = <0x09>;
41
42 voltage-regulators {
43 ldo11_reg {
44 regulator-compatible = "LDO11";
45 regulator-name = "vdd_ldo11";
46 regulator-min-microvolt = <1900000>;
47 regulator-max-microvolt = <1900000>;
48 regulator-always-on;
49 };
50
51 buck1_reg {
52 regulator-compatible = "BUCK1";
53 regulator-name = "vdd_mif";
54 regulator-min-microvolt = <950000>;
55 regulator-max-microvolt = <1300000>;
56 regulator-always-on;
57 regulator-boot-on;
58 };
59 }
diff --git a/Documentation/devicetree/bindings/mfd/tps65910.txt b/Documentation/devicetree/bindings/mfd/tps65910.txt
index d2802d4717bc..db03599ae4dc 100644
--- a/Documentation/devicetree/bindings/mfd/tps65910.txt
+++ b/Documentation/devicetree/bindings/mfd/tps65910.txt
@@ -81,7 +81,7 @@ Example:
81 81
82 ti,vmbch-threshold = 0; 82 ti,vmbch-threshold = 0;
83 ti,vmbch2-threshold = 0; 83 ti,vmbch2-threshold = 0;
84 84 ti,en-ck32k-xtal;
85 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>; 85 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;
86 86
87 vcc1-supply = <&reg_parent>; 87 vcc1-supply = <&reg_parent>;
diff --git a/Documentation/devicetree/bindings/mfd/twl6040.txt b/Documentation/devicetree/bindings/mfd/twl6040.txt
index bc67c6f424aa..c855240f3a0e 100644
--- a/Documentation/devicetree/bindings/mfd/twl6040.txt
+++ b/Documentation/devicetree/bindings/mfd/twl6040.txt
@@ -6,7 +6,7 @@ They are connected ot the host processor via i2c for commands, McPDM for audio
6data and commands. 6data and commands.
7 7
8Required properties: 8Required properties:
9- compatible : Must be "ti,twl6040"; 9- compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041
10- reg: must be 0x4b for i2c address 10- reg: must be 0x4b for i2c address
11- interrupts: twl6040 has one interrupt line connecteded to the main SoC 11- interrupts: twl6040 has one interrupt line connecteded to the main SoC
12- interrupt-parent: The parent interrupt controller 12- interrupt-parent: The parent interrupt controller