[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y3s4t2veOe78Emnt@smile.fi.intel.com>
Date: Mon, 21 Nov 2022 10:37:11 +0200
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Ferry Toth <ftoth@...londelft.nl>
Cc: linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Thinh Nguyen <Thinh.Nguyen@...opsys.com>,
Sean Anderson <sean.anderson@...o.com>,
Liu Shixin <liushixin2@...wei.com>,
Ferry Toth <fntoth@...il.com>,
Andrey Smirnov <andrew.smirnov@...il.com>,
stable@...r.kernel.org
Subject: Re: [PATCH v4 2/2] usb: dwc3: core: defer probe on ulpi_read_id
timeout
On Sun, Nov 20, 2022 at 04:37:04PM +0100, Ferry Toth wrote:
> Since commit 0f0101719138 ("usb: dwc3: Don't switch OTG -> peripheral if extcon is present"),
> Dual Role support on Intel Merrifield platform broke due to rearranging
> the call to dwc3_get_extcon().
>
> It appears to be caused by ulpi_read_id() masking the timeout on the first
> test write. In the past dwc3 probe continued by calling dwc3_core_soft_reset()
> followed by dwc3_get_extcon() which happend to return -EPROBE_DEFER.
> On deferred probe ulpi_read_id() finally succeeded. Due to above mentioned
> rearranging -EPROBE_DEFER is not returned and probe completes without phy.
>
> As we now changed ulpi_read_id() to return -ETIMEDOUT in this case, we
> need to handle the error by calling dwc3_core_soft_reset() and request
> -EPROBE_DEFER. On deferred probe ulpi_read_id() is retried and succeeds.
>
> Fixes: ef6a7bcfb01c ("usb: ulpi: Support device discovery via DT")
> Cc: stable@...r.kernel.org
>
> Signed-off-by: Ferry Toth <ftoth@...londelft.nl>
Same comments as per patch 1.
But before sending v5, let give a chance to others to review the code and other
aspects of the changes.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists