aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r--Documentation/devicetree/bindings/arm/arm-boards2
-rw-r--r--Documentation/devicetree/bindings/arm/fw-cfg.txt72
-rw-r--r--Documentation/devicetree/bindings/graph.txt2
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-st.txt2
-rw-r--r--Documentation/devicetree/bindings/i2c/trivial-devices.txt1
-rw-r--r--Documentation/devicetree/bindings/input/gpio-keys.txt10
-rw-r--r--Documentation/devicetree/bindings/input/stmpe-keypad.txt2
-rw-r--r--Documentation/devicetree/bindings/net/davinci_emac.txt3
-rw-r--r--Documentation/devicetree/bindings/sound/designware-i2s.txt31
-rw-r--r--Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt67
-rw-r--r--Documentation/devicetree/bindings/sound/pcm512x.txt28
-rw-r--r--Documentation/devicetree/bindings/sound/samsung-i2s.txt22
-rw-r--r--Documentation/devicetree/bindings/sound/simple-card.txt5
-rw-r--r--Documentation/devicetree/bindings/sound/st,sta32x.txt92
-rw-r--r--Documentation/devicetree/bindings/sound/tlv320aic3x.txt10
-rw-r--r--Documentation/devicetree/bindings/sound/ts3a227e.txt5
-rw-r--r--Documentation/devicetree/bindings/sound/wm8904.txt2
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt4
18 files changed, 347 insertions, 13 deletions
diff --git a/Documentation/devicetree/bindings/arm/arm-boards b/Documentation/devicetree/bindings/arm/arm-boards
index 556c8665fdbf..b78564b2b201 100644
--- a/Documentation/devicetree/bindings/arm/arm-boards
+++ b/Documentation/devicetree/bindings/arm/arm-boards
@@ -23,7 +23,7 @@ Required nodes:
23 range of 0x200 bytes. 23 range of 0x200 bytes.
24 24
25- syscon: the root node of the Integrator platforms must have a 25- syscon: the root node of the Integrator platforms must have a
26 system controller node pointong to the control registers, 26 system controller node pointing to the control registers,
27 with the compatible string 27 with the compatible string
28 "arm,integrator-ap-syscon" 28 "arm,integrator-ap-syscon"
29 "arm,integrator-cp-syscon" 29 "arm,integrator-cp-syscon"
diff --git a/Documentation/devicetree/bindings/arm/fw-cfg.txt b/Documentation/devicetree/bindings/arm/fw-cfg.txt
new file mode 100644
index 000000000000..953fb640d9c4
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/fw-cfg.txt
@@ -0,0 +1,72 @@
1* QEMU Firmware Configuration bindings for ARM
2
3QEMU's arm-softmmu and aarch64-softmmu emulation / virtualization targets
4provide the following Firmware Configuration interface on the "virt" machine
5type:
6
7- A write-only, 16-bit wide selector (or control) register,
8- a read-write, 64-bit wide data register.
9
10QEMU exposes the control and data register to ARM guests as memory mapped
11registers; their location is communicated to the guest's UEFI firmware in the
12DTB that QEMU places at the bottom of the guest's DRAM.
13
14The guest writes a selector value (a key) to the selector register, and then
15can read the corresponding data (produced by QEMU) via the data register. If
16the selected entry is writable, the guest can rewrite it through the data
17register.
18
19The selector register takes keys in big endian byte order.
20
21The data register allows accesses with 8, 16, 32 and 64-bit width (only at
22offset 0 of the register). Accesses larger than a byte are interpreted as
23arrays, bundled together only for better performance. The bytes constituting
24such a word, in increasing address order, correspond to the bytes that would
25have been transferred by byte-wide accesses in chronological order.
26
27The interface allows guest firmware to download various parameters and blobs
28that affect how the firmware works and what tables it installs for the guest
29OS. For example, boot order of devices, ACPI tables, SMBIOS tables, kernel and
30initrd images for direct kernel booting, virtual machine UUID, SMP information,
31virtual NUMA topology, and so on.
32
33The authoritative registry of the valid selector values and their meanings is
34the QEMU source code; the structure of the data blobs corresponding to the
35individual key values is also defined in the QEMU source code.
36
37The presence of the registers can be verified by selecting the "signature" blob
38with key 0x0000, and reading four bytes from the data register. The returned
39signature is "QEMU".
40
41The outermost protocol (involving the write / read sequences of the control and
42data registers) is expected to be versioned, and/or described by feature bits.
43The interface revision / feature bitmap can be retrieved with key 0x0001. The
44blob to be read from the data register has size 4, and it is to be interpreted
45as a uint32_t value in little endian byte order. The current value
46(corresponding to the above outer protocol) is zero.
47
48The guest kernel is not expected to use these registers (although it is
49certainly allowed to); the device tree bindings are documented here because
50this is where device tree bindings reside in general.
51
52Required properties:
53
54- compatible: "qemu,fw-cfg-mmio".
55
56- reg: the MMIO region used by the device.
57 * Bytes 0x0 to 0x7 cover the data register.
58 * Bytes 0x8 to 0x9 cover the selector register.
59 * Further registers may be appended to the region in case of future interface
60 revisions / feature bits.
61
62Example:
63
64/ {
65 #size-cells = <0x2>;
66 #address-cells = <0x2>;
67
68 fw-cfg@9020000 {
69 compatible = "qemu,fw-cfg-mmio";
70 reg = <0x0 0x9020000 0x0 0xa>;
71 };
72};
diff --git a/Documentation/devicetree/bindings/graph.txt b/Documentation/devicetree/bindings/graph.txt
index 1a69c078adf2..fcb1c6a4787b 100644
--- a/Documentation/devicetree/bindings/graph.txt
+++ b/Documentation/devicetree/bindings/graph.txt
@@ -19,7 +19,7 @@ type of the connections, they just map their existence. Specific properties
19may be described by specialized bindings depending on the type of connection. 19may be described by specialized bindings depending on the type of connection.
20 20
21To see how this binding applies to video pipelines, for example, see 21To see how this binding applies to video pipelines, for example, see
22Documentation/device-tree/bindings/media/video-interfaces.txt. 22Documentation/devicetree/bindings/media/video-interfaces.txt.
23Here the ports describe data interfaces, and the links between them are 23Here the ports describe data interfaces, and the links between them are
24the connecting data buses. A single port with multiple connections can 24the connecting data buses. A single port with multiple connections can
25correspond to multiple devices being connected to the same physical bus. 25correspond to multiple devices being connected to the same physical bus.
diff --git a/Documentation/devicetree/bindings/i2c/i2c-st.txt b/Documentation/devicetree/bindings/i2c/i2c-st.txt
index 437e0db3823c..4c26fda3844a 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-st.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-st.txt
@@ -31,7 +31,7 @@ i2c0: i2c@fed40000 {
31 compatible = "st,comms-ssc4-i2c"; 31 compatible = "st,comms-ssc4-i2c";
32 reg = <0xfed40000 0x110>; 32 reg = <0xfed40000 0x110>;
33 interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>; 33 interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
34 clocks = <&CLK_S_ICN_REG_0>; 34 clocks = <&clk_s_a0_ls CLK_ICN_REG>;
35 clock-names = "ssc"; 35 clock-names = "ssc";
36 clock-frequency = <400000>; 36 clock-frequency = <400000>;
37 pinctrl-names = "default"; 37 pinctrl-names = "default";
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
index 9f4e3824e71e..9f41d05be3be 100644
--- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt
+++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt
@@ -47,6 +47,7 @@ dallas,ds3232 Extremely Accurate I²C RTC with Integrated Crystal and SRAM
47dallas,ds4510 CPU Supervisor with Nonvolatile Memory and Programmable I/O 47dallas,ds4510 CPU Supervisor with Nonvolatile Memory and Programmable I/O
48dallas,ds75 Digital Thermometer and Thermostat 48dallas,ds75 Digital Thermometer and Thermostat
49dlg,da9053 DA9053: flexible system level PMIC with multicore support 49dlg,da9053 DA9053: flexible system level PMIC with multicore support
50dlg,da9063 DA9063: system PMIC for quad-core application processors
50epson,rx8025 High-Stability. I2C-Bus INTERFACE REAL TIME CLOCK MODULE 51epson,rx8025 High-Stability. I2C-Bus INTERFACE REAL TIME CLOCK MODULE
51epson,rx8581 I2C-BUS INTERFACE REAL TIME CLOCK MODULE 52epson,rx8581 I2C-BUS INTERFACE REAL TIME CLOCK MODULE
52fsl,mag3110 MAG3110: Xtrinsic High Accuracy, 3D Magnetometer 53fsl,mag3110 MAG3110: Xtrinsic High Accuracy, 3D Magnetometer
diff --git a/Documentation/devicetree/bindings/input/gpio-keys.txt b/Documentation/devicetree/bindings/input/gpio-keys.txt
index a4a38fcf2ed6..44b705767aca 100644
--- a/Documentation/devicetree/bindings/input/gpio-keys.txt
+++ b/Documentation/devicetree/bindings/input/gpio-keys.txt
@@ -10,12 +10,13 @@ Optional properties:
10Each button (key) is represented as a sub-node of "gpio-keys": 10Each button (key) is represented as a sub-node of "gpio-keys":
11Subnode properties: 11Subnode properties:
12 12
13 - gpios: OF device-tree gpio specification.
14 - interrupts: the interrupt line for that input.
13 - label: Descriptive name of the key. 15 - label: Descriptive name of the key.
14 - linux,code: Keycode to emit. 16 - linux,code: Keycode to emit.
15 17
16Required mutual exclusive subnode-properties: 18Note that either "interrupts" or "gpios" properties can be omitted, but not
17 - gpios: OF device-tree gpio specification. 19both at the same time. Specifying both properties is allowed.
18 - interrupts: the interrupt line for that input
19 20
20Optional subnode-properties: 21Optional subnode-properties:
21 - linux,input-type: Specify event type this button/key generates. 22 - linux,input-type: Specify event type this button/key generates.
@@ -23,6 +24,9 @@ Optional subnode-properties:
23 - debounce-interval: Debouncing interval time in milliseconds. 24 - debounce-interval: Debouncing interval time in milliseconds.
24 If not specified defaults to 5. 25 If not specified defaults to 5.
25 - gpio-key,wakeup: Boolean, button can wake-up the system. 26 - gpio-key,wakeup: Boolean, button can wake-up the system.
27 - linux,can-disable: Boolean, indicates that button is connected
28 to dedicated (not shared) interrupt which can be disabled to
29 suppress events from the button.
26 30
27Example nodes: 31Example nodes:
28 32
diff --git a/Documentation/devicetree/bindings/input/stmpe-keypad.txt b/Documentation/devicetree/bindings/input/stmpe-keypad.txt
index 1b97222e8a0b..12bb771d66d4 100644
--- a/Documentation/devicetree/bindings/input/stmpe-keypad.txt
+++ b/Documentation/devicetree/bindings/input/stmpe-keypad.txt
@@ -8,6 +8,8 @@ Optional properties:
8 - debounce-interval : Debouncing interval time in milliseconds 8 - debounce-interval : Debouncing interval time in milliseconds
9 - st,scan-count : Scanning cycles elapsed before key data is updated 9 - st,scan-count : Scanning cycles elapsed before key data is updated
10 - st,no-autorepeat : If specified device will not autorepeat 10 - st,no-autorepeat : If specified device will not autorepeat
11 - keypad,num-rows : See ./matrix-keymap.txt
12 - keypad,num-columns : See ./matrix-keymap.txt
11 13
12Example: 14Example:
13 15
diff --git a/Documentation/devicetree/bindings/net/davinci_emac.txt b/Documentation/devicetree/bindings/net/davinci_emac.txt
index 032808843f90..24c5cdaba8d2 100644
--- a/Documentation/devicetree/bindings/net/davinci_emac.txt
+++ b/Documentation/devicetree/bindings/net/davinci_emac.txt
@@ -4,7 +4,8 @@ This file provides information, what the device node
4for the davinci_emac interface contains. 4for the davinci_emac interface contains.
5 5
6Required properties: 6Required properties:
7- compatible: "ti,davinci-dm6467-emac" or "ti,am3517-emac" 7- compatible: "ti,davinci-dm6467-emac", "ti,am3517-emac" or
8 "ti,dm816-emac"
8- reg: Offset and length of the register set for the device 9- reg: Offset and length of the register set for the device
9- ti,davinci-ctrl-reg-offset: offset to control register 10- ti,davinci-ctrl-reg-offset: offset to control register
10- ti,davinci-ctrl-mod-reg-offset: offset to control module register 11- ti,davinci-ctrl-mod-reg-offset: offset to control module register
diff --git a/Documentation/devicetree/bindings/sound/designware-i2s.txt b/Documentation/devicetree/bindings/sound/designware-i2s.txt
new file mode 100644
index 000000000000..7bb54247f8e8
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/designware-i2s.txt
@@ -0,0 +1,31 @@
1DesignWare I2S controller
2
3Required properties:
4 - compatible : Must be "snps,designware-i2s"
5 - reg : Must contain the I2S core's registers location and length
6 - clocks : Pairs of phandle and specifier referencing the controller's
7 clocks. The controller expects one clock: the clock used as the sampling
8 rate reference clock sample.
9 - clock-names : "i2sclk" for the sample rate reference clock.
10 - dmas: Pairs of phandle and specifier for the DMA channels that are used by
11 the core. The core expects one or two dma channels: one for transmit and
12 one for receive.
13 - dma-names : "tx" for the transmit channel, "rx" for the receive channel.
14
15For more details on the 'dma', 'dma-names', 'clock' and 'clock-names'
16properties please check:
17 * resource-names.txt
18 * clock/clock-bindings.txt
19 * dma/dma.txt
20
21Example:
22
23 soc_i2s: i2s@7ff90000 {
24 compatible = "snps,designware-i2s";
25 reg = <0x0 0x7ff90000 0x0 0x1000>;
26 clocks = <&scpi_i2sclk 0>;
27 clock-names = "i2sclk";
28 #sound-dai-cells = <0>;
29 dmas = <&dma0 5>;
30 dma-names = "tx";
31 };
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt
new file mode 100644
index 000000000000..a4589cda214e
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt
@@ -0,0 +1,67 @@
1NVIDIA Tegra audio complex, with RT5677 CODEC
2
3Required properties:
4- compatible : "nvidia,tegra-audio-rt5677"
5- clocks : Must contain an entry for each entry in clock-names.
6 See ../clocks/clock-bindings.txt for details.
7- clock-names : Must include the following entries:
8 - pll_a
9 - pll_a_out0
10 - mclk (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk)
11- nvidia,model : The user-visible name of this sound complex.
12- nvidia,audio-routing : A list of the connections between audio components.
13 Each entry is a pair of strings, the first being the connection's sink,
14 the second being the connection's source. Valid names for sources and
15 sinks are the RT5677's pins (as documented in its binding), and the jacks
16 on the board:
17
18 * Headphone
19 * Speaker
20 * Headset Mic
21 * Internal Mic 1
22 * Internal Mic 2
23
24- nvidia,i2s-controller : The phandle of the Tegra I2S controller that's
25 connected to the CODEC.
26- nvidia,audio-codec : The phandle of the RT5677 audio codec. This binding
27 assumes that AIF1 on the CODEC is connected to Tegra.
28
29Optional properties:
30- nvidia,hp-det-gpios : The GPIO that detects headphones are plugged in
31- nvidia,hp-en-gpios : The GPIO that enables headphone amplifier
32- nvidia,mic-present-gpios: The GPIO that mic jack is plugged in
33- nvidia,dmic-clk-en-gpios : The GPIO that gates DMIC clock signal
34
35Example:
36
37sound {
38 compatible = "nvidia,tegra-audio-rt5677-ryu",
39 "nvidia,tegra-audio-rt5677";
40 nvidia,model = "NVIDIA Tegra Ryu";
41
42 nvidia,audio-routing =
43 "Headphone", "LOUT2",
44 "Headphone", "LOUT1",
45 "Headset Mic", "MICBIAS1",
46 "IN1P", "Headset Mic",
47 "IN1N", "Headset Mic",
48 "DMIC L1", "Internal Mic 1",
49 "DMIC R1", "Internal Mic 1",
50 "DMIC L2", "Internal Mic 2",
51 "DMIC R2", "Internal Mic 2",
52 "Speaker", "PDM1L",
53 "Speaker", "PDM1R";
54
55 nvidia,i2s-controller = <&tegra_i2s1>;
56 nvidia,audio-codec = <&rt5677>;
57
58 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>;
59 nvidia,mic-present-gpios = <&gpio TEGRA_GPIO(O, 5) GPIO_ACTIVE_LOW>;
60 nvidia,hp-en-gpios = <&rt5677 1 GPIO_ACTIVE_HIGH>;
61 nvidia,dmic-clk-en-gpios = <&rt5677 2 GPIO_ACTIVE_HIGH>;
62
63 clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
64 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
65 <&tegra_car TEGRA124_CLK_EXTERN1>;
66 clock-names = "pll_a", "pll_a_out0", "mclk";
67};
diff --git a/Documentation/devicetree/bindings/sound/pcm512x.txt b/Documentation/devicetree/bindings/sound/pcm512x.txt
index faff75e64573..3aae3b41bd8e 100644
--- a/Documentation/devicetree/bindings/sound/pcm512x.txt
+++ b/Documentation/devicetree/bindings/sound/pcm512x.txt
@@ -5,7 +5,8 @@ on the board).
5 5
6Required properties: 6Required properties:
7 7
8 - compatible : One of "ti,pcm5121" or "ti,pcm5122" 8 - compatible : One of "ti,pcm5121", "ti,pcm5122", "ti,pcm5141" or
9 "ti,pcm5142"
9 10
10 - reg : the I2C address of the device for I2C, the chip select 11 - reg : the I2C address of the device for I2C, the chip select
11 number for SPI. 12 number for SPI.
@@ -16,9 +17,16 @@ Required properties:
16Optional properties: 17Optional properties:
17 18
18 - clocks : A clock specifier for the clock connected as SCLK. If this 19 - clocks : A clock specifier for the clock connected as SCLK. If this
19 is absent the device will be configured to clock from BCLK. 20 is absent the device will be configured to clock from BCLK. If pll-in
21 and pll-out are specified in addition to a clock, the device is
22 configured to accept clock input on a specified gpio pin.
20 23
21Example: 24 - pll-in, pll-out : gpio pins used to connect the pll using <1>
25 through <6>. The device will be configured for clock input on the
26 given pll-in pin and PLL output on the given pll-out pin. An
27 external connection from the pll-out pin to the SCLK pin is assumed.
28
29Examples:
22 30
23 pcm5122: pcm5122@4c { 31 pcm5122: pcm5122@4c {
24 compatible = "ti,pcm5122"; 32 compatible = "ti,pcm5122";
@@ -28,3 +36,17 @@ Example:
28 DVDD-supply = <&reg_1v8>; 36 DVDD-supply = <&reg_1v8>;
29 CPVDD-supply = <&reg_3v3>; 37 CPVDD-supply = <&reg_3v3>;
30 }; 38 };
39
40
41 pcm5142: pcm5142@4c {
42 compatible = "ti,pcm5142";
43 reg = <0x4c>;
44
45 AVDD-supply = <&reg_3v3_analog>;
46 DVDD-supply = <&reg_1v8>;
47 CPVDD-supply = <&reg_3v3>;
48
49 clocks = <&sck>;
50 pll-in = <3>;
51 pll-out = <6>;
52 };
diff --git a/Documentation/devicetree/bindings/sound/samsung-i2s.txt b/Documentation/devicetree/bindings/sound/samsung-i2s.txt
index d188296bb6ec..09e0e18591ae 100644
--- a/Documentation/devicetree/bindings/sound/samsung-i2s.txt
+++ b/Documentation/devicetree/bindings/sound/samsung-i2s.txt
@@ -33,6 +33,25 @@ Required SoC Specific Properties:
33 "iis" is the i2s bus clock and i2s_opclk0, i2s_opclk1 are sources of the root 33 "iis" is the i2s bus clock and i2s_opclk0, i2s_opclk1 are sources of the root
34 clk. i2s0 has internal mux to select the source of root clk and i2s1 and i2s2 34 clk. i2s0 has internal mux to select the source of root clk and i2s1 and i2s2
35 doesn't have any such mux. 35 doesn't have any such mux.
36- #clock-cells: should be 1, this property must be present if the I2S device
37 is a clock provider in terms of the common clock bindings, described in
38 ../clock/clock-bindings.txt.
39- clock-output-names: from the common clock bindings, names of the CDCLK
40 I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1",
41 "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices recpectively.
42
43There are following clocks available at the I2S device nodes:
44 CLK_I2S_CDCLK - the CDCLK (CODECLKO) gate clock,
45 CLK_I2S_RCLK_PSR - the RCLK prescaler divider clock (corresponding to the
46 IISPSR register),
47 CLK_I2S_RCLK_SRC - the RCLKSRC mux clock (corresponding to RCLKSRC bit in
48 IISMOD register).
49
50Refer to the SoC datasheet for availability of the above clocks.
51The CLK_I2S_RCLK_PSR and CLK_I2S_RCLK_SRC clocks are usually only available
52in the IIS Multi Audio Interface (I2S0).
53Note: Old DTs may not have the #clock-cells, clock-output-names properties
54and then not use the I2S node as a clock supplier.
36 55
37Optional SoC Specific Properties: 56Optional SoC Specific Properties:
38 57
@@ -41,6 +60,7 @@ Optional SoC Specific Properties:
41- pinctrl-0: Should specify pin control groups used for this controller. 60- pinctrl-0: Should specify pin control groups used for this controller.
42- pinctrl-names: Should contain only one value - "default". 61- pinctrl-names: Should contain only one value - "default".
43 62
63
44Example: 64Example:
45 65
46i2s0: i2s@03830000 { 66i2s0: i2s@03830000 {
@@ -54,6 +74,8 @@ i2s0: i2s@03830000 {
54 <&clock_audss EXYNOS_I2S_BUS>, 74 <&clock_audss EXYNOS_I2S_BUS>,
55 <&clock_audss EXYNOS_SCLK_I2S>; 75 <&clock_audss EXYNOS_SCLK_I2S>;
56 clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; 76 clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
77 #clock-cells;
78 clock-output-names = "i2s_cdclk0";
57 samsung,idma-addr = <0x03000000>; 79 samsung,idma-addr = <0x03000000>;
58 pinctrl-names = "default"; 80 pinctrl-names = "default";
59 pinctrl-0 = <&i2s0_bus>; 81 pinctrl-0 = <&i2s0_bus>;
diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt b/Documentation/devicetree/bindings/sound/simple-card.txt
index c3cba600bf11..73bf314f7240 100644
--- a/Documentation/devicetree/bindings/sound/simple-card.txt
+++ b/Documentation/devicetree/bindings/sound/simple-card.txt
@@ -75,6 +75,11 @@ Optional CPU/CODEC subnodes properties:
75 it can be specified via "clocks" if system has 75 it can be specified via "clocks" if system has
76 clock node (= common clock), or "system-clock-frequency" 76 clock node (= common clock), or "system-clock-frequency"
77 (if system doens't support common clock) 77 (if system doens't support common clock)
78 If a clock is specified, it is
79 enabled with clk_prepare_enable()
80 in dai startup() and disabled with
81 clk_disable_unprepare() in dai
82 shutdown().
78 83
79Example 1 - single DAI link: 84Example 1 - single DAI link:
80 85
diff --git a/Documentation/devicetree/bindings/sound/st,sta32x.txt b/Documentation/devicetree/bindings/sound/st,sta32x.txt
new file mode 100644
index 000000000000..255de3ae5b2f
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/st,sta32x.txt
@@ -0,0 +1,92 @@
1STA32X audio CODEC
2
3The driver for this device only supports I2C.
4
5Required properties:
6
7 - compatible: "st,sta32x"
8 - reg: the I2C address of the device for I2C
9 - reset-gpios: a GPIO spec for the reset pin. If specified, it will be
10 deasserted before communication to the codec starts.
11
12 - power-down-gpios: a GPIO spec for the power down pin. If specified,
13 it will be deasserted before communication to the codec
14 starts.
15
16 - Vdda-supply: regulator spec, providing 3.3V
17 - Vdd3-supply: regulator spec, providing 3.3V
18 - Vcc-supply: regulator spec, providing 5V - 26V
19
20Optional properties:
21
22 - st,output-conf: number, Selects the output configuration:
23 0: 2-channel (full-bridge) power, 2-channel data-out
24 1: 2 (half-bridge). 1 (full-bridge) on-board power
25 2: 2 Channel (Full-Bridge) Power, 1 Channel FFX
26 3: 1 Channel Mono-Parallel
27 If parameter is missing, mode 0 will be enabled.
28 This property has to be specified as '/bits/ 8' value.
29
30 - st,ch1-output-mapping: Channel 1 output mapping
31 - st,ch2-output-mapping: Channel 2 output mapping
32 - st,ch3-output-mapping: Channel 3 output mapping
33 0: Channel 1
34 1: Channel 2
35 2: Channel 3
36 If parameter is missing, channel 1 is chosen.
37 This properties have to be specified as '/bits/ 8' values.
38
39 - st,thermal-warning-recover:
40 If present, thermal warning recovery is enabled.
41
42 - st,thermal-warning-adjustment:
43 If present, thermal warning adjustment is enabled.
44
45 - st,fault-detect-recovery:
46 If present, then fault recovery will be enabled.
47
48 - st,drop-compensation-ns: number
49 Only required for "st,ffx-power-output-mode" ==
50 "variable-drop-compensation".
51 Specifies the drop compensation in nanoseconds.
52 The value must be in the range of 0..300, and only
53 multiples of 20 are allowed. Default is 140ns.
54
55 - st,max-power-use-mpcc:
56 If present, then MPCC bits are used for MPC coefficients,
57 otherwise standard MPC coefficients are used.
58
59 - st,max-power-corr:
60 If present, power bridge correction for THD reduction near maximum
61 power output is enabled.
62
63 - st,am-reduction-mode:
64 If present, FFX mode runs in AM reduction mode, otherwise normal
65 FFX mode is used.
66
67 - st,odd-pwm-speed-mode:
68 If present, PWM speed mode run on odd speed mode (341.3 kHz) on all
69 channels. If not present, normal PWM spped mode (384 kHz) will be used.
70
71 - st,invalid-input-detect-mute:
72 If present, automatic invalid input detect mute is enabled.
73
74Example:
75
76codec: sta32x@38 {
77 compatible = "st,sta32x";
78 reg = <0x1c>;
79 reset-gpios = <&gpio1 19 0>;
80 power-down-gpios = <&gpio1 16 0>;
81 st,output-conf = /bits/ 8 <0x3>; // set output to 2-channel
82 // (full-bridge) power,
83 // 2-channel data-out
84 st,ch1-output-mapping = /bits/ 8 <0>; // set channel 1 output ch 1
85 st,ch2-output-mapping = /bits/ 8 <0>; // set channel 2 output ch 1
86 st,ch3-output-mapping = /bits/ 8 <0>; // set channel 3 output ch 1
87 st,max-power-correction; // enables power bridge
88 // correction for THD reduction
89 // near maximum power output
90 st,invalid-input-detect-mute; // mute if no valid digital
91 // audio signal is provided.
92};
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt
index 5e6040c2c2e9..47a213c411ce 100644
--- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt
+++ b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt
@@ -9,6 +9,7 @@ Required properties:
9 "ti,tlv320aic33" - TLV320AIC33 9 "ti,tlv320aic33" - TLV320AIC33
10 "ti,tlv320aic3007" - TLV320AIC3007 10 "ti,tlv320aic3007" - TLV320AIC3007
11 "ti,tlv320aic3106" - TLV320AIC3106 11 "ti,tlv320aic3106" - TLV320AIC3106
12 "ti,tlv320aic3104" - TLV320AIC3104
12 13
13 14
14- reg - <int> - I2C slave address 15- reg - <int> - I2C slave address
@@ -18,6 +19,7 @@ Optional properties:
18 19
19- gpio-reset - gpio pin number used for codec reset 20- gpio-reset - gpio pin number used for codec reset
20- ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality 21- ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
22 - Not supported on tlv320aic3104
21- ai3x-micbias-vg - MicBias Voltage required. 23- ai3x-micbias-vg - MicBias Voltage required.
22 1 - MICBIAS output is powered to 2.0V, 24 1 - MICBIAS output is powered to 2.0V,
23 2 - MICBIAS output is powered to 2.5V, 25 2 - MICBIAS output is powered to 2.5V,
@@ -36,7 +38,13 @@ CODEC output pins:
36 * HPLCOM 38 * HPLCOM
37 * HPRCOM 39 * HPRCOM
38 40
39CODEC input pins: 41CODEC input pins for TLV320AIC3104:
42 * MIC2L
43 * MIC2R
44 * LINE1L
45 * LINE1R
46
47CODEC input pins for other compatible codecs:
40 * MIC3L 48 * MIC3L
41 * MIC3R 49 * MIC3R
42 * LINE1L 50 * LINE1L
diff --git a/Documentation/devicetree/bindings/sound/ts3a227e.txt b/Documentation/devicetree/bindings/sound/ts3a227e.txt
index e8bf23eb1803..a836881d9608 100644
--- a/Documentation/devicetree/bindings/sound/ts3a227e.txt
+++ b/Documentation/devicetree/bindings/sound/ts3a227e.txt
@@ -13,6 +13,11 @@ Required properties:
13 - interrupt-parent: The parent interrupt controller 13 - interrupt-parent: The parent interrupt controller
14 - interrupts: Interrupt number for /INT pin from the 227e 14 - interrupts: Interrupt number for /INT pin from the 227e
15 15
16Optional properies:
17 - ti,micbias: Intended MICBIAS voltage (datasheet section 9.6.7).
18 Select 0/1/2/3/4/5/6/7 to specify MACBIAS voltage
19 2.1V/2.2V/2.3V/2.4V/2.5V/2.6V/2.7V/2.8V
20 Default value is "1" (2.2V).
16 21
17Examples: 22Examples:
18 23
diff --git a/Documentation/devicetree/bindings/sound/wm8904.txt b/Documentation/devicetree/bindings/sound/wm8904.txt
index e99f4097c83c..66bf261423b9 100644
--- a/Documentation/devicetree/bindings/sound/wm8904.txt
+++ b/Documentation/devicetree/bindings/sound/wm8904.txt
@@ -3,7 +3,7 @@ WM8904 audio CODEC
3This device supports I2C only. 3This device supports I2C only.
4 4
5Required properties: 5Required properties:
6 - compatible: "wlf,wm8904" 6 - compatible: "wlf,wm8904" or "wlf,wm8912"
7 - reg: the I2C address of the device. 7 - reg: the I2C address of the device.
8 - clock-names: "mclk" 8 - clock-names: "mclk"
9 - clocks: reference to 9 - clocks: reference to
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index b1df0ad1306c..d443279c95dc 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -9,7 +9,6 @@ ad Avionic Design GmbH
9adapteva Adapteva, Inc. 9adapteva Adapteva, Inc.
10adi Analog Devices, Inc. 10adi Analog Devices, Inc.
11aeroflexgaisler Aeroflex Gaisler AB 11aeroflexgaisler Aeroflex Gaisler AB
12ak Asahi Kasei Corp.
13allwinner Allwinner Technology Co., Ltd. 12allwinner Allwinner Technology Co., Ltd.
14altr Altera Corp. 13altr Altera Corp.
15amcc Applied Micro Circuits Corporation (APM, formally AMCC) 14amcc Applied Micro Circuits Corporation (APM, formally AMCC)
@@ -20,6 +19,7 @@ amstaos AMS-Taos Inc.
20apm Applied Micro Circuits Corporation (APM) 19apm Applied Micro Circuits Corporation (APM)
21arm ARM Ltd. 20arm ARM Ltd.
22armadeus ARMadeus Systems SARL 21armadeus ARMadeus Systems SARL
22asahi-kasei Asahi Kasei Corp.
23atmel Atmel Corporation 23atmel Atmel Corporation
24auo AU Optronics Corporation 24auo AU Optronics Corporation
25avago Avago Technologies 25avago Avago Technologies
@@ -127,6 +127,7 @@ pixcir PIXCIR MICROELECTRONICS Co., Ltd
127powervr PowerVR (deprecated, use img) 127powervr PowerVR (deprecated, use img)
128qca Qualcomm Atheros, Inc. 128qca Qualcomm Atheros, Inc.
129qcom Qualcomm Technologies, Inc 129qcom Qualcomm Technologies, Inc
130qemu QEMU, a generic and open source machine emulator and virtualizer
130qnap QNAP Systems, Inc. 131qnap QNAP Systems, Inc.
131radxa Radxa 132radxa Radxa
132raidsonic RaidSonic Technology GmbH 133raidsonic RaidSonic Technology GmbH
@@ -168,6 +169,7 @@ usi Universal Scientific Industrial Co., Ltd.
168v3 V3 Semiconductor 169v3 V3 Semiconductor
169variscite Variscite Ltd. 170variscite Variscite Ltd.
170via VIA Technologies, Inc. 171via VIA Technologies, Inc.
172virtio Virtual I/O Device Specification, developed by the OASIS consortium
171voipac Voipac Technologies s.r.o. 173voipac Voipac Technologies s.r.o.
172winbond Winbond Electronics corp. 174winbond Winbond Electronics corp.
173wlf Wolfson Microelectronics 175wlf Wolfson Microelectronics