diff options
Diffstat (limited to 'Documentation')
10 files changed, 337 insertions, 3 deletions
diff --git a/Documentation/devicetree/bindings/mfd/88pm860x.txt b/Documentation/devicetree/bindings/mfd/88pm860x.txt new file mode 100644 index 000000000000..63f3ee33759c --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/88pm860x.txt | |||
@@ -0,0 +1,85 @@ | |||
1 | * Marvell 88PM860x Power Management IC | ||
2 | |||
3 | Required parent device properties: | ||
4 | - compatible : "marvell,88pm860x" | ||
5 | - reg : the I2C slave address for the 88pm860x chip | ||
6 | - interrupts : IRQ line for the 88pm860x chip | ||
7 | - interrupt-controller: describes the 88pm860x as an interrupt controller (has its own domain) | ||
8 | - #interrupt-cells : should be 1. | ||
9 | - The cell is the 88pm860x local IRQ number | ||
10 | |||
11 | Optional parent device properties: | ||
12 | - marvell,88pm860x-irq-read-clr: inicates whether interrupt status is cleared by read | ||
13 | - marvell,88pm860x-slave-addr: 88pm860x are two chips solution. <reg> stores the I2C address | ||
14 | of one chip, and this property stores the I2C address of | ||
15 | another chip. | ||
16 | |||
17 | 88pm860x consists of a large and varied group of sub-devices: | ||
18 | |||
19 | Device Supply Names Description | ||
20 | ------ ------------ ----------- | ||
21 | 88pm860x-onkey : : On key | ||
22 | 88pm860x-rtc : : RTC | ||
23 | 88pm8607 : : Regulators | ||
24 | 88pm860x-backlight : : Backlight | ||
25 | 88pm860x-led : : Led | ||
26 | 88pm860x-touch : : Touchscreen | ||
27 | |||
28 | Example: | ||
29 | |||
30 | pmic: 88pm860x@34 { | ||
31 | compatible = "marvell,88pm860x"; | ||
32 | reg = <0x34>; | ||
33 | interrupts = <4>; | ||
34 | interrupt-parent = <&intc>; | ||
35 | interrupt-controller; | ||
36 | #interrupt-cells = <1>; | ||
37 | |||
38 | marvell,88pm860x-irq-read-clr; | ||
39 | marvell,88pm860x-slave-addr = <0x11>; | ||
40 | |||
41 | regulators { | ||
42 | BUCK1 { | ||
43 | regulator-min-microvolt = <1000000>; | ||
44 | regulator-max-microvolt = <1500000>; | ||
45 | regulator-boot-on; | ||
46 | regulator-always-on; | ||
47 | }; | ||
48 | LDO1 { | ||
49 | regulator-min-microvolt = <1200000>; | ||
50 | regulator-max-microvolt = <2800000>; | ||
51 | regulator-boot-on; | ||
52 | regulator-always-on; | ||
53 | }; | ||
54 | }; | ||
55 | rtc { | ||
56 | marvell,88pm860x-vrtc = <1>; | ||
57 | }; | ||
58 | touch { | ||
59 | marvell,88pm860x-gpadc-prebias = <1>; | ||
60 | marvell,88pm860x-gpadc-slot-cycle = <1>; | ||
61 | marvell,88pm860x-tsi-prebias = <6>; | ||
62 | marvell,88pm860x-pen-prebias = <16>; | ||
63 | marvell,88pm860x-pen-prechg = <2>; | ||
64 | marvell,88pm860x-resistor-X = <300>; | ||
65 | }; | ||
66 | backlights { | ||
67 | backlight-0 { | ||
68 | marvell,88pm860x-iset = <4>; | ||
69 | marvell,88pm860x-pwm = <3>; | ||
70 | }; | ||
71 | backlight-2 { | ||
72 | }; | ||
73 | }; | ||
74 | leds { | ||
75 | led0-red { | ||
76 | marvell,88pm860x-iset = <12>; | ||
77 | }; | ||
78 | led0-green { | ||
79 | marvell,88pm860x-iset = <12>; | ||
80 | }; | ||
81 | led0-blue { | ||
82 | marvell,88pm860x-iset = <12>; | ||
83 | }; | ||
84 | }; | ||
85 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/syscon.txt b/Documentation/devicetree/bindings/mfd/syscon.txt new file mode 100644 index 000000000000..fe8150bb3248 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/syscon.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | * System Controller Registers R/W driver | ||
2 | |||
3 | System controller node represents a register region containing a set | ||
4 | of miscellaneous registers. The registers are not cohesive enough to | ||
5 | represent as any specific type of device. The typical use-case is for | ||
6 | some other node's driver, or platform-specific code, to acquire a | ||
7 | reference to the syscon node (e.g. by phandle, node path, or search | ||
8 | using a specific compatible value), interrogate the node (or associated | ||
9 | OS driver) to determine the location of the registers, and access the | ||
10 | registers directly. | ||
11 | |||
12 | Required properties: | ||
13 | - compatible: Should contain "syscon". | ||
14 | - reg: the register region can be accessed from syscon | ||
15 | |||
16 | Examples: | ||
17 | gpr: iomuxc-gpr@020e0000 { | ||
18 | compatible = "fsl,imx6q-iomuxc-gpr", "syscon"; | ||
19 | reg = <0x020e0000 0x38>; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/tps65910.txt b/Documentation/devicetree/bindings/mfd/tps65910.txt index db03599ae4dc..2e3304888ffc 100644 --- a/Documentation/devicetree/bindings/mfd/tps65910.txt +++ b/Documentation/devicetree/bindings/mfd/tps65910.txt | |||
@@ -59,6 +59,8 @@ Optional properties: | |||
59 | in TPS6591X datasheet) | 59 | in TPS6591X datasheet) |
60 | - ti,en-gpio-sleep: enable sleep control for gpios | 60 | - ti,en-gpio-sleep: enable sleep control for gpios |
61 | There should be 9 entries here, one for each gpio. | 61 | There should be 9 entries here, one for each gpio. |
62 | - ti,system-power-controller: Telling whether or not this pmic is controlling | ||
63 | the system power. | ||
62 | 64 | ||
63 | Regulator Optional properties: | 65 | Regulator Optional properties: |
64 | - ti,regulator-ext-sleep-control: enable external sleep | 66 | - ti,regulator-ext-sleep-control: enable external sleep |
@@ -79,6 +81,8 @@ Example: | |||
79 | #interrupt-cells = <2>; | 81 | #interrupt-cells = <2>; |
80 | interrupt-controller; | 82 | interrupt-controller; |
81 | 83 | ||
84 | ti,system-power-controller; | ||
85 | |||
82 | ti,vmbch-threshold = 0; | 86 | ti,vmbch-threshold = 0; |
83 | ti,vmbch2-threshold = 0; | 87 | ti,vmbch2-threshold = 0; |
84 | ti,en-ck32k-xtal; | 88 | ti,en-ck32k-xtal; |
diff --git a/Documentation/devicetree/bindings/mfd/twl4030-audio.txt b/Documentation/devicetree/bindings/mfd/twl4030-audio.txt new file mode 100644 index 000000000000..414d2ae0adf6 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/twl4030-audio.txt | |||
@@ -0,0 +1,46 @@ | |||
1 | Texas Instruments TWL family (twl4030) audio module | ||
2 | |||
3 | The audio module inside the TWL family consist of an audio codec and a vibra | ||
4 | driver. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible : must be "ti,twl4030-audio" | ||
8 | |||
9 | Optional properties, nodes: | ||
10 | |||
11 | Audio functionality: | ||
12 | - codec { }: Need to be present if the audio functionality is used. Within this | ||
13 | section the following options can be used: | ||
14 | - ti,digimic_delay: Delay need after enabling the digimic to reduce artifacts | ||
15 | from the start of the recorded sample (in ms) | ||
16 | -ti,ramp_delay_value: HS ramp delay configuration to reduce pop noise | ||
17 | -ti,hs_extmute: Use external mute for HS pop reduction | ||
18 | -ti,hs_extmute_gpio: Use external GPIO to control the external mute | ||
19 | -ti,offset_cncl_path: Offset cancellation path selection, refer to TRM for the | ||
20 | valid values. | ||
21 | |||
22 | Vibra functionality | ||
23 | - ti,enable-vibra: Need to be set to <1> if the vibra functionality is used. if | ||
24 | missing or it is 0, the vibra functionality is disabled. | ||
25 | |||
26 | Example: | ||
27 | &i2c1 { | ||
28 | clock-frequency = <2600000>; | ||
29 | |||
30 | twl: twl@48 { | ||
31 | reg = <0x48>; | ||
32 | interrupts = <7>; /* SYS_NIRQ cascaded to intc */ | ||
33 | interrupt-parent = <&intc>; | ||
34 | |||
35 | twl_audio: audio { | ||
36 | compatible = "ti,twl4030-audio"; | ||
37 | |||
38 | ti,enable-vibra = <1>; | ||
39 | |||
40 | codec { | ||
41 | ti,ramp_delay_value = <3>; | ||
42 | }; | ||
43 | |||
44 | }; | ||
45 | }; | ||
46 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/twl6040.txt b/Documentation/devicetree/bindings/mfd/twl6040.txt index c855240f3a0e..0f5dd709d752 100644 --- a/Documentation/devicetree/bindings/mfd/twl6040.txt +++ b/Documentation/devicetree/bindings/mfd/twl6040.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | Texas Instruments TWL6040 family | 1 | Texas Instruments TWL6040 family |
2 | 2 | ||
3 | The TWL6040s are 8-channel high quality low-power audio codecs providing audio | 3 | The TWL6040s are 8-channel high quality low-power audio codecs providing audio, |
4 | and vibra functionality on OMAP4+ platforms. | 4 | vibra and GPO functionality on OMAP4+ platforms. |
5 | They are connected ot the host processor via i2c for commands, McPDM for audio | 5 | They are connected ot the host processor via i2c for commands, McPDM for audio |
6 | data and commands. | 6 | data and commands. |
7 | 7 | ||
@@ -10,6 +10,8 @@ Required properties: | |||
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 |
13 | - gpio-controller: | ||
14 | - #gpio-cells = <1>: twl6040 provides GPO lines. | ||
13 | - twl6040,audpwron-gpio: Power on GPIO line for the twl6040 | 15 | - twl6040,audpwron-gpio: Power on GPIO line for the twl6040 |
14 | 16 | ||
15 | - vio-supply: Regulator for the twl6040 VIO supply | 17 | - vio-supply: Regulator for the twl6040 VIO supply |
@@ -37,7 +39,6 @@ Example: | |||
37 | &i2c1 { | 39 | &i2c1 { |
38 | twl6040: twl@4b { | 40 | twl6040: twl@4b { |
39 | compatible = "ti,twl6040"; | 41 | compatible = "ti,twl6040"; |
40 | reg = <0x4b>; | ||
41 | 42 | ||
42 | interrupts = <0 119 4>; | 43 | interrupts = <0 119 4>; |
43 | interrupt-parent = <&gic>; | 44 | interrupt-parent = <&gic>; |
@@ -60,3 +61,5 @@ Example: | |||
60 | }; | 61 | }; |
61 | }; | 62 | }; |
62 | }; | 63 | }; |
64 | |||
65 | /include/ "twl6040.dtsi" | ||
diff --git a/Documentation/devicetree/bindings/regulator/88pm860x.txt b/Documentation/devicetree/bindings/regulator/88pm860x.txt new file mode 100644 index 000000000000..1267b3e1a2cc --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/88pm860x.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | Marvell 88PM860x regulator | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "marvell,88pm860x" | ||
5 | - reg: I2C slave address | ||
6 | - regulators: A node that houses a sub-node for each regulator within the | ||
7 | device. Each sub-node is identified using the regulator-compatible | ||
8 | property, with valid values listed below. | ||
9 | |||
10 | Example: | ||
11 | |||
12 | pmic: 88pm860x@34 { | ||
13 | compatible = "marvell,88pm860x"; | ||
14 | reg = <0x34>; | ||
15 | |||
16 | regulators { | ||
17 | BUCK1 { | ||
18 | regulator-min-microvolt = <1000000>; | ||
19 | regulator-max-microvolt = <1500000>; | ||
20 | regulator-boot-on; | ||
21 | regulator-always-on; | ||
22 | }; | ||
23 | BUCK3 { | ||
24 | regulator-min-microvolt = <1000000>; | ||
25 | regulator-max-microvolt = <3000000>; | ||
26 | regulator-boot-on; | ||
27 | regulator-always-on; | ||
28 | }; | ||
29 | }; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/max8907.txt b/Documentation/devicetree/bindings/regulator/max8907.txt new file mode 100644 index 000000000000..371eccd1cd68 --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/max8907.txt | |||
@@ -0,0 +1,69 @@ | |||
1 | MAX8907 regulator | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "maxim,max8907" | ||
5 | - reg: I2C slave address | ||
6 | - interrupts: The interrupt output of the controller | ||
7 | - mbatt-supply: The input supply for MBATT, BBAT, SDBY, VRTC. | ||
8 | - in-v1-supply: The input supply for SD1. | ||
9 | - in-v2-supply: The input supply for SD2. | ||
10 | - in-v3-supply: The input supply for SD3. | ||
11 | - in1-supply: The input supply for LDO1. | ||
12 | ... | ||
13 | - in20-supply: The input supply for LDO20. | ||
14 | - regulators: A node that houses a sub-node for each regulator within the | ||
15 | device. Each sub-node is identified using the node's name (or the deprecated | ||
16 | regulator-compatible property if present), with valid values listed below. | ||
17 | The content of each sub-node is defined by the standard binding for | ||
18 | regulators; see regulator.txt. | ||
19 | |||
20 | Optional properties: | ||
21 | - maxim,system-power-controller: Boolean property indicating that the PMIC | ||
22 | controls the overall system power. | ||
23 | |||
24 | The valid names for regulators are: | ||
25 | |||
26 | sd1, sd2, sd3, ldo1, ldo2, ldo3, ldo4, ldo5, ldo6, ldo7, ldo8, ldo9, ldo10, | ||
27 | ldo11, ldo12, ldo13, ldo14, ldo15, ldo16, ldo17, ldo18, ldo19, ldo20, out5v, | ||
28 | out33v, bbat, sdby, vrtc. | ||
29 | |||
30 | Example: | ||
31 | |||
32 | max8907@3c { | ||
33 | compatible = "maxim,max8907"; | ||
34 | reg = <0x3c>; | ||
35 | interrupts = <0 86 0x4>; | ||
36 | |||
37 | maxim,system-power-controller; | ||
38 | |||
39 | mbatt-supply = <&some_reg>; | ||
40 | in-v1-supply = <&mbatt_reg>; | ||
41 | ... | ||
42 | in1-supply = <&mbatt_reg>; | ||
43 | ... | ||
44 | |||
45 | regulators { | ||
46 | mbatt_reg: mbatt { | ||
47 | regulator-name = "vbat_pmu"; | ||
48 | regulator-min-microvolt = <5000000>; | ||
49 | regulator-max-microvolt = <5000000>; | ||
50 | regulator-always-on; | ||
51 | }; | ||
52 | |||
53 | sd1 { | ||
54 | regulator-name = "nvvdd_sv1,vdd_cpu_pmu"; | ||
55 | regulator-min-microvolt = <1000000>; | ||
56 | regulator-max-microvolt = <1000000>; | ||
57 | regulator-always-on; | ||
58 | }; | ||
59 | |||
60 | sd2 { | ||
61 | regulator-name = "nvvdd_sv2,vdd_core"; | ||
62 | regulator-min-microvolt = <1200000>; | ||
63 | regulator-max-microvolt = <1200000>; | ||
64 | regulator-always-on; | ||
65 | }; | ||
66 | ... | ||
67 | }; | ||
68 | }; | ||
69 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/tps6586x.txt b/Documentation/devicetree/bindings/regulator/tps6586x.txt index 07b9ef6e49d5..8b40cac24d93 100644 --- a/Documentation/devicetree/bindings/regulator/tps6586x.txt +++ b/Documentation/devicetree/bindings/regulator/tps6586x.txt | |||
@@ -22,6 +22,10 @@ Required properties: | |||
22 | - vinldo678-supply: The input supply for the LDO6, LDO7 and LDO8 | 22 | - vinldo678-supply: The input supply for the LDO6, LDO7 and LDO8 |
23 | - vinldo9-supply: The input supply for the LDO9 | 23 | - vinldo9-supply: The input supply for the LDO9 |
24 | 24 | ||
25 | Optional properties: | ||
26 | - ti,system-power-controller: Telling whether or not this pmic is controlling | ||
27 | the system power. | ||
28 | |||
25 | Each regulator is defined using the standard binding for regulators. | 29 | Each regulator is defined using the standard binding for regulators. |
26 | 30 | ||
27 | Note: LDO5 and LDO_RTC is supplied by SYS regulator internally and driver | 31 | Note: LDO5 and LDO_RTC is supplied by SYS regulator internally and driver |
@@ -37,6 +41,8 @@ Example: | |||
37 | #gpio-cells = <2>; | 41 | #gpio-cells = <2>; |
38 | gpio-controller; | 42 | gpio-controller; |
39 | 43 | ||
44 | ti,system-power-controller; | ||
45 | |||
40 | sys-supply = <&some_reg>; | 46 | sys-supply = <&some_reg>; |
41 | vin-sm0-supply = <&some_reg>; | 47 | vin-sm0-supply = <&some_reg>; |
42 | vin-sm1-supply = <&some_reg>; | 48 | vin-sm1-supply = <&some_reg>; |
diff --git a/Documentation/devicetree/bindings/video/backlight/88pm860x.txt b/Documentation/devicetree/bindings/video/backlight/88pm860x.txt new file mode 100644 index 000000000000..261df2799315 --- /dev/null +++ b/Documentation/devicetree/bindings/video/backlight/88pm860x.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | 88pm860x-backlight bindings | ||
2 | |||
3 | Optional properties: | ||
4 | - marvell,88pm860x-iset: Current supplies on backlight device. | ||
5 | - marvell,88pm860x-pwm: PWM frequency on backlight device. | ||
6 | |||
7 | Example: | ||
8 | |||
9 | backlights { | ||
10 | backlight-0 { | ||
11 | marvell,88pm860x-iset = <4>; | ||
12 | marvell,88pm860x-pwm = <3>; | ||
13 | }; | ||
14 | backlight-2 { | ||
15 | }; | ||
diff --git a/Documentation/smsc_ece1099.txt b/Documentation/smsc_ece1099.txt new file mode 100644 index 000000000000..6b492e82b43d --- /dev/null +++ b/Documentation/smsc_ece1099.txt | |||
@@ -0,0 +1,56 @@ | |||
1 | What is smsc-ece1099? | ||
2 | ---------------------- | ||
3 | |||
4 | The ECE1099 is a 40-Pin 3.3V Keyboard Scan Expansion | ||
5 | or GPIO Expansion device. The device supports a keyboard | ||
6 | scan matrix of 23x8. The device is connected to a Master | ||
7 | via the SMSC BC-Link interface or via the SMBus. | ||
8 | Keypad scan Input(KSI) and Keypad Scan Output(KSO) signals | ||
9 | are multiplexed with GPIOs. | ||
10 | |||
11 | Interrupt generation | ||
12 | -------------------- | ||
13 | |||
14 | Interrupts can be generated by an edge detection on a GPIO | ||
15 | pin or an edge detection on one of the bus interface pins. | ||
16 | Interrupts can also be detected on the keyboard scan interface. | ||
17 | The bus interrupt pin (BC_INT# or SMBUS_INT#) is asserted if | ||
18 | any bit in one of the Interrupt Status registers is 1 and | ||
19 | the corresponding Interrupt Mask bit is also 1. | ||
20 | |||
21 | In order for software to determine which device is the source | ||
22 | of an interrupt, it should first read the Group Interrupt Status Register | ||
23 | to determine which Status register group is a source for the interrupt. | ||
24 | Software should read both the Status register and the associated Mask register, | ||
25 | then AND the two values together. Bits that are 1 in the result of the AND | ||
26 | are active interrupts. Software clears an interrupt by writing a 1 to the | ||
27 | corresponding bit in the Status register. | ||
28 | |||
29 | Communication Protocol | ||
30 | ---------------------- | ||
31 | |||
32 | - SMbus slave Interface | ||
33 | The host processor communicates with the ECE1099 device | ||
34 | through a series of read/write registers via the SMBus | ||
35 | interface. SMBus is a serial communication protocol between | ||
36 | a computer host and its peripheral devices. The SMBus data | ||
37 | rate is 10KHz minimum to 400 KHz maximum | ||
38 | |||
39 | - Slave Bus Interface | ||
40 | The ECE1099 device SMBus implementation is a subset of the | ||
41 | SMBus interface to the host. The device is a slave-only SMBus device. | ||
42 | The implementation in the device is a subset of SMBus since it | ||
43 | only supports four protocols. | ||
44 | |||
45 | The Write Byte, Read Byte, Send Byte, and Receive Byte protocols are the | ||
46 | only valid SMBus protocols for the device. | ||
47 | |||
48 | - BC-LinkTM Interface | ||
49 | The BC-Link is a proprietary bus that allows communication | ||
50 | between a Master device and a Companion device. The Master | ||
51 | device uses this serial bus to read and write registers | ||
52 | located on the Companion device. The bus comprises three signals, | ||
53 | BC_CLK, BC_DAT and BC_INT#. The Master device always provides the | ||
54 | clock, BC_CLK, and the Companion device is the source for an | ||
55 | independent asynchronous interrupt signal, BC_INT#. The ECE1099 | ||
56 | supports BC-Link speeds up to 24MHz. | ||