1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/w1/w1-uart.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: UART 1-Wire Bus
8
9maintainers:
10  - Christoph Winklhofer <cj.winklhofer@gmail.com>
11
12description: |
13  UART 1-wire bus. Utilizes the UART interface via the Serial Device Bus
14  to create the 1-Wire timing patterns.
15
16  The UART peripheral must support full-duplex and operate in open-drain
17  mode. The timing patterns are generated by a specific combination of
18  baud-rate and transmitted byte, which corresponds to a 1-Wire read bit,
19  write bit or reset pulse.
20
21  The default baud-rate for reset and presence detection is 9600 and for
22  a 1-Wire read or write operation 115200. In case the actual baud-rate
23  is different from the requested one, the transmitted byte is adapted
24  to generate the 1-Wire timing patterns.
25
26  https://www.analog.com/en/technical-articles/using-a-uart-to-implement-a-1wire-bus-master.html
27
28properties:
29  compatible:
30    const: w1-uart
31
32  reset-bps:
33    default: 9600
34    description:
35      The baud rate for the 1-Wire reset and presence detect.
36
37  write-0-bps:
38    default: 115200
39    description:
40      The baud rate for the 1-Wire write-0 cycle.
41
42  write-1-bps:
43    default: 115200
44    description:
45      The baud rate for the 1-Wire write-1 and read cycle.
46
47required:
48  - compatible
49
50additionalProperties:
51  type: object
52
53examples:
54  - |
55    serial {
56        onewire {
57            compatible = "w1-uart";
58        };
59    };
60