All of lore.kernel.org
 help / color / mirror / Atom feed
From: Quentin Schulz <quentin.schulz@bootlin.com>
To: Oskari Lemmela <oskari@lemmela.net>
Cc: Sebastian Reichel <sre@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>, Chen-Yu Tsai <wens@csie.org>,
	Maxime Ripard <maxime.ripard@bootlin.com>,
	Lee Jones <lee.jones@linaro.org>,
	Quentin Schulz <quentin.schulz@free-electrons.com>,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v2 6/6] power: supply: add AC power supply driver for AXP813
Date: Mon, 8 Oct 2018 09:44:09 +0200	[thread overview]
Message-ID: <20181008074409.5g73zrfm6nbn6vpp@qschulz> (raw)
In-Reply-To: <20181006211836.28253-7-oskari@lemmela.net>

[-- Attachment #1: Type: text/plain, Size: 2446 bytes --]

Hi Oskari,

On Sun, Oct 07, 2018 at 12:18:36AM +0300, Oskari Lemmela wrote:
> AXP813 and AXP803 PMICs can control input current and
> minimum voltage.
> 
> Both of these values are configurable.
> 
> Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
> ---
>  drivers/power/supply/axp20x_ac_power.c | 92 ++++++++++++++++++++++++++
>  1 file changed, 92 insertions(+)
> 
> diff --git a/drivers/power/supply/axp20x_ac_power.c b/drivers/power/supply/axp20x_ac_power.c
> index 0771f951b11f..92a92354f6f0 100644
> --- a/drivers/power/supply/axp20x_ac_power.c
> +++ b/drivers/power/supply/axp20x_ac_power.c
> @@ -27,6 +27,16 @@
>  #define AXP20X_PWR_STATUS_ACIN_PRESENT	BIT(7)
>  #define AXP20X_PWR_STATUS_ACIN_AVAIL	BIT(6)
>  
> +#define AXP813_VHOLD_MASK		GENMASK(5, 3)
> +#define AXP813_VHOLD_UV_TO_BIT(x)	((((x) / 100000) - 40) << 3)
> +#define AXP813_VHOLD_REG_TO_UV(x)	\
> +	(((((x) & AXP813_VHOLD_MASK) >> 3) + 40) * 100000)
> +
> +#define AXP813_CURR_LIMIT_MASK		GENMASK(2, 0)
> +#define AXP813_CURR_LIMIT_UA_TO_BIT(x)	(((x) / 500000) - 3)
> +#define AXP813_CURR_LIMIT_REG_TO_UA(x)	\
> +	((((x) & AXP813_CURR_LIMIT_MASK) + 3) * 500000)
> +
>  #define DRVNAME "axp20x-ac-power-supply"
>  
>  struct axp20x_ac_power {
> @@ -102,6 +112,55 @@ static int axp20x_ac_power_get_property(struct power_supply *psy,
>  
>  		return 0;
>  
> +	case POWER_SUPPLY_PROP_VOLTAGE_MIN:
> +		ret = regmap_read(power->regmap, AXP813_ACIN_PATH_CTRL, &reg);
> +		if (ret)
> +			return ret;
> +
> +		val->intval = AXP813_VHOLD_REG_TO_UV(reg);
> +
> +		return 0;
> +
> +	case POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT:
> +		ret = regmap_read(power->regmap, AXP813_ACIN_PATH_CTRL, &reg);
> +		if (ret)
> +			return ret;
> +
> +		val->intval = AXP813_CURR_LIMIT_REG_TO_UA(reg);
> +
> +		return 0;
> +
> +	default:
> +		return -EINVAL;
> +	}
> +
> +	return -EINVAL;
> +}
> +
> +static int axp20x_ac_power_set_property(struct power_supply *psy,
> +					enum power_supply_property psp,
> +					const union power_supply_propval *val)
> +{

Argh, missed this one in the first version. Since you're introducing it
with the AXP813 and it isn't used with the AXP20X, I'd name it
axp813_ac_power_set_property. I'll let Maxime or Chen-Yu confirm though.

With the modification in the header from the previous patch in this
patch,

Reviewed-by: Quentin Schulz <quentin.schulz@bootlin.com>

Thanks!
Quentin

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: quentin.schulz@bootlin.com (Quentin Schulz)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 6/6] power: supply: add AC power supply driver for AXP813
Date: Mon, 8 Oct 2018 09:44:09 +0200	[thread overview]
Message-ID: <20181008074409.5g73zrfm6nbn6vpp@qschulz> (raw)
In-Reply-To: <20181006211836.28253-7-oskari@lemmela.net>

Hi Oskari,

On Sun, Oct 07, 2018 at 12:18:36AM +0300, Oskari Lemmela wrote:
> AXP813 and AXP803 PMICs can control input current and
> minimum voltage.
> 
> Both of these values are configurable.
> 
> Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
> ---
>  drivers/power/supply/axp20x_ac_power.c | 92 ++++++++++++++++++++++++++
>  1 file changed, 92 insertions(+)
> 
> diff --git a/drivers/power/supply/axp20x_ac_power.c b/drivers/power/supply/axp20x_ac_power.c
> index 0771f951b11f..92a92354f6f0 100644
> --- a/drivers/power/supply/axp20x_ac_power.c
> +++ b/drivers/power/supply/axp20x_ac_power.c
> @@ -27,6 +27,16 @@
>  #define AXP20X_PWR_STATUS_ACIN_PRESENT	BIT(7)
>  #define AXP20X_PWR_STATUS_ACIN_AVAIL	BIT(6)
>  
> +#define AXP813_VHOLD_MASK		GENMASK(5, 3)
> +#define AXP813_VHOLD_UV_TO_BIT(x)	((((x) / 100000) - 40) << 3)
> +#define AXP813_VHOLD_REG_TO_UV(x)	\
> +	(((((x) & AXP813_VHOLD_MASK) >> 3) + 40) * 100000)
> +
> +#define AXP813_CURR_LIMIT_MASK		GENMASK(2, 0)
> +#define AXP813_CURR_LIMIT_UA_TO_BIT(x)	(((x) / 500000) - 3)
> +#define AXP813_CURR_LIMIT_REG_TO_UA(x)	\
> +	((((x) & AXP813_CURR_LIMIT_MASK) + 3) * 500000)
> +
>  #define DRVNAME "axp20x-ac-power-supply"
>  
>  struct axp20x_ac_power {
> @@ -102,6 +112,55 @@ static int axp20x_ac_power_get_property(struct power_supply *psy,
>  
>  		return 0;
>  
> +	case POWER_SUPPLY_PROP_VOLTAGE_MIN:
> +		ret = regmap_read(power->regmap, AXP813_ACIN_PATH_CTRL, &reg);
> +		if (ret)
> +			return ret;
> +
> +		val->intval = AXP813_VHOLD_REG_TO_UV(reg);
> +
> +		return 0;
> +
> +	case POWER_SUPPLY_PROP_INPUT_CURRENT_LIMIT:
> +		ret = regmap_read(power->regmap, AXP813_ACIN_PATH_CTRL, &reg);
> +		if (ret)
> +			return ret;
> +
> +		val->intval = AXP813_CURR_LIMIT_REG_TO_UA(reg);
> +
> +		return 0;
> +
> +	default:
> +		return -EINVAL;
> +	}
> +
> +	return -EINVAL;
> +}
> +
> +static int axp20x_ac_power_set_property(struct power_supply *psy,
> +					enum power_supply_property psp,
> +					const union power_supply_propval *val)
> +{

Argh, missed this one in the first version. Since you're introducing it
with the AXP813 and it isn't used with the AXP20X, I'd name it
axp813_ac_power_set_property. I'll let Maxime or Chen-Yu confirm though.

With the modification in the header from the previous patch in this
patch,

Reviewed-by: Quentin Schulz <quentin.schulz@bootlin.com>

Thanks!
Quentin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20181008/7bf32116/attachment.sig>

  reply	other threads:[~2018-10-08  7:44 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-04 19:34 [PATCH 0/4] AXP8x3 AC and battery power supply support Oskari Lemmela
2018-10-04 19:34 ` Oskari Lemmela
2018-10-04 19:34 ` Oskari Lemmela
2018-10-04 19:34 ` [PATCH 1/4] dt-bindings: add compatibles for AXP803 AC and battery power supplies Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-08 20:19   ` Jonathan Cameron
2018-10-08 20:19     ` Jonathan Cameron
2018-10-04 19:34 ` [PATCH 2/4] ARM: dtsi: axp81x: add AC power supply subnode Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34 ` [PATCH 3/4] arm64: allwinner: a64: add battery and AC power supply support Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34 ` [PATCH 4/4] power: supply: add AXP803/AXP813 AC and battery " Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-04 19:34   ` Oskari Lemmela
2018-10-05  8:29   ` Quentin Schulz
2018-10-05  8:29     ` Quentin Schulz
2018-10-05 18:28     ` Oskari Lemmelä
2018-10-05 18:28       ` Oskari Lemmelä
2018-10-05  3:37 ` [PATCH 0/4] AXP8x3 " Chen-Yu Tsai
2018-10-05  3:37   ` Chen-Yu Tsai
2018-10-05  3:37   ` Chen-Yu Tsai
2018-10-06 21:18 ` [PATCH v2 0/6] " Oskari Lemmela
2018-10-06 21:18   ` Oskari Lemmela
2018-10-06 21:18   ` [PATCH v2 1/6] dt-bindings: power: supply: axp20x: add AXP813 AC power DT binding Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-06 21:18   ` [PATCH v2 2/6] ARM: dts: axp81x: add AC power supply subnode Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-08  7:27     ` Quentin Schulz
2018-10-08  7:27       ` Quentin Schulz
2018-10-06 21:18   ` [PATCH v2 3/6] arm64: dts: allwinner: axp803: add AC and battery power supplies Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-08  7:28     ` Quentin Schulz
2018-10-08  7:28       ` Quentin Schulz
2018-10-06 21:18   ` [PATCH v2 4/6] arm64: dts: allwinner: a64: sopine: enable " Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-06 21:18   ` [PATCH v2 5/6] mfd: axp20x: add support AXP803 AC and battery " Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-08  7:33     ` Quentin Schulz
2018-10-08  7:33       ` Quentin Schulz
2018-10-06 21:18   ` [PATCH v2 6/6] power: supply: add AC power supply driver for AXP813 Oskari Lemmela
2018-10-06 21:18     ` Oskari Lemmela
2018-10-08  7:44     ` Quentin Schulz [this message]
2018-10-08  7:44       ` Quentin Schulz
2018-10-08  7:11   ` [PATCH v2 0/6] AXP8x3 AC and battery power supply support Quentin Schulz
2018-10-08  7:11     ` Quentin Schulz

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=20181008074409.5g73zrfm6nbn6vpp@qschulz \
    --to=quentin.schulz@bootlin.com \
    --cc=devicetree@vger.kernel.org \
    --cc=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=maxime.ripard@bootlin.com \
    --cc=oskari@lemmela.net \
    --cc=quentin.schulz@free-electrons.com \
    --cc=robh+dt@kernel.org \
    --cc=sre@kernel.org \
    --cc=wens@csie.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.