[PATCH v2] xf86: Fix non-PCI configuration-less setups

Thierry Reding thierry.reding at avionic-design.de
Fri Nov 23 12:28:01 PST 2012


On Thu, Nov 08, 2012 at 09:09:01AM +0100, Thierry Reding wrote:
> On Wed, Oct 17, 2012 at 12:06:47PM +0200, Thierry Reding wrote:
> > For non-PCI video devices, such as those found on many ARM embedded
> > systems, the X server currently requires the BusID option to specify the
> > full path to the DRM device's sysfs node in order to properly match it
> > against the probed platform devices.
> > 
> > In order to allow X to start up properly if either the BusID option was
> > omitted or no configuration is present at all, the first video device is
> > used by default.
> > 
> > Signed-off-by: Thierry Reding <thierry.reding at avionic-design.de>
> > ---
> > Changes in v2:
> > - Add additional checks for safety (I don't think numDevs will ever be 0
> >   since a default will be generated if no configuration is present, but
> >   it doesn't hurt to check anyway). Without these checks there is a
> >   possibility of the X server crashing if no platform devices have been
> >   found.
> > 
> >  hw/xfree86/common/xf86platformBus.c | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
> > index 0525e39..599d84a 100644
> > --- a/hw/xfree86/common/xf86platformBus.c
> > +++ b/hw/xfree86/common/xf86platformBus.c
> > @@ -377,6 +377,14 @@ xf86platformProbeDev(DriverPtr drvp)
> >              continue;
> >      }
> >  
> > +    /*
> > +     * If all of the above fails, which can happen if X was started without
> > +     * configuration or if BusID wasn't set for non-PCI devices, use the first
> > +     * device by default.
> > +     */
> > +    if (!foundScreen && xf86_num_platform_devices > 0 && numDevs > 0)
> > +        foundScreen = probeSingleDevice(&xf86_platform_devices[0], drvp, devList[0], 0);
> > +
> >      /* if autoaddgpu devices is enabled then go find a few more and add them as GPU screens */
> >      if (xf86Info.autoAddGPU && numDevs) {
> >          for (j = 0; j < xf86_num_platform_devices; j++) {
> 
> Can anyone review this patch? I think it is also a candidate for 1.13,
> since it fixes a regression from the 1.12 series.

Can somebody merge this? The first version of this patch[0] was reviewed
by Adam Jackson and the fix is required to make xf86-video-modesetting
work on 1.13 and later X servers.

Thierry

[0]: http://lists.x.org/archives/xorg-devel/2012-October/033974.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20121123/8b62b381/attachment.pgp>


More information about the xorg-devel mailing list