Daniel Laird wrote: > So the problem I see is that in DirectFB 1.2.1 I am trying to allocate a > surface in devMem where as in DirectFB 1.2.0 I use my gfx_pool which is > correct. > I can see that in 1.2.0 it tries gfx_pool, then video_pool and then decides > that it will use the gfx_pool > Whereas in DirectFB 1.2.1 it tries gfx pool, then video pool and then > allocates using devmem.
The priority management has been improved, but the pools had the same priority. I just fixed that for the OSD pool in the Davinci driver and it allocates in the framebuffer device again, rather than /dev/mem. I also verified that the correct surface buffer indices are returned. Running "dfbdump -a" while df_andi is running: ~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.2.4 |~~~~~~~~~~~~~~~~~~~~~~~~~~ (c) 2001-2008 The world wide DirectFB Open Source Community (c) 2000-2004 Convergence (integrated media) GmbH ---------------------------------------------------------------- (*) DirectFB/Core: Multi Application Core. (2008-09-17 10:06) [ DEBUG ][ TRACE ] (*) Fusion/SHM: Using MADV_REMOVE (2.6.25.0 >= 2.6.19.2) (*) Direct/Thread: Started 'Fusion Dispatch' (-1) [MESSAGING OTHER/OTHER 0/0] <8388608>... (*) Davinci/Driver: Mapped fb0 with length 2880000 at 0x84000000 to 0x42bde000 (*) Davinci/Driver: Mapped fb1 with length 2880000 at 0x842c0000 to 0x42e9e000 (*) Davinci/Driver: Mapped fb2 with length 720000 at 0x84580000 to 0x4315e000 (*) Davinci/Driver: Mapped fb3 with length 2880000 at 0x84630000 to 0x4320e000 (*) Davinci/C64X: Low ARM 12641 / DSP 12641, High ARM 0 / DSP 0 (*) DirectFB/Graphics: Texas Instruments Davinci 0.4 (Telio AG) DirectFB uptime: 00:00:23 -----------------------------[ Surfaces ]------------------------------------- Reference FID . Refs Width Height Format Video System Capabilities ------------------------------------------------------------------------------ 0x0000000b [ 1] : 2 992 x 32 ARGB 0k* 124k* premultiplied 0x0000000a [ 1] : 2 118 x 98 RGB32 0k 45k 0x00000009 [ 1] : 2 800 x 600 RGB16 937k 937k 0x00000008 [ 1] : 3 400 x 240 RGB16 187k 187k 0x00000007 [ 1] : 4 800 x 600 RGB16 2812k* 0k* video only triple 0x00000004 [ 1] : 2 800 x 600 RGB16 0k 0k video only double ------ ------ 3937k 1294k -> 5231k total ----------------------------------[ Contexts of Layer 0 ]---------------------------------------- Reference FID . Refs Width Height Format Location on screen Regions Active Info Level ------------------------------------------------------------------------------------------------- 0x00000005 [ 1] : 2 800 x 600 RGB16 0.0, 0.0 -> 1.0, 1.0 1 (*) PRIVATE N/A 0x00000002 [ 1] : 4 800 x 600 RGB16 0.0, 0.0 -> 1.0, 1.0 1 SHARED N/A --------------------[ Surface Buffer Allocations in Shared Memory ]------------------- Offset Length Width Height Format Role Up nA ID Usage Type / Storage / Caps -------------------------------------------------------------------------------------- --------------------[ Surface Buffer Allocations in System Memory ]------------------- Offset Length Width Height Format Role Up nA ID Usage Type / Storage / Caps -------------------------------------------------------------------------------------- 0 192000 400 x 240 RGB16 front * 2 0 PRIVATE 0 960000 800 x 600 RGB16 front * 2 0 PRIVATE 0 46256 118 x 98 RGB32 front * 1 0 PRIVATE 0 126976 992 x 32 ARGB front * 1 0 PRIVATE FONT premultiplied --------------------[ Surface Buffer Allocations in Preallocated Memory ]------------------- Offset Length Width Height Format Role Up nA ID Usage Type / Storage / Caps -------------------------------------------------------------------------------------------- --------------------[ Surface Buffer Allocations in /dev/mem ]------------------- Offset Length Width Height Format Role Up nA ID Usage Type / Storage / Caps --------------------------------------------------------------------------------- 32594368 960000 800 x 600 RGB16 front * 2 0 PRIVATE 32402304 192000 400 x 240 RGB16 front * 2 0 PRIVATE --------------------[ Surface Buffer Allocations in OSD Pool ]------------------- Offset Length Width Height Format Role Up nA ID Usage Type / Storage / Caps --------------------------------------------------------------------------------- 960000 960000 800 x 600 RGB16 back * 1 0 PRIVATE LAYER EXTERNAL video only triple 0 960000 800 x 600 RGB16 front * 1 0 PRIVATE LAYER EXTERNAL video only triple 1920000 960000 800 x 600 RGB16 idle * 1 0 PRIVATE LAYER EXTERNAL video only triple dfbdump -p: -------------------------------------[ Surface Buffer Pools ]------------------------------------ Name Priority CrCw GrGw Sh Used/Capacity Usage Storage Resource Types ------------------------------------------------------------------------------------------------- Shared Memory DEFAULT * * * 0/ 0k SHARED INTERNAL LAYER WINDOW CURSOR FONT System Memory PREFERED * * 1294/ 0k INTERNAL FONT Preallocated Memory DEFAULT * * 0/ 0k /dev/mem DEFAULT * * * * * 1125/ 0k SHARED EXTERNAL LAYER WINDOW CURSOR FONT OSD Pool PREFERED * * * * * 2812/ 0k SHARED EXTERNAL LAYER -- Best regards, Denis Oliver Kropp .------------------------------------------. | DirectFB - Hardware accelerated graphics | | http://www.directfb.org/ | "------------------------------------------" _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev