diff options
author | Clément Léger <clement.leger@bootlin.com> | 2021-07-28 12:46:07 +0300 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2021-07-28 13:49:26 +0300 |
commit | 258cb692b82025d0e6e1cccb72baa60ff78d0ce8 (patch) | |
tree | ba49121409a8d76d1922ac8bc250873a0986df20 /drivers/dma | |
parent | 059e969c2a7d9efb463c0d8c574f1b3f1e010bed (diff) | |
download | linux-258cb692b82025d0e6e1cccb72baa60ff78d0ce8.tar.xz |
dmaengine: at_xdmac: use platform_driver_register
When using SCMI clocks, the clocks are probed later than subsys initcall
level. This driver uses platform_driver_probe which is not compatible with
deferred probing and won't be probed again later if probe function fails
due to clocks not being available at that time.
This patch replaces the use of platform_driver_probe with
platform_driver_register which will allow probing the driver later again
when clocks will be available.
Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Link: https://lore.kernel.org/r/20210728094607.50589-1-clement.leger@bootlin.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/at_xdmac.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/dma/at_xdmac.c b/drivers/dma/at_xdmac.c index 64a52bf4d737..ab78e0f6afd7 100644 --- a/drivers/dma/at_xdmac.c +++ b/drivers/dma/at_xdmac.c @@ -2240,10 +2240,16 @@ static struct platform_driver at_xdmac_driver = { static int __init at_xdmac_init(void) { - return platform_driver_probe(&at_xdmac_driver, at_xdmac_probe); + return platform_driver_register(&at_xdmac_driver); } subsys_initcall(at_xdmac_init); +static void __exit at_xdmac_exit(void) +{ + platform_driver_unregister(&at_xdmac_driver); +} +module_exit(at_xdmac_exit); + MODULE_DESCRIPTION("Atmel Extended DMA Controller driver"); MODULE_AUTHOR("Ludovic Desroches <ludovic.desroches@atmel.com>"); MODULE_LICENSE("GPL"); |