Merge back ACPICA material for v4.13.
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / iio / dac / st,stm32-dac.txt
1 STMicroelectronics STM32 DAC
2
3 The STM32 DAC is a 12-bit voltage output digital-to-analog converter. The DAC
4 may be configured in 8 or 12-bit mode. It has two output channels, each with
5 its own converter.
6 It has built-in noise and triangle waveform generator and supports external
7 triggers for conversions. The DAC's output buffer allows a high drive output
8 current.
9
10 Contents of a stm32 dac root node:
11 -----------------------------------
12 Required properties:
13 - compatible: Must be "st,stm32h7-dac-core".
14 - reg: Offset and length of the device's register set.
15 - clocks: Must contain an entry for pclk (which feeds the peripheral bus
16   interface)
17 - clock-names: Must be "pclk".
18 - vref-supply: Phandle to the vref+ input analog reference supply.
19 - #address-cells = <1>;
20 - #size-cells = <0>;
21
22 Optional properties:
23 - resets: Must contain the phandle to the reset controller.
24 - A pinctrl state named "default" for each DAC channel may be defined to set
25   DAC_OUTx pin in mode of operation for analog output on external pin.
26
27 Contents of a stm32 dac child node:
28 -----------------------------------
29 DAC core node should contain at least one subnode, representing a
30 DAC instance/channel available on the machine.
31
32 Required properties:
33 - compatible: Must be "st,stm32-dac".
34 - reg: Must be either 1 or 2, to define (single) channel in use
35 - #io-channel-cells = <1>: See the IIO bindings section "IIO consumers" in
36   Documentation/devicetree/bindings/iio/iio-bindings.txt
37
38 Example:
39         dac: dac@40007400 {
40                 compatible = "st,stm32h7-dac-core";
41                 reg = <0x40007400 0x400>;
42                 clocks = <&clk>;
43                 clock-names = "pclk";
44                 vref-supply = <&reg_vref>;
45                 pinctrl-names = "default";
46                 pinctrl-0 = <&dac_out1 &dac_out2>;
47                 #address-cells = <1>;
48                 #size-cells = <0>;
49
50                 dac1: dac@1 {
51                         compatible = "st,stm32-dac";
52                         #io-channels-cells = <1>;
53                         reg = <1>;
54                 };
55
56                 dac2: dac@2 {
57                         compatible = "st,stm32-dac";
58                         #io-channels-cells = <1>;
59                         reg = <2>;
60                 };
61         };