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