1c66ec88fSEmmanuel VadotSPM AVS Wrapper 2 (SAW2) 2c66ec88fSEmmanuel Vadot 3c66ec88fSEmmanuel VadotThe SAW2 is a wrapper around the Subsystem Power Manager (SPM) and the 4c66ec88fSEmmanuel VadotAdaptive Voltage Scaling (AVS) hardware. The SPM is a programmable 5c66ec88fSEmmanuel Vadotpower-controller that transitions a piece of hardware (like a processor or 6c66ec88fSEmmanuel Vadotsubsystem) into and out of low power modes via a direct connection to 7c66ec88fSEmmanuel Vadotthe PMIC. It can also be wired up to interact with other processors in the 8c66ec88fSEmmanuel Vadotsystem, notifying them when a low power state is entered or exited. 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel VadotMultiple revisions of the SAW hardware are supported using these Device Nodes. 11c66ec88fSEmmanuel VadotSAW2 revisions differ in the register offset and configuration data. Also, the 12c66ec88fSEmmanuel Vadotsame revision of the SAW in different SoCs may have different configuration 13*b97ee269SEmmanuel Vadotdata due the differences in hardware capabilities. Hence the SoC name, the 14c66ec88fSEmmanuel Vadotversion of the SAW hardware in that SoC and the distinction between cpu (big 15c66ec88fSEmmanuel Vadotor Little) or cache, may be needed to uniquely identify the SAW register 16c66ec88fSEmmanuel Vadotconfiguration and initialization data. The compatible string is used to 17c66ec88fSEmmanuel Vadotindicate this parameter. 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel VadotPROPERTIES 20c66ec88fSEmmanuel Vadot 21c66ec88fSEmmanuel Vadot- compatible: 22c66ec88fSEmmanuel Vadot Usage: required 23c66ec88fSEmmanuel Vadot Value type: <string> 24c66ec88fSEmmanuel Vadot Definition: Must have 25c66ec88fSEmmanuel Vadot "qcom,saw2" 26c66ec88fSEmmanuel Vadot A more specific value could be one of: 27c66ec88fSEmmanuel Vadot "qcom,apq8064-saw2-v1.1-cpu" 285956d97fSEmmanuel Vadot "qcom,msm8226-saw2-v2.1-cpu" 29c66ec88fSEmmanuel Vadot "qcom,msm8974-saw2-v2.1-cpu" 30c66ec88fSEmmanuel Vadot "qcom,apq8084-saw2-v2.1-cpu" 31c66ec88fSEmmanuel Vadot 32c66ec88fSEmmanuel Vadot- reg: 33c66ec88fSEmmanuel Vadot Usage: required 34c66ec88fSEmmanuel Vadot Value type: <prop-encoded-array> 35c66ec88fSEmmanuel Vadot Definition: the first element specifies the base address and size of 36c66ec88fSEmmanuel Vadot the register region. An optional second element specifies 37c66ec88fSEmmanuel Vadot the base address and size of the alias register region. 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot- regulator: 40c66ec88fSEmmanuel Vadot Usage: optional 41c66ec88fSEmmanuel Vadot Value type: boolean 42c66ec88fSEmmanuel Vadot Definition: Indicates that this SPM device acts as a regulator device 43c66ec88fSEmmanuel Vadot device for the core (CPU or Cache) the SPM is attached 44c66ec88fSEmmanuel Vadot to. 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel VadotExample 1: 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot power-controller@2099000 { 49c66ec88fSEmmanuel Vadot compatible = "qcom,saw2"; 50c66ec88fSEmmanuel Vadot reg = <0x02099000 0x1000>, <0x02009000 0x1000>; 51c66ec88fSEmmanuel Vadot regulator; 52c66ec88fSEmmanuel Vadot }; 53c66ec88fSEmmanuel Vadot 54c66ec88fSEmmanuel VadotExample 2: 55c66ec88fSEmmanuel Vadot saw0: power-controller@f9089000 { 56c66ec88fSEmmanuel Vadot compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2"; 57c66ec88fSEmmanuel Vadot reg = <0xf9089000 0x1000>, <0xf9009000 0x1000>; 58c66ec88fSEmmanuel Vadot }; 59