[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZEJHdCpLZ7f0946B@kroah.com>
Date: Fri, 21 Apr 2023 10:21:08 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: Stanley Chang <stanley_chang@...ltek.com>
Cc: Alan Stern <stern@...land.harvard.edu>,
Douglas Anderson <dianders@...omium.org>,
Vincent Mailhol <mailhol.vincent@...adoo.fr>,
Bhuvanesh Surachari <Bhuvanesh_Surachari@...tor.com>,
Mathias Nyman <mathias.nyman@...ux.intel.com>,
Flavio Suligoi <f.suligoi@...m.it>,
Ray Chi <raychi@...gle.com>,
Michael Grzeschik <m.grzeschik@...gutronix.de>,
linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1] usb: phy: add usb phy notify port status API
On Fri, Apr 21, 2023 at 04:03:31PM +0800, Stanley Chang wrote:
> In Realtek SoC, the parameter of usb phy is designed to can dynamic
> tuning base on port status. Therefore, add a notify callback of phy
> driver when usb port status change.
>
> Signed-off-by: Stanley Chang <stanley_chang@...ltek.com>
> ---
> drivers/usb/core/hub.c | 13 +++++++++++++
> include/linux/usb/phy.h | 14 ++++++++++++++
> 2 files changed, 27 insertions(+)
>
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index 97a0f8faea6e..b4fbbeae1927 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -614,6 +614,19 @@ static int hub_ext_port_status(struct usb_hub *hub, int port1, int type,
> ret = 0;
> }
> mutex_unlock(&hub->status_mutex);
> +
> + if (!ret) {
> + struct usb_device *hdev = hub->hdev;
> +
> + if (hdev && !hdev->parent) {
How can you have a device without a parent? And why does it matter?
And how could hdev be NULL? And if it can change to be NULL, what
prevents it from changing right after you checked for it?
thanks,
greg k-h
Powered by blists - more mailing lists