linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/2] poweroff-source DT property renaming
@ 2014-11-06 14:23 Romain Perier
  2014-11-06 14:23 ` [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller" Romain Perier
       [not found] ` <1415283784-10885-1-git-send-email-romain.perier-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 2 replies; 6+ messages in thread
From: Romain Perier @ 2014-11-06 14:23 UTC (permalink / raw)
  To: heiko
  Cc: grant.likely, robh+dt, devicetree, lgirdwood, broonie, johan,
	mark.rutland, linux-pm, linux-kernel, linux-arm-kernel, balbi

The goal of this serie is to rename the property "poweroff-source" to
"system-power-controller". After discussions, it makes more sense to rename back
to the old established property name. This patches serie reverts
commit a4b4e0461ec5 ("of: Add standard property for poweroff capability").

Changes since v2:
  - of_is_system_power_controller is inline in of.h and only supports
    backward compatibility with device drivers which used this helper
    (which is tps65910)
  - Quashed all changes into a single patch (except documentation)
  - Add a separated commit to fix typos and mispellings in documentation

Changes since v1:

  - The first patch defines "of_is_system_power_controller" which is compatible
    with both "vendor,system-power-controller" and "system-power-controller"
    properties. Also, It keeps the old helper function of_system_has_poweroff_source
    for source compatibility until everything is renamed (in this way, bisections
    are not broken and change is made "atomically" between each commit)

    Note: the property "poweroff-source" itself is not used in dts files yet.
    Before this patch tps65910 was broken due to missing backward compatibility
    with "vendor,system-power-controller". As the old helper uses the new one,
    it works again.

  - act8865 and tps65910 are ported to the new helper function

  - The last commit removes the olf helper which was only used for source compatibility

Romain Perier (2):
  of: Rename "poweroff-source" property to "system-power-controller"
  dt-bindings: Update documentation for "system-power-controller" and
    fix misspellings

 .../devicetree/bindings/power/power-controller.txt     | 18 ++++++++++++++++++
 Documentation/devicetree/bindings/power/poweroff.txt   | 18 ------------------
 .../bindings/regulator/act8865-regulator.txt           |  4 ++--
 drivers/mfd/tps65910.c                                 |  2 +-
 drivers/regulator/act8865-regulator.c                  |  2 +-
 include/linux/of.h                                     |  8 +++++---
 6 files changed, 27 insertions(+), 25 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/power/power-controller.txt
 delete mode 100644 Documentation/devicetree/bindings/power/poweroff.txt

-- 
1.9.1

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller"
  2014-11-06 14:23 [PATCH v3 0/2] poweroff-source DT property renaming Romain Perier
@ 2014-11-06 14:23 ` Romain Perier
  2014-11-11 15:01   ` Grant Likely
       [not found] ` <1415283784-10885-1-git-send-email-romain.perier-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  1 sibling, 1 reply; 6+ messages in thread
From: Romain Perier @ 2014-11-06 14:23 UTC (permalink / raw)
  To: heiko
  Cc: grant.likely, robh+dt, devicetree, lgirdwood, broonie, johan,
	mark.rutland, linux-pm, linux-kernel, linux-arm-kernel, balbi

It reverts commit a4b4e0461ec5 ("of: Add standard property for poweroff capability").
As discussed on the mailing list, it makes more sense to rename back to the
old established property name, without the vendor prefix. Problem being that
the word "source" usually tends to be used for inputs and that is out of control
of the OS. The poweroff capability is an output which simply turns the
system-power off. Also, this property might be used by drivers which power-off
the system and power back on subsequent RTC alarms. This seems to suggest to
remove "poweroff" from the property name and to choose "system-power-controller"
as the more generic name. This patchs adds the required renaming changes and
defines an helper function which is compatible with both properties, the old one
which was only used by tps65910 and the new one without vendor-prefix.

Signed-off-by: Romain Perier <romain.perier@gmail.com>
---
 .../bindings/power/{poweroff.txt => power-controller.txt}         | 0
 Documentation/devicetree/bindings/regulator/act8865-regulator.txt | 4 ++--
 drivers/mfd/tps65910.c                                            | 2 +-
 drivers/regulator/act8865-regulator.c                             | 2 +-
 include/linux/of.h                                                | 8 +++++---
 5 files changed, 9 insertions(+), 7 deletions(-)
 rename Documentation/devicetree/bindings/power/{poweroff.txt => power-controller.txt} (100%)

diff --git a/Documentation/devicetree/bindings/power/poweroff.txt b/Documentation/devicetree/bindings/power/power-controller.txt
similarity index 100%
rename from Documentation/devicetree/bindings/power/poweroff.txt
rename to Documentation/devicetree/bindings/power/power-controller.txt
diff --git a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
index 01a5b07..dad6358 100644
--- a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
+++ b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
@@ -6,8 +6,8 @@ Required properties:
 - reg: I2C slave address
 
 Optional properties:
-- poweroff-source: Telling whether or not this pmic is controlling
-  the system power. See Documentation/devicetree/bindings/power/poweroff.txt .
+- system-power-controller: Telling whether or not this pmic is controlling
+  the system power. See Documentation/devicetree/bindings/power/power-controller.txt .
 
 Any standard regulator properties can be used to configure the single regulator.
 
diff --git a/drivers/mfd/tps65910.c b/drivers/mfd/tps65910.c
index b8dca8a..77a7f78 100644
--- a/drivers/mfd/tps65910.c
+++ b/drivers/mfd/tps65910.c
@@ -423,7 +423,7 @@ static struct tps65910_board *tps65910_parse_dt(struct i2c_client *client,
 
 	board_info->irq = client->irq;
 	board_info->irq_base = -1;
-	board_info->pm_off = of_system_has_poweroff_source(np);
+	board_info->pm_off = of_is_system_power_controller(np);
 
 	return board_info;
 }
diff --git a/drivers/regulator/act8865-regulator.c b/drivers/regulator/act8865-regulator.c
index 76301ed..435aba1 100644
--- a/drivers/regulator/act8865-regulator.c
+++ b/drivers/regulator/act8865-regulator.c
@@ -365,7 +365,7 @@ static int act8865_pmic_probe(struct i2c_client *client,
 		return ret;
 	}
 
-	if (of_system_has_poweroff_source(dev->of_node)) {
+	if (of_is_system_power_controller(dev->of_node)) {
 		if (!pm_power_off) {
 			act8865_i2c_client = client;
 			act8865->off_reg = off_reg;
diff --git a/include/linux/of.h b/include/linux/of.h
index 868fdad..f3595ba 100644
--- a/include/linux/of.h
+++ b/include/linux/of.h
@@ -911,14 +911,16 @@ static inline int of_changeset_update_property(struct of_changeset *ocs,
 extern int of_resolve_phandles(struct device_node *tree);
 
 /**
- * of_system_has_poweroff_source - Tells if poweroff-source is found for device_node
+ * of_is_system_power_controller - Tells if system-power-controller is found for device_node
  * @np: Pointer to the given device_node
  *
  * return true if present false otherwise
  */
-static inline bool of_system_has_poweroff_source(const struct device_node *np)
+static inline bool of_is_system_power_controller(const struct device_node *np)
 {
-	return of_property_read_bool(np, "poweroff-source");
+	if (of_property_read_bool(np, "system-power-controller"))
+		return true;
+	return of_property_read_bool(np, "ti,system-power-controller");
 }
 
 #endif /* _LINUX_OF_H */
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 2/2] dt-bindings: Update documentation for "system-power-controller" and fix misspellings
       [not found] ` <1415283784-10885-1-git-send-email-romain.perier-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2014-11-06 14:23   ` Romain Perier
  0 siblings, 0 replies; 6+ messages in thread
From: Romain Perier @ 2014-11-06 14:23 UTC (permalink / raw)
  To: heiko-4mtYJXux2i+zQB+pC5nmwQ
  Cc: grant.likely-QSEj5FYQhm4dnm+yROfE0A,
	robh+dt-DgEjT+Ai2ygdnm+yROfE0A,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	lgirdwood-Re5JQEeQqe8AvxtiuMwx3w, broonie-DgEjT+Ai2ygdnm+yROfE0A,
	johan-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	linux-pm-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	balbi-l0cyMroinI0

Signed-off-by: Romain Perier <romain.perier-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 .../devicetree/bindings/power/power-controller.txt   | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/Documentation/devicetree/bindings/power/power-controller.txt b/Documentation/devicetree/bindings/power/power-controller.txt
index 845868b..9afa847 100644
--- a/Documentation/devicetree/bindings/power/power-controller.txt
+++ b/Documentation/devicetree/bindings/power/power-controller.txt
@@ -1,18 +1,18 @@
-* Generic Poweroff capability
+* Generic system power control capability
 
-Power-management integrated circuits or miscellaneous harware components are
-sometimes able to control the system power. The device driver associated to these
-components might needs to define poweroff capability, which tells to the kernel
-how to switch off the system. The corresponding driver must have the standard
-property "poweroff-source" in its device node. This property marks the device as
-able to shutdown the system. In order to test if this property is found
-programmatically, use the helper function "of_system_has_poweroff_source" from
-of.h .
+Power-management integrated circuits or miscellaneous hardware components are
+sometimes able to control the system power. The device driver associated with these
+components might need to define this capability, which tells the kernel that
+it can be used to switch off the system. The corresponding device must have the
+standard property "system-power-controller" in its device node. This property
+marks the device as able to control the system power. In order to test if this
+property is found programmatically, use the helper function
+"of_is_system_power_controller" from of.h .
 
 Example:
 
 act8846: act8846@5 {
 	 compatible = "active-semi,act8846";
 	 status = "okay";
-	 poweroff-source;
+	 system-power-controller;
 }
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller"
  2014-11-06 14:23 ` [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller" Romain Perier
@ 2014-11-11 15:01   ` Grant Likely
  2014-11-11 19:01     ` Romain Perier
  0 siblings, 1 reply; 6+ messages in thread
From: Grant Likely @ 2014-11-11 15:01 UTC (permalink / raw)
  To: Romain Perier, heiko
  Cc: robh+dt, devicetree, lgirdwood, broonie, johan, mark.rutland,
	linux-pm, linux-kernel, linux-arm-kernel, balbi

On Thu,  6 Nov 2014 14:23:02 +0000
, Romain Perier <romain.perier@gmail.com>
 wrote:
> It reverts commit a4b4e0461ec5 ("of: Add standard property for poweroff capability").
> As discussed on the mailing list, it makes more sense to rename back to the
> old established property name, without the vendor prefix. Problem being that
> the word "source" usually tends to be used for inputs and that is out of control
> of the OS. The poweroff capability is an output which simply turns the
> system-power off. Also, this property might be used by drivers which power-off
> the system and power back on subsequent RTC alarms. This seems to suggest to
> remove "poweroff" from the property name and to choose "system-power-controller"
> as the more generic name. This patchs adds the required renaming changes and
> defines an helper function which is compatible with both properties, the old one
> which was only used by tps65910 and the new one without vendor-prefix.
> 
> Signed-off-by: Romain Perier <romain.perier@gmail.com>
> ---
>  .../bindings/power/{poweroff.txt => power-controller.txt}         | 0
>  Documentation/devicetree/bindings/regulator/act8865-regulator.txt | 4 ++--
>  drivers/mfd/tps65910.c                                            | 2 +-
>  drivers/regulator/act8865-regulator.c                             | 2 +-
>  include/linux/of.h                                                | 8 +++++---
>  5 files changed, 9 insertions(+), 7 deletions(-)
>  rename Documentation/devicetree/bindings/power/{poweroff.txt => power-controller.txt} (100%)
> 
> diff --git a/Documentation/devicetree/bindings/power/poweroff.txt b/Documentation/devicetree/bindings/power/power-controller.txt
> similarity index 100%
> rename from Documentation/devicetree/bindings/power/poweroff.txt
> rename to Documentation/devicetree/bindings/power/power-controller.txt
> diff --git a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
> index 01a5b07..dad6358 100644
> --- a/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
> +++ b/Documentation/devicetree/bindings/regulator/act8865-regulator.txt
> @@ -6,8 +6,8 @@ Required properties:
>  - reg: I2C slave address
>  
>  Optional properties:
> -- poweroff-source: Telling whether or not this pmic is controlling
> -  the system power. See Documentation/devicetree/bindings/power/poweroff.txt .
> +- system-power-controller: Telling whether or not this pmic is controlling
> +  the system power. See Documentation/devicetree/bindings/power/power-controller.txt .
>  
>  Any standard regulator properties can be used to configure the single regulator.
>  
> diff --git a/drivers/mfd/tps65910.c b/drivers/mfd/tps65910.c
> index b8dca8a..77a7f78 100644
> --- a/drivers/mfd/tps65910.c
> +++ b/drivers/mfd/tps65910.c
> @@ -423,7 +423,7 @@ static struct tps65910_board *tps65910_parse_dt(struct i2c_client *client,
>  
>  	board_info->irq = client->irq;
>  	board_info->irq_base = -1;
> -	board_info->pm_off = of_system_has_poweroff_source(np);
> +	board_info->pm_off = of_is_system_power_controller(np);
>  
>  	return board_info;
>  }
> diff --git a/drivers/regulator/act8865-regulator.c b/drivers/regulator/act8865-regulator.c
> index 76301ed..435aba1 100644
> --- a/drivers/regulator/act8865-regulator.c
> +++ b/drivers/regulator/act8865-regulator.c
> @@ -365,7 +365,7 @@ static int act8865_pmic_probe(struct i2c_client *client,
>  		return ret;
>  	}
>  
> -	if (of_system_has_poweroff_source(dev->of_node)) {
> +	if (of_is_system_power_controller(dev->of_node)) {
>  		if (!pm_power_off) {
>  			act8865_i2c_client = client;
>  			act8865->off_reg = off_reg;
> diff --git a/include/linux/of.h b/include/linux/of.h
> index 868fdad..f3595ba 100644
> --- a/include/linux/of.h
> +++ b/include/linux/of.h
> @@ -911,14 +911,16 @@ static inline int of_changeset_update_property(struct of_changeset *ocs,
>  extern int of_resolve_phandles(struct device_node *tree);
>  
>  /**
> - * of_system_has_poweroff_source - Tells if poweroff-source is found for device_node
> + * of_is_system_power_controller - Tells if system-power-controller is found for device_node
>   * @np: Pointer to the given device_node
>   *
>   * return true if present false otherwise
>   */
> -static inline bool of_system_has_poweroff_source(const struct device_node *np)
> +static inline bool of_is_system_power_controller(const struct device_node *np)
>  {
> -	return of_property_read_bool(np, "poweroff-source");
> +	if (of_property_read_bool(np, "system-power-controller"))
> +		return true;
> +	return of_property_read_bool(np, "ti,system-power-controller");

So, to be a little pendantic, the 'ti,' prefix is basically just for
backwards compatibility with the old binding, and that old binding is
only used on palmas.c, tps65*.c and twl4030-power.c, correct?

We don't actually want a ti comparison in the generic code. Normally
what you'd do here is have the fixup in the ti driver code, possibly
with a ti specific helper for those 4 files.

I'm not going to nak this patch and I know you need to get things cleaned
up, but the static inline really should be reduced back to just checking
only for "system-power-controller". The current mainline code does the
right thing anyway, and it is a *tiny* amount of extra code in 4 drivers
file.

g.


>  }
>  
>  #endif /* _LINUX_OF_H */
> -- 
> 1.9.1
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller"
  2014-11-11 15:01   ` Grant Likely
@ 2014-11-11 19:01     ` Romain Perier
  2014-11-12 11:46       ` Grant Likely
  0 siblings, 1 reply; 6+ messages in thread
From: Romain Perier @ 2014-11-11 19:01 UTC (permalink / raw)
  To: Grant Likely
  Cc: Heiko Stübner, Rob Herring, devicetree, Liam Girdwood,
	Mark Brown, Johan Hovold, Mark Rutland, linux-pm,
	Linux Kernel Mailing List, linux-arm-kernel, Felipe Balbi

2014-11-11 16:01 GMT+01:00 Grant Likely <grant.likely@linaro.org>:
> So, to be a little pendantic, the 'ti,' prefix is basically just for
> backwards compatibility with the old binding, and that old binding is
> only used on palmas.c, tps65*.c and twl4030-power.c, correct?

No, the backward compatibility here is only useful for drivers which
used "ti,system-power-controller" in the past and recently switched to
the new property through the standard helper function. As most of the
dts were not updated to use the new property, previous patches broke
compatibility with "ti,system-power-controller" (this compat would be
reverted with this serie). Only one driver has this problem, it is
tps65910.

So, What you propose is that I should handle the old property directly
from tps65910, and keep the standard helper generic right ?

Romain




>
> We don't actually want a ti comparison in the generic code. Normally
> what you'd do here is have the fixup in the ti driver code, possibly
> with a ti specific helper for those 4 files.
>
> I'm not going to nak this patch and I know you need to get things cleaned
> up, but the static inline really should be reduced back to just checking
> only for "system-power-controller". The current mainline code does the
> right thing anyway, and it is a *tiny* amount of extra code in 4 drivers
> file.
>
> g.
>
>
>>  }
>>
>>  #endif /* _LINUX_OF_H */
>> --
>> 1.9.1
>>
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller"
  2014-11-11 19:01     ` Romain Perier
@ 2014-11-12 11:46       ` Grant Likely
  0 siblings, 0 replies; 6+ messages in thread
From: Grant Likely @ 2014-11-12 11:46 UTC (permalink / raw)
  To: Romain Perier
  Cc: Heiko Stübner, Rob Herring, devicetree, Liam Girdwood,
	Mark Brown, Johan Hovold, Mark Rutland, linux-pm,
	Linux Kernel Mailing List, linux-arm-kernel, Felipe Balbi

On Tue, Nov 11, 2014 at 7:01 PM, Romain Perier <romain.perier@gmail.com> wrote:
> 2014-11-11 16:01 GMT+01:00 Grant Likely <grant.likely@linaro.org>:
>> So, to be a little pendantic, the 'ti,' prefix is basically just for
>> backwards compatibility with the old binding, and that old binding is
>> only used on palmas.c, tps65*.c and twl4030-power.c, correct?
>
> No, the backward compatibility here is only useful for drivers which
> used "ti,system-power-controller" in the past and recently switched to
> the new property through the standard helper function. As most of the
> dts were not updated to use the new property, previous patches broke
> compatibility with "ti,system-power-controller" (this compat would be
> reverted with this serie). Only one driver has this problem, it is
> tps65910.
>
> So, What you propose is that I should handle the old property directly
> from tps65910, and keep the standard helper generic right ?

yes as it is a quirk for only that driver.

g.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-11-12 11:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-06 14:23 [PATCH v3 0/2] poweroff-source DT property renaming Romain Perier
2014-11-06 14:23 ` [PATCH v3 1/2] of: Rename "poweroff-source" property to "system-power-controller" Romain Perier
2014-11-11 15:01   ` Grant Likely
2014-11-11 19:01     ` Romain Perier
2014-11-12 11:46       ` Grant Likely
     [not found] ` <1415283784-10885-1-git-send-email-romain.perier-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-11-06 14:23   ` [PATCH v3 2/2] dt-bindings: Update documentation for "system-power-controller" and fix misspellings Romain Perier

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).