1Qualcomm Always-On Subsystem side channel binding 2 3This binding describes the hardware component responsible for side channel 4requests to the always-on subsystem (AOSS), used for certain power management 5requests that is not handled by the standard RPMh interface. Each client in the 6SoC has it's own block of message RAM and IRQ for communication with the AOSS. 7The protocol used to communicate in the message RAM is known as Qualcomm 8Messaging Protocol (QMP) 9 10The AOSS side channel exposes control over a set of resources, used to control 11a set of debug related clocks and to affect the low power state of resources 12related to the secondary subsystems. These resources are exposed as a set of 13power-domains. 14 15- compatible: 16 Usage: required 17 Value type: <string> 18 Definition: must be one of: 19 "qcom,sc7180-aoss-qmp" 20 "qcom,sdm845-aoss-qmp" 21 "qcom,sm8150-aoss-qmp" 22 23- reg: 24 Usage: required 25 Value type: <prop-encoded-array> 26 Definition: the base address and size of the message RAM for this 27 client's communication with the AOSS 28 29- interrupts: 30 Usage: required 31 Value type: <prop-encoded-array> 32 Definition: should specify the AOSS message IRQ for this client 33 34- mboxes: 35 Usage: required 36 Value type: <prop-encoded-array> 37 Definition: reference to the mailbox representing the outgoing doorbell 38 in APCS for this client, as described in mailbox/mailbox.txt 39 40- #clock-cells: 41 Usage: optional 42 Value type: <u32> 43 Definition: must be 0 44 The single clock represents the QDSS clock. 45 46- #power-domain-cells: 47 Usage: optional 48 Value type: <u32> 49 Definition: must be 1 50 The provided power-domains are: 51 CDSP state (0), LPASS state (1), modem state (2), SLPI 52 state (3), SPSS state (4) and Venus state (5). 53 54= SUBNODES 55The AOSS side channel also provides the controls for three cooling devices, 56these are expressed as subnodes of the QMP node. The name of the node is used 57to identify the resource and must therefor be "cx", "mx" or "ebi". 58 59- #cooling-cells: 60 Usage: optional 61 Value type: <u32> 62 Definition: must be 2 63 64= EXAMPLE 65 66The following example represents the AOSS side-channel message RAM and the 67mechanism exposing the power-domains, as found in SDM845. 68 69 aoss_qmp: qmp@c300000 { 70 compatible = "qcom,sdm845-aoss-qmp"; 71 reg = <0x0c300000 0x100000>; 72 interrupts = <GIC_SPI 389 IRQ_TYPE_EDGE_RISING>; 73 mboxes = <&apss_shared 0>; 74 75 #power-domain-cells = <1>; 76 77 cx_cdev: cx { 78 #cooling-cells = <2>; 79 }; 80 81 mx_cdev: mx { 82 #cooling-cells = <2>; 83 }; 84 }; 85