This series adds the Qualcomm Ramp Controller driver, necessary on various legacy Qualcomm SoCs to enable CPU DVFS by programming said controller with the right values, where the bootloader doesn't do that before booting the kernel. At least MSM8976 and MSM8956 require this initial programming to be performed on Linux. Changes in v4 (Dmitry's review): - Moved reg_sequence arrays to named constants - Added num_ramp_{en, dis} to desc structure - Replaced hardcoded constants with ARRAY_SIZE() - Merged cfg_ramp_{pre_en, en, post_en} in one array Changes in v3: - Removed blank line at EOF on commit [1/2] - Changed example node name to cpu-power-controller Changes in v2: - Fixed yaml issues as per Krzysztof's review - Reworded s/linking/link/g in both yaml and Kconfig help - Constified reg_sequence pointers - Removed spaces before defines - Added COMPILE_TEST to Kconfig entry AngeloGioacchino Del Regno (2): dt-bindings: soc: qcom: Add bindings for Qualcomm Ramp Controller soc: qcom: Add Qualcomm Ramp Controller driver .../qcom/qcom,msm8976-ramp-controller.yaml | 36 ++ drivers/soc/qcom/Kconfig | 9 + drivers/soc/qcom/Makefile | 1 + drivers/soc/qcom/ramp_controller.c | 342 ++++++++++++++++++ 4 files changed, 388 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,msm8976-ramp-controller.yaml create mode 100644 drivers/soc/qcom/ramp_controller.c -- 2.38.1