Hi, On Wed, Jun 5, 2019 at 1:43 PM Matthias Kaehlcke <mka@xxxxxxxxxxxx> 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@xxxxxxxxxxxx> > Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> > --- > 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