On 08/04/2017 04:21 PM, Peter Ujfalusi wrote: > On 08/04/2017 03:50 PM, Pierre Yves MORDRET wrote: >> Our DMAMUX can manage up to 255 request lines (only 128 is eventually assigned >> though) onto 16 events: 8 events mapped on 1 DMA and the 8 others onto the >> second DMA. Request line numbering is fixed (a peripheral DMA request is >> assigned to one MUX input) and but can be routed randomly onto the any 16 >> channels. We use chanID to mux input on event. >> chanID given by dma_get_any_slave_channe is enough in our case. > > I would think that if you have in the router node: > dma-masters = <&dma1>, <&dma2>; > > and request a DMA via the router: > dmas = <&dma_router req_in param1 param2>; > > then the router driver would decide which dma-master it is going to assign the > given request line and craft the dma-spec based on this decision. This > requires no callback to the router from the DMA master driver at all. > > The idea of the dma event router is to be transparent for the DMA clients > (peripherals needing DMA channel) and for the DMA drivers as well. Neither > should know that the events are muxed as it does not really matter for them. > OK. I will redesign my driver to take into account this idea. I believe I should get rid of my custom API in DMA for channelID as well. Please confirm. Not very clear for me whether I can keep it or not. Regards PY -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html