From patchwork Thu May 21 23:12:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Vasut X-Patchwork-Id: 246171 List-Id: U-Boot discussion From: marex at denx.de (Marek Vasut) Date: Fri, 22 May 2020 01:12:07 +0200 Subject: [PATCH 1/2] usb: ehci-mx6: Handle fixed regulators correctly Message-ID: <20200521231208.171116-1-marex@denx.de> The regulator-fixed would return -ENOSYS when enabled/disabled, because this operation is not supported, but this is not an error e.g. on systems where the VBUS cannot be controlled, so if this is the error code reported by the regulator core, consider it a success and continue. Signed-off-by: Marek Vasut --- drivers/usb/host/ehci-mx6.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c index 24f8ad7af8..470eddd0c9 100644 --- a/drivers/usb/host/ehci-mx6.c +++ b/drivers/usb/host/ehci-mx6.c @@ -447,7 +447,7 @@ static int mx6_init_after_reset(struct ehci_ctrl *dev) ret = regulator_set_enable(priv->vbus_supply, (type == USB_INIT_DEVICE) ? false : true); - if (ret) { + if (ret && ret != -ENOSYS) { puts("Error enabling VBUS supply\n"); return ret; } @@ -614,7 +614,7 @@ static int ehci_usb_probe(struct udevice *dev) ret = regulator_set_enable(priv->vbus_supply, (type == USB_INIT_DEVICE) ? false : true); - if (ret) { + if (ret && ret != -ENOSYS) { puts("Error enabling VBUS supply\n"); return ret; } From patchwork Thu May 21 23:12:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Vasut X-Patchwork-Id: 246172 List-Id: U-Boot discussion From: marex at denx.de (Marek Vasut) Date: Fri, 22 May 2020 01:12:08 +0200 Subject: [PATCH 2/2] usb: ehci-mx6: Print error code on failure In-Reply-To: <20200521231208.171116-1-marex@denx.de> References: <20200521231208.171116-1-marex@denx.de> Message-ID: <20200521231208.171116-2-marex@denx.de> Print the error code if the regulator enable fails, otherwise the error message is rather useless and confusing. Signed-off-by: Marek Vasut --- drivers/usb/host/ehci-mx6.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/ehci-mx6.c b/drivers/usb/host/ehci-mx6.c index 470eddd0c9..5f84c7b91d 100644 --- a/drivers/usb/host/ehci-mx6.c +++ b/drivers/usb/host/ehci-mx6.c @@ -448,7 +448,7 @@ static int mx6_init_after_reset(struct ehci_ctrl *dev) (type == USB_INIT_DEVICE) ? false : true); if (ret && ret != -ENOSYS) { - puts("Error enabling VBUS supply\n"); + printf("Error enabling VBUS supply (ret=%i)\n", ret); return ret; } } @@ -615,7 +615,7 @@ static int ehci_usb_probe(struct udevice *dev) (type == USB_INIT_DEVICE) ? false : true); if (ret && ret != -ENOSYS) { - puts("Error enabling VBUS supply\n"); + printf("Error enabling VBUS supply (ret=%i)\n", ret); return ret; } }