[2/2] ARM: dts: rockchip: Configure BT_HOST_WAKE as wake-up signal on veyron
diff mbox series

Message ID 20190605204320.22343-2-mka@chromium.org
State New
Headers show
Series
  • [1/2] ARM: dts: rockchip: Split GPIO keys for veyron into multiple devices
Related show

Commit Message

Matthias Kaehlcke June 5, 2019, 8:43 p.m. UTC
This enables wake up on Bluetooth activity when the device is
suspended. The BT_HOST_WAKE signal is only connected on devices
with BT module that are connected through UART.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
---
 arch/arm/boot/dts/rk3288-veyron.dtsi | 29 ++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

Comments

Heiko Stübner June 5, 2019, 9:11 p.m. UTC | #1
Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> This enables wake up on Bluetooth activity when the device is
> suspended. The BT_HOST_WAKE signal is only connected on devices
> with BT module that are connected through UART.
> 
> Signed-off-by: Douglas Anderson <dianders@chromium.org>
> Signed-off-by: Matthias Kaehlcke <mka@chromium.org>

Housekeeping question, with the two Signed-off-by lines, is Doug the
original author, or was this Co-developer-by?

Heiko

> ---
>  arch/arm/boot/dts/rk3288-veyron.dtsi | 29 ++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/rk3288-veyron.dtsi b/arch/arm/boot/dts/rk3288-veyron.dtsi
> index cc4c3595f145..145cac7c0847 100644
> --- a/arch/arm/boot/dts/rk3288-veyron.dtsi
> +++ b/arch/arm/boot/dts/rk3288-veyron.dtsi
> @@ -23,6 +23,31 @@
>  		reg = <0x0 0x0 0x0 0x80000000>;
>  	};
>  
> +	bt_activity: bt-activity {
> +		compatible = "gpio-keys";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&bt_host_wake>;
> +
> +		/*
> +		 * HACK: until we have an LPM driver, we'll use an
> +		 * ugly GPIO key to allow Bluetooth to wake from S3.
> +		 * This is expected to only be used by BT modules that
> +		 * use UART for comms.  For BT modules that talk over
> +		 * SDIO we should use a wakeup mechanism related to SDIO.
> +		 *
> +		 * Use KEY_RESERVED here since that will work as a wakeup but
> +		 * doesn't get reported to higher levels (so doesn't confuse
> +		 * Chrome).
> +		 */
> +		bt-wake {
> +			label = "BT Wakeup";
> +			gpios = <&gpio4 RK_PD7 GPIO_ACTIVE_HIGH>;
> +			linux,code = <KEY_RESERVED>;
> +			wakeup-source;
> +		};
> +
> +	};
> +
>  	power_button: power-button {
>  		compatible = "gpio-keys";
>  		pinctrl-names = "default";
> @@ -555,6 +580,10 @@
>  			rockchip,pins = <4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
>  		};
>  
> +		bt_host_wake: bt-host-wake {
> +			rockchip,pins = <4 31 RK_FUNC_GPIO &pcfg_pull_down>;
> +		};
> +
>  		/*
>  		 * We run sdio0 at max speed; bump up drive strength.
>  		 * We also have external pulls, so disable the internal ones.
>
Matthias Kaehlcke June 5, 2019, 9:24 p.m. UTC | #2
On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > This enables wake up on Bluetooth activity when the device is
> > suspended. The BT_HOST_WAKE signal is only connected on devices
> > with BT module that are connected through UART.
> > 
> > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> 
> Housekeeping question, with the two Signed-off-by lines, is Doug the
> original author, or was this Co-developer-by?

Good question, it's derived from Doug's patch for CrOS 3.14 and
https://crrev.com/c/1575556 also from Doug. Let's say I did the
porting to upstream, but I'm pretty sure Doug spent more time on it.

Maybe I should resend it with Doug as author and include the original
commit message, which has more information.
Heiko Stübner June 5, 2019, 9:52 p.m. UTC | #3
Am Mittwoch, 5. Juni 2019, 23:24:27 CEST schrieb Matthias Kaehlcke:
> On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> > Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > > This enables wake up on Bluetooth activity when the device is
> > > suspended. The BT_HOST_WAKE signal is only connected on devices
> > > with BT module that are connected through UART.
> > > 
> > > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > 
> > Housekeeping question, with the two Signed-off-by lines, is Doug the
> > original author, or was this Co-developer-by?
> 
> Good question, it's derived from Doug's patch for CrOS 3.14 and
> https://crrev.com/c/1575556 also from Doug. Let's say I did the
> porting to upstream, but I'm pretty sure Doug spent more time on it.
> 
> Maybe I should resend it with Doug as author and include the original
> commit message, which has more information.

It's just that the first Signed-off should be from the original author.
(And the sender the second)
In the co-developed-by case (see Kernel documentation) the order
doesn't matter.
Heiko Stübner June 6, 2019, 10:46 a.m. UTC | #4
Am Mittwoch, 5. Juni 2019, 23:52:00 CEST schrieb Heiko Stübner:
> Am Mittwoch, 5. Juni 2019, 23:24:27 CEST schrieb Matthias Kaehlcke:
> > On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> > > Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > > > This enables wake up on Bluetooth activity when the device is
> > > > suspended. The BT_HOST_WAKE signal is only connected on devices
> > > > with BT module that are connected through UART.
> > > > 
> > > > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > > 
> > > Housekeeping question, with the two Signed-off-by lines, is Doug the
> > > original author, or was this Co-developer-by?
> > 
> > Good question, it's derived from Doug's patch for CrOS 3.14 and
> > https://crrev.com/c/1575556 also from Doug. Let's say I did the
> > porting to upstream, but I'm pretty sure Doug spent more time on it.
> > 
> > Maybe I should resend it with Doug as author and include the original
> > commit message, which has more information.
> 
> It's just that the first Signed-off should be from the original author.
> (And the sender the second)
> In the co-developed-by case (see Kernel documentation) the order
> doesn't matter.

Holding off on this patch till we could clarify the authorship.


Heiko
Matthias Kaehlcke June 6, 2019, 5:56 p.m. UTC | #5
On Thu, Jun 06, 2019 at 12:46:03PM +0200, Heiko Stuebner wrote:
> Am Mittwoch, 5. Juni 2019, 23:52:00 CEST schrieb Heiko Stübner:
> > Am Mittwoch, 5. Juni 2019, 23:24:27 CEST schrieb Matthias Kaehlcke:
> > > On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> > > > Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > > > > This enables wake up on Bluetooth activity when the device is
> > > > > suspended. The BT_HOST_WAKE signal is only connected on devices
> > > > > with BT module that are connected through UART.
> > > > > 
> > > > > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > > > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > > > 
> > > > Housekeeping question, with the two Signed-off-by lines, is Doug the
> > > > original author, or was this Co-developer-by?
> > > 
> > > Good question, it's derived from Doug's patch for CrOS 3.14 and
> > > https://crrev.com/c/1575556 also from Doug. Let's say I did the
> > > porting to upstream, but I'm pretty sure Doug spent more time on it.
> > > 
> > > Maybe I should resend it with Doug as author and include the original
> > > commit message, which has more information.
> > 
> > It's just that the first Signed-off should be from the original author.
> > (And the sender the second)
> > In the co-developed-by case (see Kernel documentation) the order
> > doesn't matter.
> 
> Holding off on this patch till we could clarify the authorship.

I'd say let's attribute the authorship to Doug. FTR, the original
downstream Chrome OS patch is https://crrev.com/c/278190.

Not sure if the information in the commit message of the original
patch is relevant for the upstream version, in the end it seems LPM
was never implemented, so it should be sufficient to say what is
actually done today.

In summary, I propose to take the patch with the current commit
message, with Doug as the author. Heiko, can you change the authorship
or should I send a new version?

Doug if you have objections or want updates in the commit message
(yours tend to be more verbose ;-), holler.

Thanks

Matthias
Doug Anderson June 6, 2019, 11:32 p.m. UTC | #6
Hi,

On Wed, Jun 5, 2019 at 1:43 PM Matthias Kaehlcke <mka@chromium.org> wrote:
>
> This enables wake up on Bluetooth activity when the device is
> suspended. The BT_HOST_WAKE signal is only connected on devices
> with BT module that are connected through UART.
>
> Signed-off-by: Douglas Anderson <dianders@chromium.org>
> Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> ---
>  arch/arm/boot/dts/rk3288-veyron.dtsi | 29 ++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/arch/arm/boot/dts/rk3288-veyron.dtsi b/arch/arm/boot/dts/rk3288-veyron.dtsi
> index cc4c3595f145..145cac7c0847 100644
> --- a/arch/arm/boot/dts/rk3288-veyron.dtsi
> +++ b/arch/arm/boot/dts/rk3288-veyron.dtsi
> @@ -23,6 +23,31 @@
>                 reg = <0x0 0x0 0x0 0x80000000>;
>         };
>
> +       bt_activity: bt-activity {
> +               compatible = "gpio-keys";
> +               pinctrl-names = "default";
> +               pinctrl-0 = <&bt_host_wake>;
> +
> +               /*
> +                * HACK: until we have an LPM driver, we'll use an
> +                * ugly GPIO key to allow Bluetooth to wake from S3.
> +                * This is expected to only be used by BT modules that
> +                * use UART for comms.  For BT modules that talk over
> +                * SDIO we should use a wakeup mechanism related to SDIO.
> +                *
> +                * Use KEY_RESERVED here since that will work as a wakeup but
> +                * doesn't get reported to higher levels (so doesn't confuse
> +                * Chrome).
> +                */
> +               bt-wake {
> +                       label = "BT Wakeup";
> +                       gpios = <&gpio4 RK_PD7 GPIO_ACTIVE_HIGH>;
> +                       linux,code = <KEY_RESERVED>;
> +                       wakeup-source;
> +               };
> +
> +       };
> +
>         power_button: power-button {
>                 compatible = "gpio-keys";
>                 pinctrl-names = "default";
> @@ -555,6 +580,10 @@
>                         rockchip,pins = <4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
>                 };
>
> +               bt_host_wake: bt-host-wake {
> +                       rockchip,pins = <4 31 RK_FUNC_GPIO &pcfg_pull_down>;

nit: s/31/RK_PD7

Other than that, feel free to add my Reviewed-by assuming that this
isn't too hacky for mainline to accept while we wait for someone to
come up with a better solution.

-Doug
Doug Anderson June 6, 2019, 11:34 p.m. UTC | #7
Hi,

On Thu, Jun 6, 2019 at 10:56 AM Matthias Kaehlcke <mka@chromium.org> wrote:
>
> On Thu, Jun 06, 2019 at 12:46:03PM +0200, Heiko Stuebner wrote:
> > Am Mittwoch, 5. Juni 2019, 23:52:00 CEST schrieb Heiko Stübner:
> > > Am Mittwoch, 5. Juni 2019, 23:24:27 CEST schrieb Matthias Kaehlcke:
> > > > On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> > > > > Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > > > > > This enables wake up on Bluetooth activity when the device is
> > > > > > suspended. The BT_HOST_WAKE signal is only connected on devices
> > > > > > with BT module that are connected through UART.
> > > > > >
> > > > > > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > > > > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > > > >
> > > > > Housekeeping question, with the two Signed-off-by lines, is Doug the
> > > > > original author, or was this Co-developer-by?
> > > >
> > > > Good question, it's derived from Doug's patch for CrOS 3.14 and
> > > > https://crrev.com/c/1575556 also from Doug. Let's say I did the
> > > > porting to upstream, but I'm pretty sure Doug spent more time on it.
> > > >
> > > > Maybe I should resend it with Doug as author and include the original
> > > > commit message, which has more information.
> > >
> > > It's just that the first Signed-off should be from the original author.
> > > (And the sender the second)
> > > In the co-developed-by case (see Kernel documentation) the order
> > > doesn't matter.
> >
> > Holding off on this patch till we could clarify the authorship.
>
> I'd say let's attribute the authorship to Doug. FTR, the original
> downstream Chrome OS patch is https://crrev.com/c/278190.
>
> Not sure if the information in the commit message of the original
> patch is relevant for the upstream version, in the end it seems LPM
> was never implemented, so it should be sufficient to say what is
> actually done today.
>
> In summary, I propose to take the patch with the current commit
> message, with Doug as the author. Heiko, can you change the authorship
> or should I send a new version?
>
> Doug if you have objections or want updates in the commit message
> (yours tend to be more verbose ;-), holler.

It's fine with me.

-Doug
Heiko Stübner June 14, 2019, 9:41 a.m. UTC | #8
Am Freitag, 7. Juni 2019, 01:34:32 CEST schrieb Doug Anderson:
> Hi,
> 
> On Thu, Jun 6, 2019 at 10:56 AM Matthias Kaehlcke <mka@chromium.org> wrote:
> >
> > On Thu, Jun 06, 2019 at 12:46:03PM +0200, Heiko Stuebner wrote:
> > > Am Mittwoch, 5. Juni 2019, 23:52:00 CEST schrieb Heiko Stübner:
> > > > Am Mittwoch, 5. Juni 2019, 23:24:27 CEST schrieb Matthias Kaehlcke:
> > > > > On Wed, Jun 05, 2019 at 11:11:12PM +0200, Heiko Stübner wrote:
> > > > > > Am Mittwoch, 5. Juni 2019, 22:43:20 CEST schrieb Matthias Kaehlcke:
> > > > > > > This enables wake up on Bluetooth activity when the device is
> > > > > > > suspended. The BT_HOST_WAKE signal is only connected on devices
> > > > > > > with BT module that are connected through UART.
> > > > > > >
> > > > > > > Signed-off-by: Douglas Anderson <dianders@chromium.org>
> > > > > > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > > > > >
> > > > > > Housekeeping question, with the two Signed-off-by lines, is Doug the
> > > > > > original author, or was this Co-developer-by?
> > > > >
> > > > > Good question, it's derived from Doug's patch for CrOS 3.14 and
> > > > > https://crrev.com/c/1575556 also from Doug. Let's say I did the
> > > > > porting to upstream, but I'm pretty sure Doug spent more time on it.
> > > > >
> > > > > Maybe I should resend it with Doug as author and include the original
> > > > > commit message, which has more information.
> > > >
> > > > It's just that the first Signed-off should be from the original author.
> > > > (And the sender the second)
> > > > In the co-developed-by case (see Kernel documentation) the order
> > > > doesn't matter.
> > >
> > > Holding off on this patch till we could clarify the authorship.
> >
> > I'd say let's attribute the authorship to Doug. FTR, the original
> > downstream Chrome OS patch is https://crrev.com/c/278190.
> >
> > Not sure if the information in the commit message of the original
> > patch is relevant for the upstream version, in the end it seems LPM
> > was never implemented, so it should be sufficient to say what is
> > actually done today.
> >
> > In summary, I propose to take the patch with the current commit
> > message, with Doug as the author. Heiko, can you change the authorship
> > or should I send a new version?
> >
> > Doug if you have objections or want updates in the commit message
> > (yours tend to be more verbose ;-), holler.
> 
> It's fine with me.

while I did just want to apply this one with the relevant adaptions,
I didn't get to it early enough and Matthias was faster with his v2
fixed patch, so I've applied that one instead ;-)

Heiko

Patch
diff mbox series

diff --git a/arch/arm/boot/dts/rk3288-veyron.dtsi b/arch/arm/boot/dts/rk3288-veyron.dtsi
index cc4c3595f145..145cac7c0847 100644
--- a/arch/arm/boot/dts/rk3288-veyron.dtsi
+++ b/arch/arm/boot/dts/rk3288-veyron.dtsi
@@ -23,6 +23,31 @@ 
 		reg = <0x0 0x0 0x0 0x80000000>;
 	};
 
+	bt_activity: bt-activity {
+		compatible = "gpio-keys";
+		pinctrl-names = "default";
+		pinctrl-0 = <&bt_host_wake>;
+
+		/*
+		 * HACK: until we have an LPM driver, we'll use an
+		 * ugly GPIO key to allow Bluetooth to wake from S3.
+		 * This is expected to only be used by BT modules that
+		 * use UART for comms.  For BT modules that talk over
+		 * SDIO we should use a wakeup mechanism related to SDIO.
+		 *
+		 * Use KEY_RESERVED here since that will work as a wakeup but
+		 * doesn't get reported to higher levels (so doesn't confuse
+		 * Chrome).
+		 */
+		bt-wake {
+			label = "BT Wakeup";
+			gpios = <&gpio4 RK_PD7 GPIO_ACTIVE_HIGH>;
+			linux,code = <KEY_RESERVED>;
+			wakeup-source;
+		};
+
+	};
+
 	power_button: power-button {
 		compatible = "gpio-keys";
 		pinctrl-names = "default";
@@ -555,6 +580,10 @@ 
 			rockchip,pins = <4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
 
+		bt_host_wake: bt-host-wake {
+			rockchip,pins = <4 31 RK_FUNC_GPIO &pcfg_pull_down>;
+		};
+
 		/*
 		 * We run sdio0 at max speed; bump up drive strength.
 		 * We also have external pulls, so disable the internal ones.