diff --git a/arch/mips/jz4740/platform.c b/arch/mips/jz4740/platform.c index c55ff0a..1be41e2 100644 --- a/arch/mips/jz4740/platform.c +++ b/arch/mips/jz4740/platform.c @@ -64,20 +64,6 @@ struct platform_device jz4740_udc_xceiv_device = { .id = 0, }; -static struct musb_hdrc_config jz4740_udc_config = { - /* Silicon does not implement USB OTG. */ - .multipoint = 0, - /* Max EPs scanned, driver will decide which EP can be used. */ - .num_eps = 4, - /* RAMbits needed to configure EPs from table */ - .ram_bits = 9, -}; - -static struct musb_hdrc_platform_data jz4740_udc_platform_data = { - .mode = MUSB_PERIPHERAL, - .config = &jz4740_udc_config, -}; - static struct resource jz4740_udc_resources[] = { [0] = { .start = JZ4740_UDC_BASE_ADDR, @@ -98,7 +84,6 @@ struct platform_device jz4740_udc_device = { .dev = { .dma_mask = &jz4740_udc_device.dev.coherent_dma_mask, .coherent_dma_mask = DMA_BIT_MASK(32), - .platform_data = &jz4740_udc_platform_data, }, .num_resources = ARRAY_SIZE(jz4740_udc_resources), .resource = jz4740_udc_resources, diff --git a/drivers/usb/musb/jz4740.c b/drivers/usb/musb/jz4740.c index 99355a1..cf4867f 100644 --- a/drivers/usb/musb/jz4740.c +++ b/drivers/usb/musb/jz4740.c @@ -85,6 +85,20 @@ static irqreturn_t jz4740_musb_interrupt(int irq, void *__hci) return retval; } +static struct musb_hdrc_config jz4740_musb_config = { + /* Silicon does not implement USB OTG. */ + .multipoint = 0, + /* Max EPs scanned, driver will decide which EP can be used. */ + .num_eps = 4, + /* RAMbits needed to configure EPs from table */ + .ram_bits = 9, +}; + +static struct musb_hdrc_platform_data jz4740_musb_platform_data = { + .mode = MUSB_PERIPHERAL, + .config = &jz4740_musb_config, +}; + static int jz4740_musb_init(struct musb *musb) { musb->xceiv = usb_get_phy(USB_PHY_TYPE_USB2); @@ -119,17 +133,12 @@ static const struct musb_platform_ops jz4740_musb_ops = { static int jz4740_probe(struct platform_device *pdev) { - struct musb_hdrc_platform_data *pdata = pdev->dev.platform_data; + struct musb_hdrc_platform_data *pdata = &jz4740_musb_platform_data; struct platform_device *musb; struct jz4740_glue *glue; struct clk *clk; int ret; - if (!pdata) { - dev_err(&pdev->dev, "failed to allocate platform data\n"); - return -EINVAL; - } - glue = devm_kzalloc(&pdev->dev, sizeof(*glue), GFP_KERNEL); if (!glue) return -ENOMEM;