Well, FBIO_GET_TIMING seems to be not supported in your kernel.
In DirectFB, initially, the screen size was fixed, later it was queried
using FBIOGET_VSCREENINFO,
and currently it is queried with the FBIO_GET_TIMING which is failing below.
I'm not sure if this will lead to further issues, but I noticed that 1
failure case is not
handled properly, so you might want to try the following patch:
diff --git a/src/core/layer_context.c b/src/core/layer_context.c
index d0a71b4..f0360ee 100644
--- a/src/core/layer_context.c
+++ b/src/core/layer_context.c
@@ -1491,6 +1491,7 @@ build_updated_config( CoreLayer
*layer,
/* Update source and destination rectangle. */
if (update->flags & (DLCONF_WIDTH | DLCONF_HEIGHT)) {
int width, height;
+ DFBResult ret;
flags |= CLRCF_SOURCE | CLRCF_DEST;
@@ -1501,10 +1502,11 @@ build_updated_config(
CoreLayer *layer,
switch (context->screen.mode) {
case CLLM_CENTER:
- dfb_screen_get_layer_dimension( layer->screen,
layer, &width, &height );
-
- ret_config->dest.x = (width - ret_config->width) / 2;
- ret_config->dest.y = (height - ret_config->height) / 2;
+ ret = dfb_screen_get_layer_dimension(
layer->screen, layer, &width, &height );
+ if( ret == DFB_OK ) {
+ ret_config->dest.x = (width -
ret_config->width) / 2;
+ ret_config->dest.y = (height -
ret_config->height) / 2;
+ }
/* fall through */
case CLLM_POSITION:
Otherwise, you should either revert the fix done on davinci_screen.c
http://git.directfb.org/?p=core/DirectFB.git;a=commitdiff;h=d261c76eb8c8a53bc8e2132f6b8905b58a01340d
or update/patch your kernel.. There are some DaVinci kernel patches
floating around..
Greets
Niels
LearnerMan wrote:
> I have installed DirectFB 1.2.3 on TI's DaVinci platform and after running a
> simple applicaton (Draws some text on screen) I get the following errors:
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.3 |~~~~~~~~~~~~~~~~~~~~~~~~~~
> (c) 2001-2008 The world wide DirectFB Open Source Community
> (c) 2000-2004 Convergence (integrated media) GmbH
> ----------------------------------------------------------------
>
> (*) DirectFB/Core: Single Application Core. (2008-09-15 16:14)
> (!) Direct/Modules: Unable to dlopen
> `/usr/lib/directfb-1.2-0/inputdrivers/libdirectfb_tslib.so'!
> --> libts-0.0.so.0: cannot open shared object file: No such file or
> directory
> (!) DirectFB/Keyboard: Could not open() /dev/tty0!
> --> No such file or directory
> (*) Davinci/Driver: Mapped fb0 with length 1658880 at 0x84e00000 to
> 0x4152c000
> (*) Davinci/Driver: Mapped fb1 with length 3760128 at 0x84800000 to
> 0x416c1000
> (*) Davinci/Driver: Mapped fb2 with length 1658880 at 0x84400000 to
> 0x41a57000
> (*) Davinci/Driver: Mapped fb3 with length 3760128 at 0x84000000 to
> 0x41bec000
> (!) Direct/Util: opening '/dev/c64x' failed
> --> No such device or address
> (!!!) *** WARNING [running without DSP acceleration] ***
> [davinci_gfxdriver.c:238 in driver_init_driver()]
> (*) DirectFB/Graphics: Texas Instruments Davinci 0.4 (Telio AG)
> (*) DirectFB/Core/WM: Default 0.3 (directfb.org)
> (!) davinciGetScreenSize: FBIO_GET_TIMING (fb448) failed!
> --> Invalid argument
> (!!!) *** WARNING [could not determine mixer/screen dimension of layer 0]
> *** [layer_context.c:1736 in screen_rectangle()]
> (!) davinciGetScreenSize: FBIO_GET_TIMING (fb448) failed!
> --> Invalid argument
> (!) DirectFB/core/layers: Could not set layer context config!
> --> Not supported!
> (!) InitLayers: Could not get primary region of layer 0!
> --> Not supported!
> DirectFBTest1.cpp <69>:
> (#) DirectFBError [DirectFBCreate( &dfb )]: Not supported!
>
--
.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/ |
"------------------------------------------"
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users