I have a Intel 945GM chipset. I started using DirectFB using the i830 driver. The primary screen layer works just fine and I can see my graphics/video appear as you would expect. However, if I attempt to use the overlay instead (layer 01), then the system will reboot during initialization.
I traced this down to the following in the file DirectFB-1.2.3/gfxdrivers/i830/i830_overlay.c function ovl_calc_regs(). On the line that reads: /* Set buffer pointers */ y_offset = dfb_gfxcard_memory_physical( NULL, lock->offset ); This y_offset is eventually placed into the OBUF_0Y hardware register. It looks to me that this expects an *offset* from the beginning of the overlay memory address and not the actual address. I believe the line above is attempting to fill it with an actual address. The description from the Intel docs: ---- Overlay Buffer 0 Y Linear Offset: This is the offset for the Y planar or YUV packed color data. This value is added to the surface address to get the graphics address of the first pixel to be displayed. It must be pixel aligned (e.g., low order bit is zero for 16-bpp packed formats). This offset is the difference between the address of the upper left pixel to be displayed and the overlay surface address. When mirroring horizontally (X backward) this field points to first byte of the last pixel of the line. ---- If I change the line above to: y_offset = 0; While I don't observe correct behavior I no longer experience the system reboots so I think this is on the right track. Curious if anyone else has experienced this or has worked on the overlay for the Intel driver. Jon _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev