1. Yes you need CMEM buffers for the DVEVM demos.

-----Original Message-----
From: Ring, Chris 
Sent: Monday, December 18, 2006 6:08 AM
To: George Gu; Anderberg, Niclas; [email protected]
Subject: RE: RE: RE: CMEM and video driver issues, need your help

1.  Not sure - Niclas (and others) can probably tell you.  I _think_ you'll 
still need CMEM, as there are at least intermediate buffers which CMEM is used 
for... but I'll defer to somebody else as I don't know the demos very well.  
You can grep the demos for "Memory_allocContig" - if you find it, there's a 
dependency on CMEM.

2.  CMEM is 100% ARM-side, so DSP servers don't have a dependency.  Link 
doesn't have a dependency either.  Only these have dependencies:
   * Codec Engine's ARM-side libraries (when "remote" codecs are used).  In 
that configuration, CE's Memory_allocContig() APIs are implemented using CMEM.
   * Applications (like the demos) are allowed to call CMEM APIs if they wish.  
I'd recommend using the Memory_allocContig() APIs - as they're portable to 
other environments - but if portability isn't important, you can call CMEM 
API's directly.

Chris

> -----Original Message-----
> From: George Gu [mailto:[EMAIL PROTECTED]
> Sent: Sunday, December 17, 2006 8:56 PM
> To: Ring, Chris; Anderberg, Niclas;
> [email protected]
> Subject: RE: RE: RE: CMEM and video driver issues, need your help
> 
>  
> Chris,
> 
> Thanks first. 
> 
> There are two more questions:
> 1. If I use current demos from DVEVM, like H.264 encode/decode, my 
> application will not need CMEM?
> 2. Which modules depend on CMEM in current TI software framework? 
> DSPLINK or
> CODEC SERVER or both?   
> 
> George Gu
> (Xiangyu Gu)
> Wintech Digital System Co.
> Beijing, China
> Ph: 8610-8278-2828 ext.168
> Fax: 8610-8278-0028
> http://www.wintechdigtal.com
> ----------------------------
> 
> -----Original Message-----
> From: Ring, Chris [mailto:[EMAIL PROTECTED]
> Sent: 2006年12月18日 11:25
> To: George Gu; Anderberg, Niclas;
> [email protected]
> Subject: Fwd: RE: RE: CMEM and video driver issues, need your help
> 
> 1.  The only requirement is that the inBufs and outBufs buffers which 
> the DSP operates on must be physically contiguous.  The user can 
> achieve this in several ways - one way is to get the buffers from a 
> driver which ensures they're contiguous (like vpfe, as Niclas 
> describes).  Another way to get contiguous buffers, if there is no 
> driver involved (e.g.
> transcoding from
> one file format to another) is to use buffers provided by CMEM (or 
> using the portable Codec Engine Memory_allocContig() API calls).
> 
> Again, Codec Engine doesn't care _how_ the application gets the 
> contiguous buffers; CMEM or otherwise.
> 
> 2.  When the DSP decodes a video frame, the decoded frame is written 
> into the outBufs, provided to the VIDDEC_process() call.  These 
> outBufs are provided by the application; and as described in #1, they 
> must be physically contiguous, and can be acquired however the 
> application wishes.
> 
> Chris
> 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > ] On Behalf Of George Gu
> > Sent: Sunday, December 17, 2006 5:54 PM
> > To: Anderberg, Niclas;
> [email protected]
> > Subject: RE: RE: CMEM and video driver issues, need your help
> > 
> > Nicals,
> > 
> > Thanks for your reply. I read your mail and have  new questions:
> > 
> > 1. If CMEM does not copy data, then what is the usage of
> the pools of
> > CMEM?
> > 2. When DSP decode a video frame, it will put the raw data
> in to DSP
> > memory section----DDRALGHEAP, is it right? If yes, how
> these data can
> > be got by Linux Application? e.g. DSP will copy these data
> into CMEM
> > buffer pool?
> > 
> > Thanks
> > 
> > 
> > 
> > George Gu
> > (Xiangyu Gu)
> > Wintech Digital System Co.
> > Beijing, China
> > Ph: 8610-8278-2828 ext.168
> > Fax: 8610-8278-0028
> > http://www.wintechdigtal.com
> > ----------------------------
> > 
> > -----Original Message-----
> > From:
> > [EMAIL PROTECTED]
> > ncidsp.com
> > [mailto:[EMAIL PROTECTED]
> > nux.davincidsp
> > .com] On Behalf Of Anderberg, Niclas
> > Sent: 2006年12月15日 20:43
> > To: George Gu; [email protected]
> > Subject: Fwd: RE: CMEM and video driver issues, need your help
> > 
> > George,
> > 
> > 1) The constraint for the DSP algorithms (actually the DSP core
> > itself) is that they have to work on contiguous buffers. The vpfe 
> > device driver allocates it's own contiguous frame buffers in kernel 
> > mode and doesn't need CMEM.
> > 
> > 2) Codec Engine doesn't copy the frame buffers, it just passes a 
> > pointer.
> > The DSP and ARM *physical* memory maps are identical on Davinci.
> > 
> > 3) loadmodules.sh contains the worst case for any of the encode, 
> > decode or encodedecode demos running (but not
> simultaneously). If you
> > only ever use one of the demos your pool selection would look 
> > different.
> > For the demos,
> > you can find every Memory_contigAlloc() call and see what the worst 
> > case buffer sizes are and put these in loadmodules.sh.
> > 
> > 4) Non-cacheable from the ARM, but Codec Engine does manage
> cache for
> > these buffers from a DSP standpoint.
> > 
> > Regards,
> > Niclas
> > 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > ] On Behalf Of
> > George Gu
> > Sent: Friday, December 15, 2006 8:24 AM
> > To: [email protected]
> > Subject: CMEM and video driver issues, need your help
> > 
> >  All,
> > 
> > There are some questions about CMEM and video driver, which
> need your
> > help.
> > 
> > 1.  Does vpfe capture buffers located in Linux Memory space? 
> > If yes, how
> > does them be transferred to DSP? I guess CODEC Engine will
> copy them
> > into CMEM buffer pool first and then DSP will use these
> data in CMEM
> > buffer pool, is it right?
> > 
> > 2. Base on question 1, CODEC ENGINE copy the capture data
> use DMA? or
> > memory copy?
> > 
> > 3. When insert CMEM.ko, there are some parameters, such as
> pool counts
> > and pool size, how can I determine these parameters when I use a 
> > certain codec combos, such as H264 encoder+ H264 decoder+mpeg4 
> > decoder???
> > In TI's H264
> > encodedecode demo, I found
> "pools=1x3145728,3x829440,1x61440,1x10240"
> > (loadmodules.sh), why there is a pool with 3145728 byte?
> > 
> > 4. The CMEM memory is non-cacheable both for ARM and DSP?
> > 
> > 
> > Thanks very much.
> > 
> > George Gu
> > (Xiangyu Gu)
> > Wintech Digital System Co.
> > Beijing, China
> > Ph: 8610-8278-2828 ext.168
> > Fax: 8610-8278-0028
> > http://www.wintechdigtal.com
> > 
> > _______________________________________________
> > 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
> > 
> 
> 
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to