HI Peter, On 09-11-20, 14:09, Peter Ujfalusi wrote: > Hi Vinod, > > On 09/11/2020 13.45, Vinod Koul wrote: > >> Without a channel number I can not do anything. > >> It is close to a chicken and egg problem. > > > > We get 'channel' in xlate, so wont that help? I think I am still missing > > something here :( > > Yes, we get channel in xlate, but we get the channel after > ofdma->of_dma_route_allocate() That is correct, so you need this info in allocate somehow.. > of_dma_route_allocate() si the place where DMA routers create the > dmaspec for the DMA controller to get a channel and they up until BCDMA > did also the HW configuration to get the event routed. > > For a BCDMA channel we can have three triggers: > Global trigger 0 for the channel > Global trigger 1 for the channel > Local trigger for the channel > > Every BCDMA channel have these triggers and for all of them they are the > same (from the channel's pow). > bchan0 can be triggered by global trigger 0 > bchan1 can be triggered by global trigger 0 > > But these triggers are not the same ones, the real trigger depends on > the router, which of it's input is converted to send out an event to > trigger bchan0_trigger0 or to trigger bchan1_trigger0. > > When we got the channel with the dmaspec from the router driver then we > need to tell the router driver that it needs to send a given event in > order to trigger the channel that we got. > > We can not have traditional binding for BCDMA either where we would tell > the bchan index to be used because depending on the resource allocation > done within sysfw that exact channel might not be even available for us. > > - Péter > > Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. > Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki -- ~Vinod