1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2# Copyright 2024 Linaro Ltd. 3%YAML 1.2 4--- 5$id: http://devicetree.org/schemas/firmware/google,gs101-acpm-ipc.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: Samsung Exynos ACPM mailbox protocol 9 10maintainers: 11 - Tudor Ambarus <tudor.ambarus@linaro.org> 12 13description: | 14 ACPM (Alive Clock and Power Manager) is a firmware that operates on the 15 APM (Active Power Management) module that handles overall power management 16 activities. ACPM and masters regard each other as independent hardware 17 component and communicate with each other using mailbox messages and 18 shared memory. 19 20 This binding is intended to define the interface the firmware implementing 21 ACPM provides for OSPM in the device tree. 22 23properties: 24 compatible: 25 const: google,gs101-acpm-ipc 26 27 mboxes: 28 maxItems: 1 29 30 pmic: 31 description: Child node describing the main PMIC. 32 type: object 33 additionalProperties: true 34 35 properties: 36 compatible: 37 const: samsung,s2mpg10-pmic 38 39 shmem: 40 description: 41 List of phandle pointing to the shared memory (SHM) area. The memory 42 contains channels configuration data and the TX/RX ring buffers that 43 are used for passing messages to/from the ACPM firmware. 44 maxItems: 1 45 46required: 47 - compatible 48 - mboxes 49 - shmem 50 51additionalProperties: false 52 53examples: 54 - | 55 #include <dt-bindings/interrupt-controller/irq.h> 56 57 power-management { 58 compatible = "google,gs101-acpm-ipc"; 59 mboxes = <&ap2apm_mailbox>; 60 shmem = <&apm_sram>; 61 62 pmic { 63 compatible = "samsung,s2mpg10-pmic"; 64 interrupts-extended = <&gpa0 6 IRQ_TYPE_LEVEL_LOW>; 65 66 regulators { 67 LDO1 { 68 regulator-name = "vdd_ldo1"; 69 regulator-min-microvolt = <700000>; 70 regulator-max-microvolt = <1300000>; 71 regulator-always-on; 72 }; 73 74 // ... 75 76 BUCK1 { 77 regulator-name = "vdd_mif"; 78 regulator-min-microvolt = <450000>; 79 regulator-max-microvolt = <1300000>; 80 regulator-always-on; 81 regulator-boot-on; 82 }; 83 }; 84 }; 85 }; 86