linux/drivers/usb/gadget/udc
Vladimir Zapolskiy 68726e772d usb: udc: lpc32xx: switch to clock prepare/unprepare model
The driver requires to prepare/unprepare clocks to work properly on a
platform with enabled common clock framework, otherwise unprepared
clocks are not enabled:

    WARNING: CPU: 0 PID: 1 at drivers/clk/clk.c:728 clk_core_enable+0x2c/0xf0()
    Modules linked in:
    CPU: 0 PID: 1 Comm: swapper Not tainted 4.3.0-rc2+ #284
    Hardware name: LPC32XX SoC (Flattened Device Tree)
    Backtrace:
    [<>] (dump_backtrace) from [<>] (show_stack+0x18/0x1c)
    [<>] (show_stack) from [<>] (dump_stack+0x20/0x28)
    [<>] (dump_stack) from [<>] (warn_slowpath_common+0x90/0xb8)
    [<>] (warn_slowpath_common) from [<>] (warn_slowpath_null+0x24/0x2c)
    [<>] (warn_slowpath_null) from [<>] (clk_core_enable+0x2c/0xf0)
    [<>] (clk_core_enable) from [<>] (clk_enable+0x24/0x38)
    [<>] (clk_enable) from [<>] (lpc32xx_udc_probe+0x284/0x924)
    [<>] (lpc32xx_udc_probe) from [<>] (platform_drv_probe+0x50/0xa0)
    [<>] (platform_drv_probe) from [<>] (driver_probe_device+0x18c/0x408)
    [<>] (driver_probe_device) from [<>] (__driver_attach+0x70/0x94)
    [<>] (__driver_attach) from [<>] (bus_for_each_dev+0x74/0x98)
    [<>] (bus_for_each_dev) from [<>] (driver_attach+0x20/0x28)
    [<>] (driver_attach) from [<>] (bus_add_driver+0x11c/0x248)
    [<>] (bus_add_driver) from [<>] (driver_register+0xa4/0xe8)
    [<>] (driver_register) from [<>] (__platform_driver_register+0x50/0x64)
    [<>] (__platform_driver_register) from [<>] (__platform_driver_probe+0x54/0x100)
    [<>] (__platform_driver_probe) from [<>] (lpc32xx_udc_driver_init+0x1c/0x28)
    [<>] (lpc32xx_udc_driver_init) from [<>] (do_one_initcall+0x11c/0x1dc)
    [<>] (do_one_initcall) from [<>] (kernel_init_freeable+0x10c/0x1d4)
    [<>] (kernel_init_freeable) from [<>] (kernel_init+0x10/0xec)
    [<>] (kernel_init) from [<>] (ret_from_fork+0x14/0x24)

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
2016-03-04 15:14:49 +02:00
..
bdc usb: gadget: bdc_udc: fix race condition in bdc_udc_exit() 2016-03-04 15:14:47 +02:00
amd5536udc.c usb: gadget: amd5536udc: NULL comparison 2015-10-01 12:40:22 -05:00
amd5536udc.h usb: gadget: amd5536udc: remove unnecessary conditions 2015-10-01 12:40:20 -05:00
at91_udc.c usb: gadget: at91_udc: add ep capabilities support 2015-08-04 12:26:38 -05:00
at91_udc.h usb: gadget: at91_udc: move at91_udc_data in at91_udc.h 2015-09-27 10:54:31 -05:00
atmel_usba_udc.c wrappers for ->i_mutex access 2016-01-22 18:04:28 -05:00
atmel_usba_udc.h usb: gadget: atmel_usba: use endian agnostic IO on ARM 2015-03-19 11:28:16 -05:00
bcm63xx_udc.c usb: gadget: bcm63xx_udc: use list_for_each_entry_safe 2015-12-22 12:08:40 -06:00
dummy_hcd.c usb: gadget: dummy_hcd: replace timeval with timespec64 2015-09-27 10:54:31 -05:00
fotg210-udc.c usb: gadget: fotg210-udc: add ep capabilities support 2015-08-04 12:26:41 -05:00
fotg210.h
fsl_mxc_udc.c
fsl_qe_udc.c usb: gadget: fsl_qe_udc: fix IS_ERR_VALUE usage 2016-02-17 16:32:44 +02:00
fsl_qe_udc.h
fsl_udc_core.c usb: gadget: fsl_udc_core: add ep capabilities support 2015-08-04 12:26:43 -05:00
fsl_usb2_udc.h
fusb300_udc.c usb: gadget: fusb300_udc: add ep capabilities support 2015-08-04 12:26:44 -05:00
fusb300_udc.h usb: gadget: fusb300_udc.h: Fix typo in include guard 2014-09-03 09:15:57 -05:00
goku_udc.c usb: gadget: goku_udc: add goku_match_ep() function 2015-08-06 09:34:46 -05:00
goku_udc.h
gr_udc.c usb : replace dma_pool_alloc and memset with dma_pool_zalloc 2015-12-01 14:26:33 -08:00
gr_udc.h usb: gadget: gr_udc: Add bounce buffer to handle odd sized OUT requests 2014-09-16 10:01:45 -05:00
Kconfig usb: gadget: renesas_usb3: Use ARCH_RENESAS 2016-03-04 15:14:48 +02:00
lpc32xx_udc.c usb: udc: lpc32xx: switch to clock prepare/unprepare model 2016-03-04 15:14:49 +02:00
m66592-udc.c usb: gadget: m66592-udc: add ep capabilities support 2015-08-04 12:26:46 -05:00
m66592-udc.h
Makefile usb: gadget: renesas_usb3: add support for Renesas USB3.0 peripheral controller 2015-12-22 21:58:15 -06:00
mv_u3d_core.c usb: gadget: drop null test before destroy functions 2015-09-21 14:42:36 -05:00
mv_u3d.h
mv_udc_core.c usb: gadget: drop null test before destroy functions 2015-09-21 14:42:36 -05:00
mv_udc.h
net2272.c usb: gadget: net2272: add ep capabilities support 2015-08-04 12:26:48 -05:00
net2272.h usb: gadget: net2272: use common is_selfpowered 2015-01-29 10:35:27 -06:00
net2280.c usb: gadget: net2280: restore ep_cfg after defect7374 workaround 2015-10-19 09:25:53 -05:00
net2280.h usb: gadget: net2280: fix endpoint max packet for super speed connections 2016-02-23 08:51:38 +02:00
omap_udc.c usb: gadget: omap_udc: add ep capabilities support 2015-08-04 12:26:50 -05:00
omap_udc.h
pch_udc.c usb: gadget: fix a trivial typo 2015-10-19 09:20:05 -05:00
pxa25x_udc.c usb: gadget: pxa25x_udc: document endianess better 2016-03-04 15:14:31 +02:00
pxa25x_udc.h usb: gadget: pxa25x_udc: use readl/writel for mmio 2016-03-04 15:14:29 +02:00
pxa27x_udc.c usb: gadget: pxa27x: fix suspend callback 2015-11-19 14:48:35 -06:00
pxa27x_udc.h usb: gadget: pxa27x_udc: add ep capabilities support 2015-08-04 12:26:52 -05:00
r8a66597-udc.c usb: gadget: r8a66597-udc: add ep capabilities support 2015-08-04 12:26:53 -05:00
r8a66597-udc.h
renesas_usb3.c usb: gadget: renesas_usb3: add support for Renesas USB3.0 peripheral controller 2015-12-22 21:58:15 -06:00
s3c2410_udc.c usb: gadget: s3c2410_udc: add ep capabilities support 2015-08-04 12:26:54 -05:00
s3c2410_udc.h
s3c-hsudc.c usb: gadget: s3c-hsudc: remove redundant condition 2015-12-16 10:07:27 -06:00
udc-core.c usb: gadget: provide interface for legacy gadgets to get UDC name 2016-03-04 15:14:35 +02:00
udc-xilinx.c usb: gadget: udc-xilinx: add ep capabilities support 2015-08-04 12:26:55 -05:00