diff options
| author | Jonas Karlman <[email protected]> | 2023-07-30 22:59:57 +0000 |
|---|---|---|
| committer | Kever Yang <[email protected]> | 2023-07-31 14:40:38 +0800 |
| commit | caaeac88466f4152bd126e2342765a4b740955ae (patch) | |
| tree | 2b661110f37c2754cc330e73885c266290e9eb6b /drivers | |
| parent | 6913c30516022f86104c9fbe315499e43eee4ed6 (diff) | |
usb: dwc3-generic: Add rk3568 support
RK3568 share glue and ctrl in a single node. Use glue_get_ctrl_dev to
return the glue node as the ctrl node.
Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Jagan Teki <[email protected]>
Reviewed-by: Marek Vasut <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/usb/dwc3/dwc3-generic.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/usb/dwc3/dwc3-generic.c b/drivers/usb/dwc3/dwc3-generic.c index 2331ac45313..79203f82041 100644 --- a/drivers/usb/dwc3/dwc3-generic.c +++ b/drivers/usb/dwc3/dwc3-generic.c @@ -405,6 +405,19 @@ struct dwc3_glue_ops ti_ops = { .glue_configure = dwc3_ti_glue_configure, }; +static int dwc3_rk_glue_get_ctrl_dev(struct udevice *dev, ofnode *node) +{ + *node = dev_ofnode(dev); + if (!ofnode_valid(*node)) + return -EINVAL; + + return 0; +} + +struct dwc3_glue_ops rk_ops = { + .glue_get_ctrl_dev = dwc3_rk_glue_get_ctrl_dev, +}; + static int dwc3_glue_bind_common(struct udevice *parent, ofnode node) { const char *name = ofnode_get_name(node); @@ -596,6 +609,7 @@ static const struct udevice_id dwc3_glue_ids[] = { { .compatible = "ti,am654-dwc3" }, { .compatible = "rockchip,rk3328-dwc3" }, { .compatible = "rockchip,rk3399-dwc3" }, + { .compatible = "rockchip,rk3568-dwc3", .data = (ulong)&rk_ops }, { .compatible = "qcom,dwc3" }, { .compatible = "fsl,imx8mp-dwc3", .data = (ulong)&imx8mp_ops }, { .compatible = "fsl,imx8mq-dwc3" }, |
