This is not an odd setup. The buffers are allocated in other place by memory manager, and for decoupling the codec should not be aware of that, it just need to be called with pointers to in/out buffers. Believe me that we have good enough reason not to do the alloc and release from the codec. In addition, the codec is not aware at all to the big buffer, just to the pointers inside it.
In bottom line, I understand that I have to take CERuntimeInit/Exit out of the codecs in some way and there is no other way supplied by TI to cope with this problem (like unregister all the virtual addresses in one call without a specific pointer). Am I correct? Thanks, Erez -----Original Message----- From: Tivy, Robert [mailto:[email protected]] Sent: Wednesday, January 06, 2010 12:52 AM To: Erez Kinarti; Vladimir Pantelic; [email protected] Cc: [email protected] Subject: RE: Cmem address translation when working with Codec Engine This sounds like an odd setup, how are you even calling the codec if not through CE? Since the first codec is assuming responsibility for doing "first" things, like calling CERuntime_init(), can't it also call Memory_registerContigBuf()? From your earlier descriptions it sounds like you might need a way to inform this first codec of the (big CMEM) buffer size to register, but communicating that info sounds easier than tracking small buffer subdivisions. Regards, - Rob > -----Original Message----- > From: > [email protected] > p.com > [mailto:[email protected] > avincidsp.com] On Behalf Of Erez Kinarti > Sent: Tuesday, January 05, 2010 1:26 AM > To: Vladimir Pantelic; [email protected] > Cc: [email protected] > Subject: RE: Cmem address translation when working with Codec Engine > > No, because in my system, the first codec that is generated > is calling CERuntimeInit (working with C++, keeping reference > counter for the call to CERuntimeInit and CERuntimeExit), > while the system buffers are allocated before that. > > > -----Original Message----- > From: [email protected] > [mailto:[email protected] > ] On Behalf Of Vladimir Pantelic > Sent: Tuesday, January 05, 2010 11:15 AM > To: [email protected] > Cc: [email protected] > Subject: Re: Cmem address translation when working with Codec Engine > > Erez Kinarti wrote: > > Hey Rob, > > I see that calling the register functions require that CE is in the > air > > (CERuntimeInit) so it is problematic for us in the same way as doing > the > > CMEM allocations via CodecEngine. > > as you have to call CERuntimeInit() before using any of CE, > you can do the > Memory_registerContigBuf() after CERuntimeInit(), no? > > > _______________________________________________ > Davinci-linux-open-source mailing list > [email protected] > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source > > _______________________________________________ > Davinci-linux-open-source mailing list > [email protected] > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source > _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
