LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Neal Liu <firstname.lastname@example.org>
To: Benjamin Herrenschmidt <email@example.com>,
Felipe Balbi <firstname.lastname@example.org>,
Greg Kroah-Hartman <email@example.com>,
Joel Stanley <firstname.lastname@example.org>, Andrew Jeffery <email@example.com>,
Cai Huoqing <firstname.lastname@example.org>,
Tao Ren <email@example.com>,
Julia Lawall <firstname.lastname@example.org>,
kernel test robot <email@example.com>,
Sasha Levin <firstname.lastname@example.org>,
Cc: BMC-SW <BMC-SW@aspeedtech.com>
Subject: RE: [PATCH 2/3] usb: aspeed-vhub: support remote wakeup feature
Date: Thu, 2 Dec 2021 03:03:27 +0000 [thread overview]
Message-ID: <HK0PR06MB3202F55EEE02B9931D9CD4AD80699@HK0PR06MB3202.apcprd06.prod.outlook.com> (raw)
> -----Original Message-----
> From: Benjamin Herrenschmidt <email@example.com>
> Sent: Wednesday, December 1, 2021 7:38 AM
> To: Neal Liu <firstname.lastname@example.org>; Felipe Balbi <email@example.com>;
> Greg Kroah-Hartman <firstname.lastname@example.org>; Joel Stanley
> <email@example.com>; Andrew Jeffery <firstname.lastname@example.org>; Cai Huoqing
> <email@example.com>; Tao Ren <firstname.lastname@example.org>; Julia Lawall
> <email@example.com>; kernel test robot <firstname.lastname@example.org>; Sasha Levin
> <email@example.com>; firstname.lastname@example.org; email@example.com;
> firstname.lastname@example.org; email@example.com
> Subject: Re: [PATCH 2/3] usb: aspeed-vhub: support remote wakeup feature
> On Tue, 2021-11-30 at 09:47 +0000, Neal Liu wrote:
> > > Should this be controlled by d->wakeup_en ? IE, we have a feature
> > > for the host to enable/disable remote wakeup, should we honor it ?
> > For KVM usage, remote keyboard packet would be sent if user wants to do
> remote wakeup.
> > In this case, d->wakeup_en is not used.
> > Set VHUB_CTRL_AUTO_REMOTE_WAKEUP to enable HW automatically
> > wakeup if any packet would be transferred.
> Sorry, I don't fully understand your explanation here.
> Normally, a USB device will do remote wakeup if it's instructed to do so via the
> appropriate feature being set, which is what wakeup_en reflects. I hadn't
> originally plumbed it in, I forgot why, I think something was either not properly
> documented or not working when I wrote that driver.
> You seem to want to override the behaviour and always send a remote wakeup
> packet no matter what. I am not sure this is desirable for all use cases, and
> might be something we want to make configurable, no ?
> I'm trying to understand your sentence, you seem to imply that the only use
> case here is "KVM" (as in remote USB on a server system) which I can probably
> agree with... mostly.
> And you say in that case, we should always do remote wakeup whenever an
> emulated USB device has any activity (keyboard or otherwise), regardless of
> whether the server has enabled the feature or not.
> Am I correct ? What's the rationale here ?
Let's me describe more details for our hardware behavior and hope you understand.
Set HUB00 implies USB device will do remote wakeup if any write command to vhub register.
Set HUB00 implies USB device will do remote wakeup. It can only be set in suspend state.
For current design, d->wakeup_en only controls whether HUB00 can be set through usb_gadget_ops.wakeup().
If some applications (take KVM as example) want to wakeup host by sending a packet, it won't go through sb_gadget_ops.wakeup().
We enable HUB00 to fix this problem. It won't override above mentioned behavior.
If host has enabled the USB_DEVICE_REMOTE_WAKEUP feature, it has 2 ways to wakeup host.
1. set srp 1 (/sys/device/platform/xxxxxxxxx/udc/xxxxxx/srp)
2. emulated device has activity
If host has disabled the USB_DEVICE_REMOTE_WAKEUP feature, these 2 ways still cannot wakeup host even if USB bus is in resume state.
next prev parent reply other threads:[~2021-12-02 3:04 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-26 11:09 [PATCH 0/3] Refactor Aspeed USB vhub driver Neal Liu
2021-11-26 11:09 ` [PATCH 1/3] usb: aspeed-vhub: add qualifier descriptor Neal Liu
2021-11-29 23:40 ` Benjamin Herrenschmidt
2021-11-30 9:30 ` Neal Liu
2021-11-26 11:09 ` [PATCH 2/3] usb: aspeed-vhub: support remote wakeup feature Neal Liu
2021-11-29 23:45 ` Benjamin Herrenschmidt
2021-11-30 9:47 ` Neal Liu
2021-11-30 23:37 ` Benjamin Herrenschmidt
2021-12-02 3:03 ` Neal Liu [this message]
2021-12-02 5:34 ` Neal Liu
2021-12-06 0:08 ` Benjamin Herrenschmidt
2021-11-26 11:09 ` [PATCH 3/3] usb: aspeed-vhub: fix ep0 OUT ack received wrong length issue Neal Liu
2021-11-29 23:48 ` Benjamin Herrenschmidt
2021-11-30 9:49 ` Neal Liu
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:
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--subject='RE: [PATCH 2/3] usb: aspeed-vhub: support remote wakeup feature' \
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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).