Subject: Re: Why not track our xsrc with X11R6.6 from X.org?
To: Simon Burge <simonb@wasabisystems.com>
From: Todd Vierling <tv@wasabisystems.com>
List: current-users
Date: 07/19/2001 22:53:02
On Wed, 18 Jul 2001, Simon Burge wrote:

: I'm currently doing some work towards this.  The basic structure is to
: add ioctl's at the wsdisplay/wscons level to deal with:
:
:   1) Determining the framebuffer bus type, location and identity.  An
:      example is:
: 	"pci:1:0:0 i:0x4c461002 s:0x00cc1028 c:0x03000002"
:   2) Determining allowable mmap()able ranges and handle mapping them.
:   3) Provide bus-dependant access - the only one implemented so far is
:      pci config space reads and writes.
:
: Most of the rest of the work is in the X server itself, mainly just
: generalising device configuration to use the new ioctls.  At the moment
: I'm targeting PCI devices, so the X server doesn't need to scan the PCI
: bus(es) looking for framebuffers - it just knows that it can get all the
: info from the wscons device.

From what I've gleaned from this and other discussions, what we need is a
kernel interface that does exactly three things:

1. determine the mmap-allowable data area of a card
2. arbitrate writes to control registers
3. validate DMA values used in control registers before an actual write to
   those registers is performed

This shouldn't be a difficult thing, but it would likely require that XFree
supply some level of abstraction to make (2) and (3) work -- because the
hardware vendor needs to write the code for (2) which will call our supplied
hooks for (3).

-- 
-- Todd Vierling <tv@wasabisystems.com>  *  Wasabi NetBSD:  Run with it.
-- NetBSD 1.5 now available on CD-ROM  --  http://www.wasabisystems.com/