I am currently working on building the 2.0 BSP (BSP_WINCE_ARM_A8_02_00_00_Source) for a platform using the OMAP3530 (beagleboard rev. c3) with WEC7 (completely updated as of yesterday). The BSP was given minor adjustments to support the beagleboard's DVI and USB-Host features. Currently, everything except for Silverlight works perfectly fine, but my project requires Silverlight support. I have looked over every Silverlight related post in this forum, and I have still not found a solution.
I have VRFB disabled, BSP_XRPLUGIN_OPENGL enabled, PowerVR SGX Core Revision 121 selected, and Silverlight catalog items added to the design (including photo viewer, video player, music player, xamlperf).
I have tried designs with and without 720p codec (currently without to ensure ram is not an issue), with and without the compositor (currently without due to a massive increase in performance), with both the standard shell and the Silverlight sample shell (currently standard), and at multiple resolutions (800x600 and 1280x720p).
If it is needed, i can get more information on my design from my current pbxml, but for now I will just explain what occurs when I try to use Silverlight based items.
The first Silverlight feature I have generally been testing with is XAMLPERF, the example silverlight on screen keyboard. What I have witnessed is that when Windows Compositor is on, opening XAMLPERF results in a frame being displayed that was entirely filled in black. With the compositor disabled, opening XAMLPERF results in a empty looking frame being displayed.With OAL Retail Messages enabled, I was able to see that each time XAMLPERF opened, an error would occur claiming that shaders.dll could not be found. I explored NK.bin to find that shaders.dll was not included, and I explored the release directory to find that shaders.dll was in the folder. Well hoping a hack would fix this issue, I added shaders.dll to platform.bib. The error went away, no additional errors occur, but the display issue with XAMLPERF did not.
I tested both the video player and music player, and found very similar display results to that of XAMLPERF. Interestingly enough, music and video produce audio when played despite the display issue. I noticed the video player windows is black when a video is being played with or without the compositor enabled. Furthermore, when a video is being played, the upper left corner of the screen has two overlapping buttons. On the top is what appears to be the fullscreen symbol used in video players, and on the bottom is what appears to be the symbol of a speaker used for volume in video players. Both buttons glow blue when clicked, but nothing happens. With OAL Retail Messages enabled and the compositor disabled, opening the video player, the music player, and the photo viewer causes an error that goes something like this:
PID:01D7023A TID:07B900F2 CEMP: Create AlchemyWindowPID:01D7023A TID:07B900F2 WS
EGL_CreateWindowDrawable(): Failed to get Alloc DDraw surfacePID:01D7023A TID:07
B900F2 ERROR: COpenGLDevice[1]::CreateDisplaySurface(): eglCreateWindowSurface()
= 0x3001PID:01D7023A TID:07B900F2 ERROR: COpenGLDevice::Initialize(), hr = 0x80
004005
I'm new to working with WinCE (or WEC, w/e they want to call it), and I haven't had much experience working with OpenGL, but based on another forum post I saw, I'm thinking that error is related to the compositor being disabled. Not really sure though, and since my Silverlight display issue occurs with or without the compositor, that doesn't really help the situation.
Moving on, PowerVR OpenGL demo's that come with the sample BSP's work (OGLES: 2FilmTV, 2Skybox2, 2Water, CoverFlow, OVase, Vase). I noticed that when the Window Compositor catalog item is disabled, the demos run smooth and fast, but with the compositor enabled, demo's drop in framerate by about 30% and run choppy and sluggish.
The last thing I thought may be worth mentioning is that I have plenty of ram free, so I don't suspect that is the issue. The system was struggling with 720p codecs enabled, so I disabled the feature and now I have no problem.
Any help would be appreciated, and if requested I will supply additional information.