devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
To: Mark Brown <broonie@kernel.org>
Cc: Kukjin Kim <kgene.kim@samsung.com>,
	Chanwoo Choi <cw00.choi@samsung.com>,
	Olof Johansson <olof@lixom.net>, Chris Zhong <zyw@rock-chips.com>,
	Krzysztof Kozlowski <k.kozlowski@samsung.com>,
	Abhilash Kesavan <kesavan.abhilash@gmail.com>,
	linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org,
	Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Subject: [PATCH v4 13/14] regulator: max77802: Set regulator modes translation callback
Date: Mon,  3 Nov 2014 15:40:48 +0100	[thread overview]
Message-ID: <1415025649-8119-14-git-send-email-javier.martinez@collabora.co.uk> (raw)
In-Reply-To: <1415025649-8119-1-git-send-email-javier.martinez@collabora.co.uk>

The max77802 PMIC regulators output can be configured in one of two
modes: Output ON (normal) and Output ON in Low Power Mode. Some of
the regulators support their operating mode to be changed on startup
or by consumers when the system is running while others only support
their operating mode to be changed while the system has entered in a
suspend state.

Use the max77802_map_mode() function to translate the device specific
modes to the standard operating modes as used by the regulator core.

Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
---
 drivers/regulator/max77802.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/regulator/max77802.c b/drivers/regulator/max77802.c
index 1d1f7b4..09276c2 100644
--- a/drivers/regulator/max77802.c
+++ b/drivers/regulator/max77802.c
@@ -375,6 +375,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.vsel_mask	= MAX77802_VSEL_MASK,				\
 	.enable_reg	= MAX77802_REG_LDO1CTRL1 + num - 1,		\
 	.enable_mask	= MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \
+	.map_modes	= max77802_map_mode,				\
 }
 
 /* LDOs 1, 2, 8, 15, 17, 27, 30, 35 */
@@ -393,6 +394,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.vsel_mask	= MAX77802_VSEL_MASK,				\
 	.enable_reg	= MAX77802_REG_LDO1CTRL1 + num - 1,		\
 	.enable_mask	= MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \
+	.map_modes	= max77802_map_mode,				\
 }
 
 /* BUCKs 1, 6 */
@@ -411,6 +413,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.vsel_mask	= MAX77802_DVS_VSEL_MASK,			\
 	.enable_reg	= MAX77802_REG_BUCK ## num ## CTRL,		\
 	.enable_mask	= MAX77802_OPMODE_MASK,				\
+	.map_modes	= max77802_map_mode,				\
 }
 
 /* BUCKS 2-4 */
@@ -430,6 +433,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.enable_reg	= MAX77802_REG_BUCK ## num ## CTRL1,		\
 	.enable_mask	= MAX77802_OPMODE_MASK <<			\
 				MAX77802_OPMODE_BUCK234_SHIFT,		\
+	.map_modes	= max77802_map_mode,				\
 }
 
 /* BUCK 5 */
@@ -448,6 +452,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.vsel_mask	= MAX77802_VSEL_MASK,				\
 	.enable_reg	= MAX77802_REG_BUCK5CTRL,			\
 	.enable_mask	= MAX77802_OPMODE_MASK,				\
+	.map_modes	= max77802_map_mode,				\
 }
 
 /* BUCKs 7-10 */
@@ -466,6 +471,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
 	.vsel_mask	= MAX77802_VSEL_MASK,				\
 	.enable_reg	= MAX77802_REG_BUCK7CTRL + (num - 7) * 3,	\
 	.enable_mask	= MAX77802_OPMODE_MASK,				\
+	.map_modes	= max77802_map_mode,				\
 }
 
 static const struct regulator_desc regulators[] = {
@@ -540,6 +546,7 @@ static int max77802_pmic_dt_parse_pdata(struct platform_device *pdev,
 
 	for (i = 0; i < pdata->num_regulators; i++) {
 		rmatch.name = regulators[i].name;
+		rmatch.desc = &regulators[i];
 		rmatch.init_data = NULL;
 		rmatch.of_node = NULL;
 		if (of_regulator_match(&pdev->dev, regulators_np, &rmatch,
-- 
2.1.0

  parent reply	other threads:[~2014-11-03 14:40 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-03 14:40 [PATCH v4 00/14] Add max77802 regulator operating mode support Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 01/14] regulator: Document binding for initial and suspend modes Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 02/14] regulator: Add function to map modes to struct regulator_desc Javier Martinez Canillas
2014-11-04 10:31   ` Krzysztof Kozlowski
2014-11-04 11:02     ` Javier Martinez Canillas
2014-11-04 11:09       ` Krzysztof Kozlowski
2014-11-03 14:40 ` [PATCH v4 03/14] regulator: of: Add regulator desc param to of_get_regulator_init_data() Javier Martinez Canillas
2014-11-03 15:33   ` Mark Brown
2014-11-03 15:48     ` Javier Martinez Canillas
2014-11-03 15:59       ` Mark Brown
2014-11-03 16:11         ` Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 04/14] regulator: of: Pass the regulator description in the match table Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 06/14] regulator: max77686: zero-initialize regulator " Javier Martinez Canillas
2014-11-03 15:55   ` Mark Brown
2014-11-03 14:40 ` [PATCH v4 07/14] regulator: max77802: " Javier Martinez Canillas
2014-11-03 15:55   ` Mark Brown
     [not found] ` <1415025649-8119-1-git-send-email-javier.martinez-ZGY8ohtN/8pPYcu2f3hruQ@public.gmane.org>
2014-11-03 14:40   ` [PATCH v4 05/14] regulator: max1586: zero-initialize regulator match table array Javier Martinez Canillas
2014-11-03 15:41     ` Mark Brown
2014-11-03 15:51       ` Javier Martinez Canillas
2014-11-03 14:40   ` [PATCH v4 08/14] regulator: max8660: " Javier Martinez Canillas
2014-11-03 15:56     ` Mark Brown
2014-11-04 10:44   ` [PATCH v4 00/14] Add max77802 regulator operating mode support Krzysztof Kozlowski
2014-11-04 10:51     ` Javier Martinez Canillas
2014-11-04 11:04       ` Krzysztof Kozlowski
2014-11-03 14:40 ` [PATCH v4 09/14] regulator: s2mpa01: zero-initialize regulator match table array Javier Martinez Canillas
2014-11-03 15:56   ` Mark Brown
2014-11-03 14:40 ` [PATCH v4 10/14] regulator: of: Add support for parsing initial and suspend modes Javier Martinez Canillas
     [not found]   ` <1415025649-8119-11-git-send-email-javier.martinez-ZGY8ohtN/8pPYcu2f3hruQ@public.gmane.org>
2014-11-04 10:41     ` Krzysztof Kozlowski
2014-11-04 11:07       ` Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 11/14] regulator: max77802: Document binding for regulator operating modes Javier Martinez Canillas
2014-11-04 10:50   ` Krzysztof Kozlowski
2014-11-04 11:10     ` Javier Martinez Canillas
2014-11-03 14:40 ` [PATCH v4 12/14] regulator: max77802: Use unsigned int for modes in max77802_map_mode() Javier Martinez Canillas
2014-11-03 16:08   ` Mark Brown
2014-11-03 14:40 ` Javier Martinez Canillas [this message]
2014-11-03 14:40 ` [PATCH v4 14/14] ARM: dts: Configure regulators for suspend on exynos Peach boards Javier Martinez Canillas
2014-11-03 15:54 ` [PATCH v4 00/14] Add max77802 regulator operating mode support Mark Brown
2014-11-03 16:07   ` Mark Brown
2014-11-03 16:08   ` Javier Martinez Canillas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1415025649-8119-14-git-send-email-javier.martinez@collabora.co.uk \
    --to=javier.martinez@collabora.co.uk \
    --cc=broonie@kernel.org \
    --cc=cw00.choi@samsung.com \
    --cc=devicetree@vger.kernel.org \
    --cc=k.kozlowski@samsung.com \
    --cc=kesavan.abhilash@gmail.com \
    --cc=kgene.kim@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=olof@lixom.net \
    --cc=zyw@rock-chips.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).