Re: OpenGL-based framebuffer concepts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jon Smirl wrote:
On 5/25/06, Jeff Garzik <[email protected]> wrote:
* Review Dave Airlie's posts, he's been pretty spot-on in this thread.
There needs to be a lowlevel driver that handles PCI functionality, and
registers itself with the fbdev and DRM layers.  The fbdev/DRM
registrations need to be aware of each other.  Once that is done, work
will proceed more rapidly.

Controlling which driver is bound to the hardware is an easy problem
that a low level driver handles nicely. But controlling binding
doesn't really fix anything. All of the drivers binding to it still
have to duplicate all of the code for things like VRAM allocation, GPU
start/stop, mode setting, etc. That's because the second level drivers
can't count on the other drivers being loaded. The giant mess of whose
state is loaded into the hardware still exists too. Just consider the
simple problem of who EOI's an interrupt.

In Linux, the lowlevel driver registers irq handlers, so your simple problem has the simple and obvious answer. Further, reviewing my statement above, if fbdev/DRM are aware of each other, and if they both are layered on top of the lowlevel driver, then it should also be obvious that they are cooperatively sharing resources, not competing against one another.


I would instead start by making fbdev the low level driver. DRM could
then bind to it and redundant code in DRM could be removed. 90% of the
code in fbdev is always needed.  Hopefully X could be convinced to use

Take your pick. An fbdev driver is nothing but a PCI driver that registers itself with the fbdev subsystem. Ditto a DRM driver, though the DRM and agpgart layering is royally screwed up ATM. Regardless, he who codes, wins.


the services offered by the fbdev/DRM pair. New memory management code

No "hopefully." X must be forced to use this driver, otherwise the system is unworkable.


would be added to this base driver since everyone needs it. Fbdev

If fbdev and DRM are cooperating, then obviously they will cooperate when managing resources. GPU memory is but one example of a resource.


would also pick up the ability to reset secondary cards at boot.

But if you think the kernel will grow an x86 emulator, you're dreaming. That's what initramfs and friends are for.

	Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux