Peter Ujfalusi eda97cb095 dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available
If the router_xlate can not find the controller in the available DMA
devices then it should return with -EPORBE_DEFER in a same way as the
of_dma_request_slave_channel() does.

The issue can be reproduced if the event router is registered before the
DMA controller itself and a driver would request for a channel before the
controller is registered.
In of_dma_request_slave_channel():
1. of_dma_find_controller() would find the dma_router
2. ofdma->of_dma_xlate() would fail and returned NULL
3. -ENODEV is returned as error code

with this patch we would return in this case the correct -EPROBE_DEFER and
the client can try to request the channel later.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Link: https://lore.kernel.org/r/20210717190021.21897-1-peter.ujfalusi@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
2021-07-28 12:54:50 +05:30
..
2021-07-07 13:30:01 -07:00
2021-07-10 09:22:44 -07:00
2021-06-30 15:51:09 -07:00
2021-07-09 12:05:33 -07:00
2021-07-10 09:46:20 -07:00
2021-06-30 15:34:19 -06:00
2021-07-10 09:22:44 -07:00
2021-07-10 09:22:44 -07:00
2021-06-29 10:53:48 -07:00
2021-07-10 09:46:20 -07:00
2021-07-05 12:10:34 -07:00
2021-07-08 12:28:15 -07:00
2021-07-10 11:53:06 -07:00
2021-07-03 11:13:22 -07:00
2021-07-10 09:46:20 -07:00
2021-07-05 14:08:24 -07:00
2021-07-09 15:35:13 +02:00
2021-07-05 14:08:24 -07:00
2021-07-05 13:51:41 -07:00
2021-06-30 12:12:56 -07:00
2021-07-05 13:51:41 -07:00
2021-07-05 14:08:24 -07:00
2021-07-09 12:05:33 -07:00
2021-07-10 09:22:44 -07:00
2021-07-04 11:55:13 -07:00
2021-07-09 12:05:33 -07:00
2021-07-03 10:54:08 -07:00
2021-07-10 11:57:57 -07:00
2021-07-05 13:51:41 -07:00
2021-07-05 12:10:34 -07:00
2021-07-07 10:50:03 -07:00
2021-07-10 09:46:20 -07:00
2021-07-10 16:19:10 -07:00
2021-07-11 10:59:53 -07:00
2021-07-10 09:46:20 -07:00
2021-07-05 14:08:24 -07:00
2021-07-09 12:05:33 -07:00
2021-07-03 11:49:33 -07:00
2021-07-09 11:06:29 -07:00
2021-07-07 12:57:46 -07:00
2021-07-07 11:07:13 -07:00
2021-06-29 11:21:35 -07:00