Revert "usb: chipidea: move ci_ulpi_init after the phy initialization"
This reverts commit 22ffd399e6
.
People report this commit causes the driver defer probed, and never
back to work[1][2].
[1] https://lore.kernel.org/lkml/20240407011913.GA168730@nchen-desktop/T/#mc2b93bc11a8b01ec7cd0d0bf6b0b03951d9ef751
[2] https://lore.kernel.org/lkml/20240407011913.GA168730@nchen-desktop/T/#me87d9a2a76c07619d83b3879ea14780da89fbbbf
Cc: Michael Grzeschik <m.grzeschik@pengutronix.de>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Wouter Franken <wouter@franken-peeters.be>
Signed-off-by: Peter Chen <peter.chen@kernel.org>
Link: https://lore.kernel.org/r/20240517023648.3459188-1-peter.chen@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
c3f38fa61a
commit
718d4a63c0
@ -1084,6 +1084,10 @@ static int ci_hdrc_probe(struct platform_device *pdev)
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
ret = ci_ulpi_init(ci);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
if (ci->platdata->phy) {
|
||||
ci->phy = ci->platdata->phy;
|
||||
} else if (ci->platdata->usb_phy) {
|
||||
@ -1138,10 +1142,6 @@ static int ci_hdrc_probe(struct platform_device *pdev)
|
||||
goto ulpi_exit;
|
||||
}
|
||||
|
||||
ret = ci_ulpi_init(ci);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
ci->hw_bank.phys = res->start;
|
||||
|
||||
ci->irq = platform_get_irq(pdev, 0);
|
||||
|
@ -68,6 +68,11 @@ int ci_ulpi_init(struct ci_hdrc *ci)
|
||||
if (ci->platdata->phy_mode != USBPHY_INTERFACE_MODE_ULPI)
|
||||
return 0;
|
||||
|
||||
/*
|
||||
* Set PORTSC correctly so we can read/write ULPI registers for
|
||||
* identification purposes
|
||||
*/
|
||||
hw_phymode_configure(ci);
|
||||
|
||||
ci->ulpi_ops.read = ci_ulpi_read;
|
||||
ci->ulpi_ops.write = ci_ulpi_write;
|
||||
|
Loading…
Reference in New Issue
Block a user