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