From: Mattijs Korpershoek <mkorpershoek@kernel.org>
To: Anders Roxell <anders.roxell@linaro.org>,
u-boot@lists.u-boot-project.org
Cc: marek.vasut@mailbox.org, trini@konsulko.com,
ilias.apalodimas@linaro.org, michal.simek@amd.com, lukma@denx.de,
alchark@flipper.net, jerome.forissier@arm.com,
dlechner@baylibre.com, anshuld@ti.com, sjg@chromium.org,
Anders Roxell <anders.roxell@linaro.org>,
Jerome Forissier <jerome.forissier@linaro.org>,
Jens Wiklander <jens.wiklander@linaro.org>
Subject: Re: [PATCH v7 02/24] usb: phy: add the usb_phy helpers needed by the resynced DWC3 code
Date: Fri, 11 Sep 2026 14:17:58 +0200 [thread overview]
Message-ID: <xhkdbld983rt5.fsf@mkorpers-koolstof.csb> (raw)
In-Reply-To: <20260824154133.217744-3-anders.roxell@linaro.org>
Hi Anders,
Thank you for the patch.
On Mon, Aug 24, 2026 at 17:41, Anders Roxell <anders.roxell@linaro.org> wrote:
> The resynced DWC3 core includes linux/usb/phy.h and uses struct usb_phy,
> usb_phy_init(), usb_phy_shutdown(), usb_phy_set_power() and
> usb_phy_set_suspend(). u-boot has none of them.
Nit: u-boot -> U-Boot
>
> Add a cut down version of include/linux/usb/phy.h from Linux v6.16. Only
> the parts the DWC3 core needs are here.
>
> usb_phy_set_suspend() is a stub that returns 0. u-boot never suspends
> the controller, so there is nothing to do.
>
> Linux calls usb_phy_set_charger_current() from usb_phy_set_power().
> u-boot has no charger framework, so the call is left as a comment. It
> marks where the call goes if someone adds one later.
>
> Co-developed-by: Jerome Forissier <jerome.forissier@linaro.org>
> Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
> Co-developed-by: Jens Wiklander <jens.wiklander@linaro.org>
> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
> ---
> include/linux/usb/phy.h | 56 +++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 56 insertions(+)
>
> diff --git a/include/linux/usb/phy.h b/include/linux/usb/phy.h
> index 14b2c7eb2e63..afda7870e21e 100644
> --- a/include/linux/usb/phy.h
> +++ b/include/linux/usb/phy.h
> @@ -21,6 +21,13 @@ enum usb_phy_interface {
> USBPHY_INTERFACE_MODE_HSIC,
> };
>
> +/* associate a type with PHY */
> +enum usb_phy_type {
> + USB_PHY_TYPE_UNDEFINED,
> + USB_PHY_TYPE_USB2,
> + USB_PHY_TYPE_USB3,
> +};
> +
> #if CONFIG_IS_ENABLED(DM_USB)
> /**
> * usb_get_phy_mode - Get phy mode for given device_node
> @@ -37,4 +44,53 @@ static inline enum usb_phy_interface usb_get_phy_mode(ofnode node)
> }
> #endif
>
> +struct usb_phy {
> + struct device *dev;
> +
> + /* initialize/shutdown the phy */
> + int (*init)(struct usb_phy *x);
> + void (*shutdown)(struct usb_phy *x);
> +
> + /* enable/disable VBUS */
> + int (*set_vbus)(struct usb_phy *x, int on);
> +
> + /* effective for B devices, ignored for A-peripheral */
> + int (*set_power)(struct usb_phy *x,
> + unsigned int mA);
> +};
> +
> +static inline int
> +usb_phy_init(struct usb_phy *x)
> +{
> + if (x && x->init)
> + return x->init(x);
> +
> + return 0;
> +}
> +
> +static inline void
> +usb_phy_shutdown(struct usb_phy *x)
> +{
> + if (x && x->shutdown)
> + x->shutdown(x);
> +}
> +
> +static inline int
> +usb_phy_set_power(struct usb_phy *x, unsigned int mA)
> +{
> + if (!x)
> + return 0;
> +
> + /* TODO usb_phy_set_charger_current(x, mA); */
> +
> + if (x->set_power)
> + return x->set_power(x, mA);
nit: missing newline here
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
> + return 0;
> +}
> +
> +static inline int
> +usb_phy_set_suspend(struct usb_phy *x, int suspend)
> +{
> + return 0;
> +}
> #endif /* __LINUX_USB_PHY_H */
> --
> 2.53.0
next prev parent reply other threads:[~2026-09-11 12:18 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-24 15:41 [PATCH v7 00/24] usb: dwc3: part 2, make the resynced code work Anders Roxell
2026-08-24 15:41 ` [PATCH v7 01/24] dm: add helpers needed by the resynced DWC3 code Anders Roxell
2026-09-11 12:16 ` Mattijs Korpershoek
2026-08-24 15:41 ` [PATCH v7 02/24] usb: phy: add the usb_phy " Anders Roxell
2026-09-11 12:17 ` Mattijs Korpershoek [this message]
2026-08-24 15:41 ` [PATCH v7 03/24] usb: gadget: adapt the gadget API after the resync Anders Roxell
2026-08-24 15:41 ` [PATCH v7 04/24] usb: gadget: udc: make udc-core build in u-boot Anders Roxell
2026-08-24 15:41 ` [PATCH v7 05/24] usb: dwc3: make the core driver " Anders Roxell
2026-08-24 15:41 ` [PATCH v7 06/24] usb: dwc3: bring back the samsung usb phy driver Anders Roxell
2026-08-24 15:41 ` [PATCH v7 07/24] usb: dwc3: make gadget and ep0 build in u-boot Anders Roxell
2026-08-24 15:41 ` [PATCH v7 08/24] usb: gadget: udc: enable async callbacks on bind Anders Roxell
2026-08-24 15:41 ` [PATCH v7 09/24] usb: dwc3: ep0: flush and invalidate cache around ep0 transfers Anders Roxell
2026-08-24 15:41 ` [PATCH v7 10/24] usb: dwc3: make the am62 glue build in u-boot Anders Roxell
2026-08-24 15:41 ` [PATCH v7 11/24] usb: gadget: ci_udc: move to the udc-core registration Anders Roxell
2026-08-24 15:41 ` [PATCH v7 12/24] usb: gadget: ci_udc: set endpoint capabilities Anders Roxell
2026-08-24 15:41 ` [PATCH v7 13/24] usb: gadget: dwc2_udc_otg: fix up after the resync Anders Roxell
2026-08-24 15:41 ` [PATCH v7 14/24] usb: gadget: fix up the function drivers " Anders Roxell
2026-08-24 15:41 ` [PATCH v7 15/24] usb: gadget: fix up the last UDC " Anders Roxell
2026-08-24 15:41 ` [PATCH v7 16/24] usb: gadget: atmel_usba_udc: set endpoint capabilities Anders Roxell
2026-08-24 15:41 ` [PATCH v7 17/24] usb: gadget: at91_udc: register with udc-core Anders Roxell
2026-08-24 15:41 ` [PATCH v7 18/24] usb: gadget: at91_udc: set endpoint capabilities Anders Roxell
2026-08-24 15:41 ` [PATCH v7 19/24] usb: musb-new: fix up after the resync Anders Roxell
2026-08-24 15:41 ` [PATCH v7 20/24] usb: musb-new: set endpoint capabilities Anders Roxell
2026-08-24 15:41 ` [PATCH v7 21/24] usb: mtu3: fix up after the resync Anders Roxell
2026-08-24 15:41 ` [PATCH v7 22/24] usb: mtu3: set endpoint capabilities Anders Roxell
2026-08-24 15:41 ` [PATCH v7 23/24] usb: host: xhci: fix up after the resync Anders Roxell
2026-08-24 15:41 ` [PATCH v7 24/24] usb: cdns3: " Anders Roxell
2026-08-25 9:42 ` [PATCH v7 00/24] usb: dwc3: part 2, make the resynced code work Anshul Dalal
2026-08-26 8:29 ` Anders Roxell
2026-08-27 7:48 ` Anshul Dalal
2026-08-28 12:26 ` Anders Roxell
2026-09-11 10:33 ` Love Kumar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xhkdbld983rt5.fsf@mkorpers-koolstof.csb \
--to=mkorpershoek@kernel.org \
--cc=alchark@flipper.net \
--cc=anders.roxell@linaro.org \
--cc=anshuld@ti.com \
--cc=dlechner@baylibre.com \
--cc=ilias.apalodimas@linaro.org \
--cc=jens.wiklander@linaro.org \
--cc=jerome.forissier@arm.com \
--cc=jerome.forissier@linaro.org \
--cc=lukma@denx.de \
--cc=marek.vasut@mailbox.org \
--cc=michal.simek@amd.com \
--cc=sjg@chromium.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.u-boot-project.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox