Jon Dufresne wrote: > What is necessary for the StretchBlit call to work properly? Does this > need to be implemented in the linux framebuffer driver, the DirectFB > driver, or both?
The DirectFB driver. > If I wanted to add this support to the intel driver, what would be the > best place to start? Ah, the Intel driver! I am also interested in getting stretch-blit in this driver, so do please let me know how you get on. Here's the story: in the past I have made various bits of kit using VIA mini-ITX and similar boards (e.g. a nice digital picture frame). This all works fairly well using DirectFB's VIA driver, including stretch-blits. Recently I decided to buy one of those new mini-notebooks to run the same software. Although some are VIA based (i.e. the HP) most have an Intel chipset (e.g. the ASUS Eee). The general net.opinion of VIA vs. Intel seems to be that VIA are not so Linux-friendly whereas Intel are more open i.e. their chips have freely-available documentation and in-kernel drivers. So although buying a VIA notebook would have let me run the same code that I have on my mini-ITX systems, I thought that an Intel one would be at least as well supported. I bought an Eee 901. Unfortunately, I was wrong about the Intel support. The intel chips are actually LESS well supported than the VIA ones. Specifically, the kernel intelfb driver didn't support the chip in the Eee at all. I've submitted a patch to fix that, but it still doesn't support mode switching on laptops; you're stuck with the mode that the BIOS chooses, which is not the panel's native resolution. It also doesn't have any support for switching the laptop's VGA port, which was fairly important for my application. The VIA drivers, although not (yet) in the official kernel distribution, support both of these features. (As an aside, the most obvious solution to all this is to use X instead of DirectFB; the X driver for the intel chips is more functional.) Then there's the question of the DirectFB support. My understanding, based on an old message to this list that Google found for me, had been that the existing DirectFB intel driver provided no acceleration at all, but only video overlay functions! I now realise that that's the i830 driver, and that my 945GME needs the i810 driver which does accelerate the basic 2D operations (right?). (Didn't there used to be a table on the website somewhere showing which drivers accelerated which functions? I can't find it now.) But it's still rather academic as that still needs the intelfb kernel driver which I can't use. (And it turns out that the processor is sufficiently fast, and the screen sufficiently small, that software rendering works well enough for the time being. The only thing I really miss is interpolated scaling.) Anyway, Jon do let me know how you progress with stretch-blit. I'm far from a DirectFB expert but I have spent some time looking at the code, so I may be able to help. I guess that basically once you know how the hardware has to be programmed to perform the operation, you'll just need to add some code to i810.c that's similar in structure to the existing un-stretched versions. Regards, Phil. _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev