xref: /linux/Documentation/devicetree/bindings/mfd/apple,smc.yaml (revision fcb117e0758d1462128a50c5788555e03b48833b)
1*dbad7199SRussell King (Oracle)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*dbad7199SRussell King (Oracle)%YAML 1.2
3*dbad7199SRussell King (Oracle)---
4*dbad7199SRussell King (Oracle)$id: http://devicetree.org/schemas/mfd/apple,smc.yaml#
5*dbad7199SRussell King (Oracle)$schema: http://devicetree.org/meta-schemas/core.yaml#
6*dbad7199SRussell King (Oracle)
7*dbad7199SRussell King (Oracle)title: Apple Mac System Management Controller
8*dbad7199SRussell King (Oracle)
9*dbad7199SRussell King (Oracle)maintainers:
10*dbad7199SRussell King (Oracle)  - Sven Peter <sven@kernel.org>
11*dbad7199SRussell King (Oracle)
12*dbad7199SRussell King (Oracle)description:
13*dbad7199SRussell King (Oracle)  Apple Mac System Management Controller implements various functions
14*dbad7199SRussell King (Oracle)  such as GPIO, RTC, power, reboot.
15*dbad7199SRussell King (Oracle)
16*dbad7199SRussell King (Oracle)properties:
17*dbad7199SRussell King (Oracle)  compatible:
18*dbad7199SRussell King (Oracle)    items:
19*dbad7199SRussell King (Oracle)      - enum:
20*dbad7199SRussell King (Oracle)          - apple,t6000-smc
21*dbad7199SRussell King (Oracle)          - apple,t8103-smc
22*dbad7199SRussell King (Oracle)          - apple,t8112-smc
23*dbad7199SRussell King (Oracle)      - const: apple,smc
24*dbad7199SRussell King (Oracle)
25*dbad7199SRussell King (Oracle)  reg:
26*dbad7199SRussell King (Oracle)    items:
27*dbad7199SRussell King (Oracle)      - description: SMC area
28*dbad7199SRussell King (Oracle)      - description: SRAM area
29*dbad7199SRussell King (Oracle)
30*dbad7199SRussell King (Oracle)  reg-names:
31*dbad7199SRussell King (Oracle)    items:
32*dbad7199SRussell King (Oracle)      - const: smc
33*dbad7199SRussell King (Oracle)      - const: sram
34*dbad7199SRussell King (Oracle)
35*dbad7199SRussell King (Oracle)  mboxes:
36*dbad7199SRussell King (Oracle)    maxItems: 1
37*dbad7199SRussell King (Oracle)
38*dbad7199SRussell King (Oracle)  gpio:
39*dbad7199SRussell King (Oracle)    $ref: /schemas/gpio/apple,smc-gpio.yaml
40*dbad7199SRussell King (Oracle)
41*dbad7199SRussell King (Oracle)  reboot:
42*dbad7199SRussell King (Oracle)    $ref: /schemas/power/reset/apple,smc-reboot.yaml
43*dbad7199SRussell King (Oracle)
44*dbad7199SRussell King (Oracle)additionalProperties: false
45*dbad7199SRussell King (Oracle)
46*dbad7199SRussell King (Oracle)required:
47*dbad7199SRussell King (Oracle)  - compatible
48*dbad7199SRussell King (Oracle)  - reg
49*dbad7199SRussell King (Oracle)  - reg-names
50*dbad7199SRussell King (Oracle)  - mboxes
51*dbad7199SRussell King (Oracle)
52*dbad7199SRussell King (Oracle)examples:
53*dbad7199SRussell King (Oracle)  - |
54*dbad7199SRussell King (Oracle)    soc {
55*dbad7199SRussell King (Oracle)      #address-cells = <2>;
56*dbad7199SRussell King (Oracle)      #size-cells = <2>;
57*dbad7199SRussell King (Oracle)
58*dbad7199SRussell King (Oracle)      smc@23e400000 {
59*dbad7199SRussell King (Oracle)        compatible = "apple,t8103-smc", "apple,smc";
60*dbad7199SRussell King (Oracle)        reg = <0x2 0x3e400000 0x0 0x4000>,
61*dbad7199SRussell King (Oracle)               <0x2 0x3fe00000 0x0 0x100000>;
62*dbad7199SRussell King (Oracle)        reg-names = "smc", "sram";
63*dbad7199SRussell King (Oracle)        mboxes = <&smc_mbox>;
64*dbad7199SRussell King (Oracle)
65*dbad7199SRussell King (Oracle)        smc_gpio: gpio {
66*dbad7199SRussell King (Oracle)          compatible = "apple,smc-gpio";
67*dbad7199SRussell King (Oracle)          gpio-controller;
68*dbad7199SRussell King (Oracle)          #gpio-cells = <2>;
69*dbad7199SRussell King (Oracle)        };
70*dbad7199SRussell King (Oracle)
71*dbad7199SRussell King (Oracle)        reboot {
72*dbad7199SRussell King (Oracle)          compatible = "apple,smc-reboot";
73*dbad7199SRussell King (Oracle)          nvmem-cells = <&shutdown_flag>, <&boot_stage>,
74*dbad7199SRussell King (Oracle)                        <&boot_error_count>, <&panic_count>;
75*dbad7199SRussell King (Oracle)          nvmem-cell-names = "shutdown_flag", "boot_stage",
76*dbad7199SRussell King (Oracle)                             "boot_error_count", "panic_count";
77*dbad7199SRussell King (Oracle)        };
78*dbad7199SRussell King (Oracle)      };
79*dbad7199SRussell King (Oracle)    };
80