18ccc0d23SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28ccc0d23SEmmanuel Vadot# Copyright 2024 Linaro Ltd. 38ccc0d23SEmmanuel Vadot%YAML 1.2 48ccc0d23SEmmanuel Vadot--- 58ccc0d23SEmmanuel Vadot$id: http://devicetree.org/schemas/firmware/google,gs101-acpm-ipc.yaml# 68ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 78ccc0d23SEmmanuel Vadot 88ccc0d23SEmmanuel Vadottitle: Samsung Exynos ACPM mailbox protocol 98ccc0d23SEmmanuel Vadot 108ccc0d23SEmmanuel Vadotmaintainers: 118ccc0d23SEmmanuel Vadot - Tudor Ambarus <tudor.ambarus@linaro.org> 128ccc0d23SEmmanuel Vadot 138ccc0d23SEmmanuel Vadotdescription: | 148ccc0d23SEmmanuel Vadot ACPM (Alive Clock and Power Manager) is a firmware that operates on the 158ccc0d23SEmmanuel Vadot APM (Active Power Management) module that handles overall power management 168ccc0d23SEmmanuel Vadot activities. ACPM and masters regard each other as independent hardware 178ccc0d23SEmmanuel Vadot component and communicate with each other using mailbox messages and 188ccc0d23SEmmanuel Vadot shared memory. 198ccc0d23SEmmanuel Vadot 208ccc0d23SEmmanuel Vadot This binding is intended to define the interface the firmware implementing 218ccc0d23SEmmanuel Vadot ACPM provides for OSPM in the device tree. 228ccc0d23SEmmanuel Vadot 238ccc0d23SEmmanuel Vadotproperties: 248ccc0d23SEmmanuel Vadot compatible: 258ccc0d23SEmmanuel Vadot const: google,gs101-acpm-ipc 268ccc0d23SEmmanuel Vadot 278ccc0d23SEmmanuel Vadot mboxes: 288ccc0d23SEmmanuel Vadot maxItems: 1 298ccc0d23SEmmanuel Vadot 30*ae5de77eSEmmanuel Vadot pmic: 31*ae5de77eSEmmanuel Vadot description: Child node describing the main PMIC. 32*ae5de77eSEmmanuel Vadot type: object 33*ae5de77eSEmmanuel Vadot additionalProperties: true 34*ae5de77eSEmmanuel Vadot 35*ae5de77eSEmmanuel Vadot properties: 36*ae5de77eSEmmanuel Vadot compatible: 37*ae5de77eSEmmanuel Vadot const: samsung,s2mpg10-pmic 38*ae5de77eSEmmanuel Vadot 398ccc0d23SEmmanuel Vadot shmem: 408ccc0d23SEmmanuel Vadot description: 418ccc0d23SEmmanuel Vadot List of phandle pointing to the shared memory (SHM) area. The memory 428ccc0d23SEmmanuel Vadot contains channels configuration data and the TX/RX ring buffers that 438ccc0d23SEmmanuel Vadot are used for passing messages to/from the ACPM firmware. 448ccc0d23SEmmanuel Vadot maxItems: 1 458ccc0d23SEmmanuel Vadot 468ccc0d23SEmmanuel Vadotrequired: 478ccc0d23SEmmanuel Vadot - compatible 488ccc0d23SEmmanuel Vadot - mboxes 498ccc0d23SEmmanuel Vadot - shmem 508ccc0d23SEmmanuel Vadot 518ccc0d23SEmmanuel VadotadditionalProperties: false 528ccc0d23SEmmanuel Vadot 538ccc0d23SEmmanuel Vadotexamples: 548ccc0d23SEmmanuel Vadot - | 55*ae5de77eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 56*ae5de77eSEmmanuel Vadot 578ccc0d23SEmmanuel Vadot power-management { 588ccc0d23SEmmanuel Vadot compatible = "google,gs101-acpm-ipc"; 598ccc0d23SEmmanuel Vadot mboxes = <&ap2apm_mailbox>; 608ccc0d23SEmmanuel Vadot shmem = <&apm_sram>; 61*ae5de77eSEmmanuel Vadot 62*ae5de77eSEmmanuel Vadot pmic { 63*ae5de77eSEmmanuel Vadot compatible = "samsung,s2mpg10-pmic"; 64*ae5de77eSEmmanuel Vadot interrupts-extended = <&gpa0 6 IRQ_TYPE_LEVEL_LOW>; 65*ae5de77eSEmmanuel Vadot 66*ae5de77eSEmmanuel Vadot regulators { 67*ae5de77eSEmmanuel Vadot LDO1 { 68*ae5de77eSEmmanuel Vadot regulator-name = "vdd_ldo1"; 69*ae5de77eSEmmanuel Vadot regulator-min-microvolt = <700000>; 70*ae5de77eSEmmanuel Vadot regulator-max-microvolt = <1300000>; 71*ae5de77eSEmmanuel Vadot regulator-always-on; 72*ae5de77eSEmmanuel Vadot }; 73*ae5de77eSEmmanuel Vadot 74*ae5de77eSEmmanuel Vadot // ... 75*ae5de77eSEmmanuel Vadot 76*ae5de77eSEmmanuel Vadot BUCK1 { 77*ae5de77eSEmmanuel Vadot regulator-name = "vdd_mif"; 78*ae5de77eSEmmanuel Vadot regulator-min-microvolt = <450000>; 79*ae5de77eSEmmanuel Vadot regulator-max-microvolt = <1300000>; 80*ae5de77eSEmmanuel Vadot regulator-always-on; 81*ae5de77eSEmmanuel Vadot regulator-boot-on; 82*ae5de77eSEmmanuel Vadot }; 83*ae5de77eSEmmanuel Vadot }; 84*ae5de77eSEmmanuel Vadot }; 858ccc0d23SEmmanuel Vadot }; 86