linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH v3 0/6] Report wakeup events in cros_ec_keyb and make cros-ec-spi wakeup optional
@ 2017-06-21 10:01 Jeffy Chen
       [not found] ` <1498039313-24220-1-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
  2017-06-21 10:01 ` [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property Jeffy Chen
  0 siblings, 2 replies; 8+ messages in thread
From: Jeffy Chen @ 2017-06-21 10:01 UTC (permalink / raw)
  To: linux-kernel-u79uwXL29TY76Z2rM5mHXA
  Cc: briannorris-F7+t8E8rja9g9hUCZPvPmw,
	dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w,
	dianders-F7+t8E8rja9g9hUCZPvPmw, Jeffy Chen, Guenter Roeck,
	Arnd Bergmann, Vic Yang, Rob Herring, Catalin Marinas,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA, Heiko Stuebner,
	linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	Krzysztof Kozlowski, linux-input-u79uwXL29TY76Z2rM5mHXA,
	Will Deacon, devicetree-u79uwXL29TY76Z2rM5mHXA, Kukjin Kim,
	Thierry Reding, Jonathan Hunter, Lee Jones,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA, Russell King,
	linux-arm-kerne


We are enabling wakeup unconditionally for cros-ec-spi, it would be good to make it optional.

And we also need to enable wakeup for cros_ec_keyb, so the userspace could disable keyboard wakeup along with other cros-ec sub devices.


Changes in v3:
Use wakeup-source property to enable wakeup.
  Suggested by Dmitry Torokhov <dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>.

Jeffy Chen (6):
  spi: core: add support for wakeup-source dts property
  dt-bindings: spi/core: add wakeup-source optional property
  ARM/arm64: dts: enable wakeup for cros-ec-spi devices
  mfd: cros ec: spi: remove unconditionally wakeup enable
  input: cros_ec_keyb: report wakeup events
  ARM: dts: cros-ec-keyboard: enable as wakeup source

 Documentation/devicetree/bindings/spi/spi-bus.txt |  1 +
 arch/arm/boot/dts/cros-ec-keyboard.dtsi           |  1 +
 arch/arm/boot/dts/exynos5420-peach-pit.dts        |  1 +
 arch/arm/boot/dts/exynos5800-peach-pi.dts         |  1 +
 arch/arm/boot/dts/rk3288-veyron-chromebook.dtsi   |  1 +
 arch/arm/boot/dts/tegra124-nyan.dtsi              |  1 +
 arch/arm/boot/dts/tegra124-venice2.dts            |  1 +
 arch/arm64/boot/dts/nvidia/tegra132-norrin.dts    |  1 +
 arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi      |  1 +
 drivers/input/keyboard/cros_ec_keyb.c             |  8 ++++++++
 drivers/mfd/cros_ec_spi.c                         |  2 --
 drivers/spi/spi.c                                 | 15 +++++++++++----
 12 files changed, 28 insertions(+), 6 deletions(-)

-- 
2.1.4

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

* [RFC PATCH v3 1/6] spi: core: add support for wakeup-source dts property
       [not found] ` <1498039313-24220-1-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
@ 2017-06-21 10:01   ` Jeffy Chen
  2017-06-21 10:52     ` Mark Brown
  0 siblings, 1 reply; 8+ messages in thread
From: Jeffy Chen @ 2017-06-21 10:01 UTC (permalink / raw)
  To: linux-kernel-u79uwXL29TY76Z2rM5mHXA
  Cc: briannorris-F7+t8E8rja9g9hUCZPvPmw,
	dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w,
	dianders-F7+t8E8rja9g9hUCZPvPmw, Jeffy Chen, Mark Brown,
	linux-spi-u79uwXL29TY76Z2rM5mHXA

Use generic wakeup-source property to enable spi device wakeup.

Signed-off-by: Jeffy Chen <jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
---

Changes in v3: None

 drivers/spi/spi.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
index c3f6b52..a510bba 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -547,11 +547,16 @@ int spi_add_device(struct spi_device *spi)
 
 	/* Device may be bound to an active driver when this returns */
 	status = device_add(&spi->dev);
-	if (status < 0)
+	if (status < 0) {
 		dev_err(dev, "can't add %s, status %d\n",
-				dev_name(&spi->dev), status);
-	else
-		dev_dbg(dev, "registered child %s\n", dev_name(&spi->dev));
+			dev_name(&spi->dev), status);
+		goto done;
+	}
+
+	dev_dbg(dev, "registered child %s\n", dev_name(&spi->dev));
+
+	if (device_property_read_bool(&spi->dev, "wakeup-source"))
+		device_init_wakeup(&spi->dev, true);
 
 done:
 	mutex_unlock(&spi_add_lock);
@@ -638,6 +643,8 @@ void spi_unregister_device(struct spi_device *spi)
 	if (!spi)
 		return;
 
+	device_init_wakeup(&spi->dev, false);
+
 	if (spi->dev.of_node) {
 		of_node_clear_flag(spi->dev.of_node, OF_POPULATED);
 		of_node_put(spi->dev.of_node);
-- 
2.1.4


--
To unsubscribe from this list: send the line "unsubscribe linux-spi" 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] 8+ messages in thread

* [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property
  2017-06-21 10:01 [RFC PATCH v3 0/6] Report wakeup events in cros_ec_keyb and make cros-ec-spi wakeup optional Jeffy Chen
       [not found] ` <1498039313-24220-1-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
@ 2017-06-21 10:01 ` Jeffy Chen
       [not found]   ` <1498039313-24220-3-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
  1 sibling, 1 reply; 8+ messages in thread
From: Jeffy Chen @ 2017-06-21 10:01 UTC (permalink / raw)
  To: linux-kernel
  Cc: briannorris, dmitry.torokhov, dianders, Jeffy Chen, devicetree,
	Mark Brown, linux-spi, Rob Herring, Mark Rutland

Update document devicetree bindings to support "wakeup-source" property.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
---

Changes in v3: None

 Documentation/devicetree/bindings/spi/spi-bus.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
index 1f6e86f..0fa1ccf 100644
--- a/Documentation/devicetree/bindings/spi/spi-bus.txt
+++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
@@ -77,6 +77,7 @@ All slave nodes can contain the following optional properties:
 		    Defaults to 1 if not present.
 - spi-rx-delay-us - Microsecond delay after a read transfer.
 - spi-tx-delay-us - Microsecond delay after a write transfer.
+- wakeup-source   - Device can be used as a wakeup source.
 
 Some SPI controllers and devices support Dual and Quad SPI transfer mode.
 It allows data in the SPI system to be transferred using 2 wires (DUAL) or 4
-- 
2.1.4

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

* Re: [RFC PATCH v3 1/6] spi: core: add support for wakeup-source dts property
  2017-06-21 10:01   ` [RFC PATCH v3 1/6] spi: core: add support for wakeup-source dts property Jeffy Chen
@ 2017-06-21 10:52     ` Mark Brown
  0 siblings, 0 replies; 8+ messages in thread
From: Mark Brown @ 2017-06-21 10:52 UTC (permalink / raw)
  To: Jeffy Chen
  Cc: linux-kernel, briannorris, dmitry.torokhov, dianders, linux-spi

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

On Wed, Jun 21, 2017 at 06:01:48PM +0800, Jeffy Chen wrote:
> Use generic wakeup-source property to enable spi device wakeup.

If this is a generic property shouldn't it be in the driver core rather
than individual subsystems?

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

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

* Re: [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property
       [not found]   ` <1498039313-24220-3-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
@ 2017-06-26 16:00     ` Rob Herring
  2017-06-26 16:40       ` Dmitry Torokhov
  0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring @ 2017-06-26 16:00 UTC (permalink / raw)
  To: Jeffy Chen
  Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	briannorris-F7+t8E8rja9g9hUCZPvPmw,
	dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w,
	dianders-F7+t8E8rja9g9hUCZPvPmw,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Brown,
	linux-spi-u79uwXL29TY76Z2rM5mHXA, Mark Rutland

On Wed, Jun 21, 2017 at 06:01:49PM +0800, Jeffy Chen wrote:
> Update document devicetree bindings to support "wakeup-source" property.
> 
> Signed-off-by: Jeffy Chen <jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
> ---
> 
> Changes in v3: None
> 
>  Documentation/devicetree/bindings/spi/spi-bus.txt | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
> index 1f6e86f..0fa1ccf 100644
> --- a/Documentation/devicetree/bindings/spi/spi-bus.txt
> +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
> @@ -77,6 +77,7 @@ All slave nodes can contain the following optional properties:
>  		    Defaults to 1 if not present.
>  - spi-rx-delay-us - Microsecond delay after a read transfer.
>  - spi-tx-delay-us - Microsecond delay after a write transfer.
> +- wakeup-source   - Device can be used as a wakeup source.

wakeup-source is valid for any device with an interrupts property 
already, so I don't think this is necessary.

Rob
--
To unsubscribe from this list: send the line "unsubscribe linux-spi" 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	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property
  2017-06-26 16:00     ` Rob Herring
@ 2017-06-26 16:40       ` Dmitry Torokhov
  2017-06-27  2:04         ` jeffy
  0 siblings, 1 reply; 8+ messages in thread
From: Dmitry Torokhov @ 2017-06-26 16:40 UTC (permalink / raw)
  To: Rob Herring
  Cc: Jeffy Chen, linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	briannorris-F7+t8E8rja9g9hUCZPvPmw,
	dianders-F7+t8E8rja9g9hUCZPvPmw,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Brown,
	linux-spi-u79uwXL29TY76Z2rM5mHXA, Mark Rutland

On Mon, Jun 26, 2017 at 11:00:11AM -0500, Rob Herring wrote:
> On Wed, Jun 21, 2017 at 06:01:49PM +0800, Jeffy Chen wrote:
> > Update document devicetree bindings to support "wakeup-source" property.
> > 
> > Signed-off-by: Jeffy Chen <jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
> > ---
> > 
> > Changes in v3: None
> > 
> >  Documentation/devicetree/bindings/spi/spi-bus.txt | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
> > index 1f6e86f..0fa1ccf 100644
> > --- a/Documentation/devicetree/bindings/spi/spi-bus.txt
> > +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
> > @@ -77,6 +77,7 @@ All slave nodes can contain the following optional properties:
> >  		    Defaults to 1 if not present.
> >  - spi-rx-delay-us - Microsecond delay after a read transfer.
> >  - spi-tx-delay-us - Microsecond delay after a write transfer.
> > +- wakeup-source   - Device can be used as a wakeup source.
> 
> wakeup-source is valid for any device with an interrupts property 
> already, so I don't think this is necessary.

Do you mean it is not necessary on SPI level or not necessary at all? Or
you disagree with wording? Because we do need a way to say that on given
platform the device is supposed to be configured as a wakeup source.

Thanks.

-- 
Dmitry
--
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	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property
  2017-06-26 16:40       ` Dmitry Torokhov
@ 2017-06-27  2:04         ` jeffy
  2017-06-30 14:44           ` Rob Herring
  0 siblings, 1 reply; 8+ messages in thread
From: jeffy @ 2017-06-27  2:04 UTC (permalink / raw)
  To: Dmitry Torokhov, Rob Herring
  Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	briannorris-F7+t8E8rja9g9hUCZPvPmw,
	dianders-F7+t8E8rja9g9hUCZPvPmw,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Mark Brown,
	linux-spi-u79uwXL29TY76Z2rM5mHXA, Mark Rutland

Hi Rob,

On 06/27/2017 12:40 AM, Dmitry Torokhov wrote:
> On Mon, Jun 26, 2017 at 11:00:11AM -0500, Rob Herring wrote:
>> On Wed, Jun 21, 2017 at 06:01:49PM +0800, Jeffy Chen wrote:
>>> Update document devicetree bindings to support "wakeup-source" property.
>>>
>>> Signed-off-by: Jeffy Chen <jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
>>> ---
>>>
>>> Changes in v3: None
>>>
>>>   Documentation/devicetree/bindings/spi/spi-bus.txt | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
>>> index 1f6e86f..0fa1ccf 100644
>>> --- a/Documentation/devicetree/bindings/spi/spi-bus.txt
>>> +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
>>> @@ -77,6 +77,7 @@ All slave nodes can contain the following optional properties:
>>>   		    Defaults to 1 if not present.
>>>   - spi-rx-delay-us - Microsecond delay after a read transfer.
>>>   - spi-tx-delay-us - Microsecond delay after a write transfer.
>>> +- wakeup-source   - Device can be used as a wakeup source.
>>
>> wakeup-source is valid for any device with an interrupts property
>> already, so I don't think this is necessary.
i saw http://lkml.iu.edu/hypermail/linux/kernel/1510.2/04553.html add a 
Documentation/devicetree/bindings/power/wakeup-source.txt for this, but 
that serial didn't remove all wakeup-source property from other 
bindings, but standardize them, for example:
71a0151 Documentation: devicetree: fix reference to legacy wakeup properties

+++ b/Documentation/devicetree/bindings/input/gpio-keys.txt
@@ -24,6 +24,7 @@ Optional subnode-properties:
         - debounce-interval: Debouncing interval time in milliseconds.
           If not specified defaults to 5.
         - wakeup-source: Boolean, button can wake-up the system.
+                        (Legacy property supported: "gpio-key,wakeup")

>
> Do you mean it is not necessary on SPI level or not necessary at all? Or
> you disagree with wording? Because we do need a way to say that on given
> platform the device is supposed to be configured as a wakeup source.
>
> Thanks.
>

Hi guys,

Mark Brown suggested to put wakeup-source support in some common place 
instead of sub drivers, should we do that?

--
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	[flat|nested] 8+ messages in thread

* Re: [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property
  2017-06-27  2:04         ` jeffy
@ 2017-06-30 14:44           ` Rob Herring
  0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2017-06-30 14:44 UTC (permalink / raw)
  To: jeffy
  Cc: Dmitry Torokhov, linux-kernel, Brian Norris, Doug Anderson,
	devicetree, Mark Brown, linux-spi, Mark Rutland

On Mon, Jun 26, 2017 at 9:04 PM, jeffy <jeffy.chen@rock-chips.com> wrote:
> Hi Rob,
>
> On 06/27/2017 12:40 AM, Dmitry Torokhov wrote:
>>
>> On Mon, Jun 26, 2017 at 11:00:11AM -0500, Rob Herring wrote:
>>>
>>> On Wed, Jun 21, 2017 at 06:01:49PM +0800, Jeffy Chen wrote:
>>>>
>>>> Update document devicetree bindings to support "wakeup-source" property.
>>>>
>>>> Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
>>>> ---
>>>>
>>>> Changes in v3: None
>>>>
>>>>   Documentation/devicetree/bindings/spi/spi-bus.txt | 1 +
>>>>   1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt
>>>> b/Documentation/devicetree/bindings/spi/spi-bus.txt
>>>> index 1f6e86f..0fa1ccf 100644
>>>> --- a/Documentation/devicetree/bindings/spi/spi-bus.txt
>>>> +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
>>>> @@ -77,6 +77,7 @@ All slave nodes can contain the following optional
>>>> properties:
>>>>                     Defaults to 1 if not present.
>>>>   - spi-rx-delay-us - Microsecond delay after a read transfer.
>>>>   - spi-tx-delay-us - Microsecond delay after a write transfer.
>>>> +- wakeup-source   - Device can be used as a wakeup source.
>>>
>>>
>>> wakeup-source is valid for any device with an interrupts property
>>> already, so I don't think this is necessary.
>
> i saw http://lkml.iu.edu/hypermail/linux/kernel/1510.2/04553.html add a
> Documentation/devicetree/bindings/power/wakeup-source.txt for this, but that
> serial didn't remove all wakeup-source property from other bindings, but
> standardize them, for example:
> 71a0151 Documentation: devicetree: fix reference to legacy wakeup properties
>
> +++ b/Documentation/devicetree/bindings/input/gpio-keys.txt
> @@ -24,6 +24,7 @@ Optional subnode-properties:
>         - debounce-interval: Debouncing interval time in milliseconds.
>           If not specified defaults to 5.
>         - wakeup-source: Boolean, button can wake-up the system.
> +                        (Legacy property supported: "gpio-key,wakeup")
>
>>
>> Do you mean it is not necessary on SPI level or not necessary at all? Or
>> you disagree with wording? Because we do need a way to say that on given
>> platform the device is supposed to be configured as a wakeup source.
>>
>> Thanks.
>>
>
> Hi guys,
>
> Mark Brown suggested to put wakeup-source support in some common place
> instead of sub drivers, should we do that?

As you point out, it is already documented in a common place. In SPI
makes no sense. Are you going to document in I2C, simple-bus, USB,
etc. as well?

wakeup-source is really a property of the system (the upstream
interrupt controller in particular), so it doesn't really need to be
documented per device.

Rob

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

end of thread, other threads:[~2017-06-30 14:44 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-21 10:01 [RFC PATCH v3 0/6] Report wakeup events in cros_ec_keyb and make cros-ec-spi wakeup optional Jeffy Chen
     [not found] ` <1498039313-24220-1-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2017-06-21 10:01   ` [RFC PATCH v3 1/6] spi: core: add support for wakeup-source dts property Jeffy Chen
2017-06-21 10:52     ` Mark Brown
2017-06-21 10:01 ` [RFC PATCH v3 2/6] dt-bindings: spi/core: add wakeup-source optional property Jeffy Chen
     [not found]   ` <1498039313-24220-3-git-send-email-jeffy.chen-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2017-06-26 16:00     ` Rob Herring
2017-06-26 16:40       ` Dmitry Torokhov
2017-06-27  2:04         ` jeffy
2017-06-30 14:44           ` Rob Herring

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