Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1439247

Re: [PATCH v2 07/22] usb: chipidea: Notify events when switching host mode

From Peter Chen <hzpeterchen@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH v2 07/22] usb: chipidea: Notify events when switching host mode
Date 2016-07-08 11:50 +0200
Message-ID <rSAA1-2Xn-9@gated-at.bofh.it> (permalink)
References <rSpXX-4yB-3@gated-at.bofh.it> <rSpXY-4yB-45@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Jul 07, 2016 at 03:20:58PM -0700, Stephen Boyd wrote:
> The chipidea/udc.c file sends a CI_HDRC_CONTROLLER_RESET_EVENT to
> the wrapper drivers when it calls hw_device_reset(), but that
> function is not called from chipidea/host.c. And the udc.c file
> sends the CI_HDRC_CONTROLLER_STOPPED_EVENT but the host.c file
> doesn't do anything.
> 
> The intent of the reset event is to allow the wrapper driver to
> do any wrapper specific things after the reset bit has been set
> in the usb command register. Therefore, add this event hook in
> the host role after we toggle that bit.
> 
> Similarly, the intent of the stopped event is to allow the
> wrapper driver to do any wrapper specific things after the device
> is stopped. So when we stop the host role, send the stopped
> event.
> 
> Cc: Peter Chen <peter.chen@nxp.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
> ---
>  drivers/usb/chipidea/host.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c
> index 053bac9d983c..a1d8551ca79d 100644
> --- a/drivers/usb/chipidea/host.c
> +++ b/drivers/usb/chipidea/host.c
> @@ -87,6 +87,9 @@ static int ehci_ci_reset(struct usb_hcd *hcd)
>  	if (ret)
>  		return ret;
>  
> +	if (ci->platdata->notify_event)
> +		ci->platdata->notify_event(ci, CI_HDRC_CONTROLLER_RESET_EVENT);
> +
>  	ci_platform_configure(ci);
>  
>  	return ret;
> @@ -184,6 +187,9 @@ static void host_stop(struct ci_hdrc *ci)
>  	struct usb_hcd *hcd = ci->hcd;
>  
>  	if (hcd) {
> +		if (ci->platdata->notify_event)
> +			ci->platdata->notify_event(ci,
> +				CI_HDRC_CONTROLLER_STOPPED_EVENT);
>  		usb_remove_hcd(hcd);
>  		usb_put_hcd(hcd);
>  		if (ci->platdata->reg_vbus && !ci_otg_is_fsm_mode(ci) &&

Acked-by: Peter Chen <peter.chen@nxp.com>

-- 

Best Regards,
Peter Chen

Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

[PATCH v2 07/22] usb: chipidea: Notify events when switching host mode Stephen Boyd <stephen.boyd@linaro.org> - 2016-07-08 00:30 +0200
  Re: [PATCH v2 07/22] usb: chipidea: Notify events when switching  host mode Peter Chen <hzpeterchen@gmail.com> - 2016-07-08 11:50 +0200

csiph-web