
On 02/06/2018 03:25 PM, Jagan Teki wrote:
Filling musb_hdrc pdata using structure will unnecessary add extra ifdefs, so fill them inside probe call for better code understanding and get rid ifdefs using devicetree compatible.
Signed-off-by: Jagan Teki jagan@amarulasolutions.com
drivers/usb/musb-new/sunxi.c | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-)
diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c index 3f3b898..0b7ff9f 100644 --- a/drivers/usb/musb-new/sunxi.c +++ b/drivers/usb/musb-new/sunxi.c @@ -308,22 +308,12 @@ static struct musb_hdrc_config musb_config = { .ram_bits = SUNXI_MUSB_RAM_BITS, };
-static struct musb_hdrc_platform_data musb_plat = { -#if defined(CONFIG_USB_MUSB_HOST)
- .mode = MUSB_HOST,
-#else
- .mode = MUSB_PERIPHERAL,
-#endif
- .config = &musb_config,
- .power = 250,
- .platform_ops = &sunxi_musb_ops,
-};
static int musb_usb_probe(struct udevice *dev) { struct sunxi_glue *glue = dev_get_priv(dev); struct musb_host_data *host = &glue->mdata; struct usb_bus_priv *priv = dev_get_uclass_priv(dev);
- struct musb_hdrc_platform_data pdata;
Make this pdata = musb_plat and then tweak pdata down below to avoid assigning all the values there.
void *base = dev_read_addr_ptr(dev); int ret;
@@ -336,8 +326,13 @@ static int musb_usb_probe(struct udevice *dev)
priv->desc_before_addr = true;
- pdata.power = 250;
- pdata.platform_ops = &sunxi_musb_ops;
- pdata.config = &musb_config;
#ifdef CONFIG_USB_MUSB_HOST
- host->host = musb_init_controller(&musb_plat, &glue->dev, base);
- pdata.mode = MUSB_HOST;
- host->host = musb_init_controller(&pdata, &glue->dev, base); if (!host->host) return -EIO;
@@ -345,7 +340,8 @@ static int musb_usb_probe(struct udevice *dev) if (!ret) printf("Allwinner mUSB OTG (Host)\n"); #else
- ret = musb_register(&musb_plat, &glue->dev, base);
- pdata.mode = MUSB_PERIPHERAL;
- ret = musb_register(&pdata, &glue->dev, base); if (!ret) printf("Allwinner mUSB OTG (Peripheral)\n");
#endif