diff options
author | Gaosheng Cui <cuigaosheng1@huawei.com> | 2022-11-29 14:16:34 +0300 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2023-04-12 19:21:42 +0300 |
commit | e024854048e733391b31fe5a398704b31b9af803 (patch) | |
tree | d6101e45726a99e9964a232845cdf61b483ba9e4 /drivers/phy/tegra/xusb.c | |
parent | a50abe2e6d4906c4d83c6da155dc1fc4624e1280 (diff) | |
download | linux-e024854048e733391b31fe5a398704b31b9af803.tar.xz |
phy: tegra: xusb: Add missing tegra_xusb_port_unregister for usb2_port and ulpi_port
The tegra_xusb_port_unregister should be called when usb2_port
and ulpi_port map fails in tegra_xusb_add_usb2_port() or in
tegra_xusb_add_ulpi_port(), fix it.
Fixes: 53d2a715c240 ("phy: Add Tegra XUSB pad controller support")
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20221129111634.1547747-1-cuigaosheng1@huawei.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/phy/tegra/xusb.c')
-rw-r--r-- | drivers/phy/tegra/xusb.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/phy/tegra/xusb.c b/drivers/phy/tegra/xusb.c index ec335668563d..b55d4e9f42b5 100644 --- a/drivers/phy/tegra/xusb.c +++ b/drivers/phy/tegra/xusb.c @@ -805,6 +805,7 @@ static int tegra_xusb_add_usb2_port(struct tegra_xusb_padctl *padctl, usb2->base.lane = usb2->base.ops->map(&usb2->base); if (IS_ERR(usb2->base.lane)) { err = PTR_ERR(usb2->base.lane); + tegra_xusb_port_unregister(&usb2->base); goto out; } @@ -871,6 +872,7 @@ static int tegra_xusb_add_ulpi_port(struct tegra_xusb_padctl *padctl, ulpi->base.lane = ulpi->base.ops->map(&ulpi->base); if (IS_ERR(ulpi->base.lane)) { err = PTR_ERR(ulpi->base.lane); + tegra_xusb_port_unregister(&ulpi->base); goto out; } |