# HG changeset patch # User Faisal Memon # Date 1283439996 -3600 # Node ID 0af9dd6c2c3a94cb447f8105f1cb063f7fd2c36e # Parent 2231338401dd3c4406ed2246e7ebba77513efc30 Update for Dynamic Frame Buffer Base Address diff -r 2231338401dd -r 0af9dd6c2c3a guestrendering/guestvideodriver/api/src/guestvideodriver.cpp --- a/guestrendering/guestvideodriver/api/src/guestvideodriver.cpp Thu Sep 02 11:20:15 2010 +0100 +++ b/guestrendering/guestvideodriver/api/src/guestvideodriver.cpp Thu Sep 02 16:06:36 2010 +0100 @@ -223,7 +223,7 @@ } // ----------------------------------------------------------------------------- -// RGuestVideDriver::MapToHWAddress +// RGuestVideDriver::GetFrameBufferBaseAddress // ----------------------------------------------------------------------------- // EXPORT_C TInt RGuestVideoDriver::GetFrameBufferBaseAddress( TUint32& aFrameBufferBaseAddress ) diff -r 2231338401dd -r 0af9dd6c2c3a guestrendering/guestvideodriver/ldd/group/virtualvideohwdevice.mmp --- a/guestrendering/guestvideodriver/ldd/group/virtualvideohwdevice.mmp Thu Sep 02 11:20:15 2010 +0100 +++ b/guestrendering/guestvideodriver/ldd/group/virtualvideohwdevice.mmp Thu Sep 02 16:06:36 2010 +0100 @@ -25,6 +25,8 @@ CAPABILITY all DEFFILE /epoc32/include/def/eabi/guestvideohw.def +EPOCALLOWDLLDATA + OS_LAYER_SYSTEMINCLUDE OS_LAYER_KERNEL_SYSTEMINCLUDE OS_LAYER_ESTLIB_SYSTEMINCLUDE diff -r 2231338401dd -r 0af9dd6c2c3a guestrendering/vghwutils/eabi/vghwutilsu.def --- a/guestrendering/vghwutils/eabi/vghwutilsu.def Thu Sep 02 11:20:15 2010 +0100 +++ b/guestrendering/vghwutils/eabi/vghwutilsu.def Thu Sep 02 16:06:36 2010 +0100 @@ -29,6 +29,8 @@ _ZN10CVghwUtils11VgApiForEglEv @ 28 NONAME _ZN10CVghwUtils15Gles11ApiForEglEv @ 29 NONAME _ZN10CVghwUtils14Gles2ApiForEglEv @ 30 NONAME + _ZN10CVghwUtils25GetFrameBufferBaseAddressERm @ 31 NONAME + diff -r 2231338401dd -r 0af9dd6c2c3a guestrendering/vghwutils/group/vghwutils.mmp --- a/guestrendering/vghwutils/group/vghwutils.mmp Thu Sep 02 11:20:15 2010 +0100 +++ b/guestrendering/vghwutils/group/vghwutils.mmp Thu Sep 02 16:06:36 2010 +0100 @@ -43,7 +43,7 @@ //nostrictdef LIBRARY euser.lib -LIBRARY platsimvideohwapi.lib +LIBRARY guestvideohwapi.lib LIBRARY vghwserialiser.lib #ifdef ENABLE_ABIV2_MODE diff -r 2231338401dd -r 0af9dd6c2c3a guestrendering/vghwutils/src/vghwutils.cpp --- a/guestrendering/vghwutils/src/vghwutils.cpp Thu Sep 02 11:20:15 2010 +0100 +++ b/guestrendering/vghwutils/src/vghwutils.cpp Thu Sep 02 16:06:36 2010 +0100 @@ -172,7 +172,7 @@ } break; case 2: - creationError = User::LoadLogicalDevice(_L("platsimvideohw")); + creationError = User::LoadLogicalDevice(_L("guestvideohw")); if ( (KErrNone == creationError) || (KErrAlreadyExists == creationError) ) { creationError = iDriver->Open(); @@ -803,10 +803,16 @@ // Use driver to discover base address of the frame memory. // ----------------------------------------------------------------------------- // -EXPORT_C TInt TVghwUtils::GetFrameBufferBaseAddress( TUint32& aHWAddress ) +EXPORT_C TInt CVghwUtils::GetFrameBufferBaseAddress( TUint32& aHWAddress ) { UTIL_TRACE("TVghwUtils::GetFrameBufferBaseAddress"); - return VghwSingleton.Driver().GetFrameBufferBaseAddress( aHWAddress ); + if (!iInitialized || !iDriver) + { + UTIL_TRACE("CVghwUtils::GetFrameBufferBaseAddress called before initialised VghwUtils: iInitialized=%d, iDriver=0x%x", iInitialized, iDriver); + InitStatics(); + } + VGHWPANIC_ASSERT(iInitialized && iDriver, EVghwPanicGraphicsDriverNotOpen); + return iDriver->GetFrameBufferBaseAddress( aHWAddress ); } #ifdef _DEBUG