[PATCH v4 0/2] Qualcomm Ramp Controller and MSM8976 config

From: AngeloGioacchino Del Regno
Date: Thu Nov 17 2022 - 08:30:10 EST


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