[PATCH] usb: dwc2: Add in version 4xx compatibility
Marek Vasut
marex at denx.de
Tue Mar 26 12:50:15 CET 2024
On 3/26/24 3:32 AM, Greg Malysa wrote:
> From: Nathan Barrett-Morrison <nathan.morrison at timesys.com>
>
> This adds the Synopsys device id for version 4xx of the designware
> IP block and extends the version check to include it to permit
> new hardware to run. It does not add any 4xx-specific features.
>
> Signed-off-by: Ian Roberts <ian.roberts at timesys.com>
> Signed-off-by: Greg Malysa <greg.malysa at timesys.com>
> Signed-off-by: Nathan Barrett-Morrison <nathan.morrison at timesys.com>
>
> ---
>
>
> ---
> drivers/usb/host/dwc2.c | 3 ++-
> drivers/usb/host/dwc2.h | 1 +
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
> index 637eb2dd06..6fdde6a9a7 100644
> --- a/drivers/usb/host/dwc2.c
> +++ b/drivers/usb/host/dwc2.c
> @@ -1180,7 +1180,8 @@ static int dwc2_init_common(struct udevice *dev, struct dwc2_priv *priv)
> snpsid >> 12 & 0xf, snpsid & 0xfff);
>
> if ((snpsid & DWC2_SNPSID_DEVID_MASK) != DWC2_SNPSID_DEVID_VER_2xx &&
> - (snpsid & DWC2_SNPSID_DEVID_MASK) != DWC2_SNPSID_DEVID_VER_3xx) {
> + (snpsid & DWC2_SNPSID_DEVID_MASK) != DWC2_SNPSID_DEVID_VER_3xx &&
> + (snpsid & DWC2_SNPSID_DEVID_MASK) != DWC2_SNPSID_DEVID_VER_4xx) {
> dev_info(dev, "SNPSID invalid (not DWC2 OTG device): %08x\n",
> snpsid);
> return -ENODEV;
> diff --git a/drivers/usb/host/dwc2.h b/drivers/usb/host/dwc2.h
> index 6f022e33a1..f202d55eb2 100644
> --- a/drivers/usb/host/dwc2.h
> +++ b/drivers/usb/host/dwc2.h
> @@ -739,6 +739,7 @@ struct dwc2_core_regs {
> #define DWC2_PCGCCTL_DEEP_SLEEP_OFFSET 7
> #define DWC2_SNPSID_DEVID_VER_2xx (0x4f542 << 12)
> #define DWC2_SNPSID_DEVID_VER_3xx (0x4f543 << 12)
> +#define DWC2_SNPSID_DEVID_VER_4xx (0x4f544 << 12)
> #define DWC2_SNPSID_DEVID_MASK (0xfffff << 12)
> #define DWC2_SNPSID_DEVID_OFFSET 12
Maybe it would be better/easier/futureproof to simply check if (snpsid &
0xffff0 == 0x4f540) ?
More information about the U-Boot
mailing list