[PATCH v2 0/5] Refactor Qualcomm RPM regulator to single platform_device

From: Bjorn Andersson
Date: Wed Apr 01 2015 - 18:55:58 EST


Stephen Boyd pointed out that the current design of the Qualcomm RPM and
regulator driver consumes 12-20kB of ram just for the platform_device structs.

This series starts with a new revision of the dt binding documentation for the
rpm regulators, introduces the regulator-allow-drms property, remove the
flagging of DRMS support from the qcom-rpm regulator driver, refactor the
qcom_rpm-regulator driver to move all custom parse code to a function suitable
for usage as of_parse_cb. The final patch defines the tables of registers and
change the probe function to register the appropriate regulators based on pmic.

As Stephen pointed out in his PATCH/RFC/argument [1], this gives a more
accurate representation of input supplies, as they are now named as in the
specification.

Note that for platforms with multiple pmics (e.g. 8660 and 8974) will have
multiple regulator subnodes to the rpm node - something that will be clearer
with this binding than the previously suggested.

[1] https://lkml.org/lkml/2015/2/26/713

Changes since v1:
- Reworked DRMS handling to not have the driver specify the support

Bjorn Andersson (5):
mfd: devicetree: bindings: Add Qualcomm RPM regulator subnodes
regulator: Introduce property to flag drms
regulator: qcom: Don't enable DRMS in driver
regulator: qcom: Refactor of-parsing code
regulator: qcom: Rework to single platform device

Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 217 +++++++++++++++-
.../devicetree/bindings/regulator/regulator.txt | 1 +
drivers/regulator/of_regulator.c | 3 +
drivers/regulator/qcom_rpm-regulator.c | 289 ++++++++++++++-------
4 files changed, 401 insertions(+), 109 deletions(-)

--
1.8.2.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/