xref: /linux/Documentation/devicetree/bindings/embedded-controller/microsoft,surface-sam.yaml (revision 3d6a17fccc2832d8bc84420a634330941509d6e1)
1ceccd196SKonrad Dybcio# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2ceccd196SKonrad Dybcio%YAML 1.2
3ceccd196SKonrad Dybcio---
4*3d6a17fcSKrzysztof Kozlowski$id: http://devicetree.org/schemas/embedded-controller/microsoft,surface-sam.yaml#
5ceccd196SKonrad Dybcio$schema: http://devicetree.org/meta-schemas/core.yaml#
6ceccd196SKonrad Dybcio
7ceccd196SKonrad Dybciotitle: Surface System Aggregator Module (SAM, SSAM)
8ceccd196SKonrad Dybcio
9ceccd196SKonrad Dybciomaintainers:
10ceccd196SKonrad Dybcio  - Konrad Dybcio <konradybcio@kernel.org>
11ceccd196SKonrad Dybcio
12ceccd196SKonrad Dybciodescription: |
13ceccd196SKonrad Dybcio  Surface devices use a standardized embedded controller to let the
14ceccd196SKonrad Dybcio  operating system interface with various hardware functions. The
15ceccd196SKonrad Dybcio  specific functionalities are modeled as subdevices and matched on
16ceccd196SKonrad Dybcio  five levels: domain, category, target, instance and function.
17ceccd196SKonrad Dybcio
18ceccd196SKonrad Dybcioproperties:
19ceccd196SKonrad Dybcio  compatible:
20ceccd196SKonrad Dybcio    const: microsoft,surface-sam
21ceccd196SKonrad Dybcio
22ceccd196SKonrad Dybcio  interrupts:
23ceccd196SKonrad Dybcio    maxItems: 1
24ceccd196SKonrad Dybcio
25ceccd196SKonrad Dybcio  current-speed: true
26ceccd196SKonrad Dybcio
27ceccd196SKonrad Dybciorequired:
28ceccd196SKonrad Dybcio  - compatible
29ceccd196SKonrad Dybcio  - interrupts
30ceccd196SKonrad Dybcio
31ceccd196SKonrad DybcioadditionalProperties: false
32ceccd196SKonrad Dybcio
33ceccd196SKonrad Dybcioexamples:
34ceccd196SKonrad Dybcio  - |
35ceccd196SKonrad Dybcio    #include <dt-bindings/interrupt-controller/irq.h>
36ceccd196SKonrad Dybcio    uart {
37ceccd196SKonrad Dybcio        embedded-controller {
38ceccd196SKonrad Dybcio            compatible = "microsoft,surface-sam";
39ceccd196SKonrad Dybcio
40ceccd196SKonrad Dybcio            interrupts-extended = <&tlmm 91 IRQ_TYPE_EDGE_RISING>;
41ceccd196SKonrad Dybcio
42ceccd196SKonrad Dybcio            pinctrl-0 = <&ssam_state>;
43ceccd196SKonrad Dybcio            pinctrl-names = "default";
44ceccd196SKonrad Dybcio
45ceccd196SKonrad Dybcio            current-speed = <4000000>;
46ceccd196SKonrad Dybcio        };
47ceccd196SKonrad Dybcio    };
48