Hi Andy,
Maybe you already knew. In the pmem driver (kernel version of DREAM, file mach-msm/board-trout.c), there are 2 instances of pmem. One of them is called "pmem", and another is called "pmem_adsp". I believe that "pmem_adsp" is none-cache. So go up to the pmem driver, I guess that "dev/pmem1" will be mapped as none-cache. So if OpenCore and SurfaceFlinger dealt with pmem1 only, then the memories are none-cache hence, they do not need to flush cache. I hope those would give you a hint to go further. I have not gone as far as using it in the Android environment. Mine did not even boot after I made a reserve of 16MB for pmem. If you knew something new, please share. Thank you, Neil --- On Thu, 7/9/09, Andy Quan <[email protected]> wrote: > From: Andy Quan <[email protected]> > Subject: [android-porting] PMEM cache flush operation > To: [email protected] > Date: Thursday, July 9, 2009, 9:09 PM > > Hi, > I am working on PMEM sharing between opencore and > surfaceflinger in Android 1.5. I find that PMEM can be > configured to be cacheable but there is no corresponding > cache flush ioctl for this device. > > Since PMEM is the dedicated physical memory for > android, there can be cases that a software video unit wants > to share YUV buffer without extra copy with hardware GPU > inside surfaceflinger. For SW video unit, it is unacceptable > to configure PMEM to be non-cacheable as there would > definitely be huge performance downgrade. > > > Any thoughts on this? > > -- > Thanks, > Andy > > > > > -- > Thanks, > Andy > > > > > > > --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [email protected] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
