Does Xfbdev support dual-head configuration??

Alex Deucher alexdeucher at gmail.com
Thu Dec 17 08:07:13 PST 2009


On Thu, Dec 17, 2009 at 6:12 AM, prudhvi raj <prudhviraj.v at gmail.com> wrote:
> Thank you very much for your valuable inputs Mr Alex and Adam.
>
> I am still a bit confused about where exactly this dual-head implementation
> exists and how to make it up using tinyx server.
>
> As per your replies i understand that in order to make dual-head working
> using an Xserver it should have one of the below features
> - XRandR extension with dual-head support or
> - graphics driver associated with the X server (fbdev incase of Xfbdev
> server) should implement the logic of mapping the framebuffer on to two
> monitors. As fbdev being a generic driver written for linux framebuffer
> device it does not have dual head implemented as all cards may not have
> hardware configuration required to support dual-head.
>
> Am i right??
>
> Actually my objective is to run a tinyx server (preferably Xfbdev as it
> succesfully runs on my target) on an e-book target and enable dual-head
> display on it.
>
> So In order to acheive this should i alter the fbdev driver (in Xfbdev) to
> map it on to two different displays?? Or a is this the job of RnadR/XINERAMA
> extensions??
>
> Or Tinyx does not support dual-head at all?? I mean Kdrive itself does not
> support dual-head??
>
> i am mentioning some of the observations i made during my attmpts:
>
> I am using the latest Xfbdev from X11R7.5 release and its having Xrandr
> version 1.3. I think this is same as the Xrandr running on fedora 11. Does
> this  Xrandr 1.3 has dual-head support?? But usinf this also giving the same
> ouput as
>> Screen 0: minimum 1024 x 768, current 1024 x 768, maximum 1024 x 768
>> default connected 1024x768+0+0 (normal left inverted right x axis y
>> axis) 0mm x 0mm
>>   1024x768  0.0*
>
> But on fedora Xrandr -q clearly giving the output mentioning the VGA1, VGA2
> ouptupts and their current configuration.
>
> I have tried to run Xnvidia server present in KDrive (X11R7.4 release) and
> the Xrandr version present in it is 1.2. The graphics card is Nvidia Quadro
> fx 1700. In this case also the server is showing display on one monitor
> only. I guess its because the driver implemented in Xnvidia is out of date
> and it could not properly configure some advanced graphics card like nvidia
> Quadro fx 1700. is it so??
>
> your inputs are highly valuable as not much information is available on net
> regarding dual-head support in tinyX.

There's nothing about tinyx that would prevent some sort of multi-head
setup.  However, you are going to need a driver that supports multiple
heads to begin with.  The kernel fbdev interface currently assumes 1
head per card.  You'd need to fix that up first if you want to support
multi-head with fbdev.  Randr and xinerama won't help you unless the
underlying driver supports multi-head.  So you'd either have to fix
fbdev (both in the kernel and on the X side) or write a native tinyx
driver for you hardware that supports multi-head.  If you did write a
native driver, you wouldn't even have to use randr or xinerama.  You
could just allocate a framebuffer large enough for two heads and
program the display controllers for a multi-head setup and then expose
it as a single big "screen" to X.  Your best bet is to use Xorg plus
the native driver for your hardware.

Alex

>
>
> On Wed, Dec 16, 2009 at 8:35 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
>>
>> On Wed, Dec 16, 2009 at 8:44 AM, prudhvi raj <prudhviraj.v at gmail.com>
>> wrote:
>> > I want to enable dual-head display using the KDrive tinyx server -
>> > Xfbdev
>> > (X11R7.5 version). I am using Nvidia graphics card with two outputs
>> > connected to two samsung monitors.
>> >
>> > When i boot up the system with Fedora 11, the server is auto detecting
>> > both
>> > monitors and both the monitors are getting up and the screen is spanned
>> > among the two monitors.
>> >
>> > But When i run the Xfbdev server the display is coming on only one
>> > monitor.
>> >
>> > xrandr -q is giving the below output
>> > Screen 0: minimum 1024 x 768, current 1024 x 768, maximum 1024 x 768
>> > default connected 1024x768+0+0 (normal left inverted right x axis y
>> > axis)
>> > 0mm x 0mm
>> >   1024x768  0.0*
>> >
>> > Why is Xrandr unable to detect the second monitor??
>> >
>> > The Xfbdev has been compiled with XINERAMA and XRANDR extensions.
>> >
>> > Should i need to configure Xfbdev in order to detect the dual head
>> > configuration and show the display spanned among them??
>>
>> fbdev doesn't support dualhead.  You'll need to use a native driver
>> for your GPU.
>>
>> Alex
>
>


More information about the xorg-devel mailing list