Message ID | 1443115737-3948-4-git-send-email-alex.popov@linux.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Anatolij Gustschin |
Headers | show |
Alexander Popov wrote: > Initialize Freescale MPC512x DMA driver with subsys_initcall() > to allow the depending drivers to call dma_request_slave_channel() > during their probe. > > Signed-off-by: Alexander Popov<alex.popov@linux.com> Is there any way we can use -EPROBEDEFER instead?
On 25.09.2015 03:16, Timur Tabi wrote: > Alexander Popov wrote: >> Initialize Freescale MPC512x DMA driver with subsys_initcall() >> to allow the depending drivers to call dma_request_slave_channel() >> during their probe. >> >> Signed-off-by: Alexander Popov<alex.popov@linux.com> > > Is there any way we can use -EPROBEDEFER instead? Thanks Timur, I'll try. Best regards, Alexander
On Thu, Sep 24, 2015 at 08:28:57PM +0300, Alexander Popov wrote: > Initialize Freescale MPC512x DMA driver with subsys_initcall() > to allow the depending drivers to call dma_request_slave_channel() > during their probe. Why can't we use defered probe ? I have been asking people to not move init levels and esnure we have right solutions using defered probe
On 07.10.2015 17:17, Vinod Koul wrote: > On Thu, Sep 24, 2015 at 08:28:57PM +0300, Alexander Popov wrote: >> Initialize Freescale MPC512x DMA driver with subsys_initcall() >> to allow the depending drivers to call dma_request_slave_channel() >> during their probe. > > Why can't we use defered probe ? I have been asking people to not move init > levels and esnure we have right solutions using defered probe Thanks, Vinod, I'll do it in v4. Best regards, Alexander
diff --git a/drivers/dma/mpc512x_dma.c b/drivers/dma/mpc512x_dma.c index e6281e7..4f29d7c 100644 --- a/drivers/dma/mpc512x_dma.c +++ b/drivers/dma/mpc512x_dma.c @@ -1083,7 +1083,17 @@ static struct platform_driver mpc_dma_driver = { }, }; -module_platform_driver(mpc_dma_driver); +static int __init mpc_dma_driver_init(void) +{ + return platform_driver_register(&mpc_dma_driver); +} +subsys_initcall(mpc_dma_driver_init); + +static void __exit mpc_dma_driver_exit(void) +{ + platform_driver_unregister(&mpc_dma_driver); +} +module_exit(mpc_dma_driver_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Piotr Ziecik <kosmo@semihalf.com>");
Initialize Freescale MPC512x DMA driver with subsys_initcall() to allow the depending drivers to call dma_request_slave_channel() during their probe. Signed-off-by: Alexander Popov <alex.popov@linux.com> --- drivers/dma/mpc512x_dma.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-)