On Thu, May 27, 2010 at 8:26 AM, Chris Wilson <[email protected]> wrote: > The move of the PCI device id probing into a separate file neglected to > return the number of found devices, and so the PCI devices were being > overwritten by the default entries for vesa and fbdev.
Patch looks right to me and it fixes the autoloading problem. Tested-by: Kristian Høgsberg <[email protected]> Please apply. Kristian > Signed-off-by: Chris Wilson <[email protected]> > Cc: Tiago Vignatti <[email protected]> > Cc: Alex Deucher <[email protected]> > Reviewed-by: Julien Cristau <[email protected]> > Reviewed-by: Tiago Vignatti <[email protected]> > --- > hw/xfree86/common/xf86AutoConfig.c | 2 +- > hw/xfree86/common/xf86pciBus.c | 8 +++++++- > hw/xfree86/common/xf86pciBus.h | 2 +- > 3 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/hw/xfree86/common/xf86AutoConfig.c > b/hw/xfree86/common/xf86AutoConfig.c > index 8947a4f..5b236af 100644 > --- a/hw/xfree86/common/xf86AutoConfig.c > +++ b/hw/xfree86/common/xf86AutoConfig.c > @@ -257,7 +257,7 @@ listPossibleVideoDrivers(char *matches[], int nmatches) > } > #endif > > - xf86PciMatchDriver(matches, nmatches); > + i = xf86PciMatchDriver(matches, nmatches); > > /* Fallback to platform default hardware */ > if (i < (nmatches - 1)) { > diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c > index 085be01..184f221 100644 > --- a/hw/xfree86/common/xf86pciBus.c > +++ b/hw/xfree86/common/xf86pciBus.c > @@ -1294,7 +1294,11 @@ matchDriverFromFiles (char** matches, uint16_t > match_vendor, uint16_t match_chip > } > #endif /* __linux__ */ > > -void > +/** > + * �...@return The numbers of found devices that match with the current > system > + * drivers. > + */ > +int > xf86PciMatchDriver(char* matches[], int nmatches) { > int i; > struct pci_device * info = NULL; > @@ -1326,4 +1330,6 @@ xf86PciMatchDriver(char* matches[], int nmatches) { > if ((info != NULL) && (i < nmatches)) { > i += videoPtrToDriverList(info, &(matches[i]), nmatches - i); > } > + > + return i; > } > diff --git a/hw/xfree86/common/xf86pciBus.h b/hw/xfree86/common/xf86pciBus.h > index f84a496..3f02b93 100644 > --- a/hw/xfree86/common/xf86pciBus.h > +++ b/hw/xfree86/common/xf86pciBus.h > @@ -37,6 +37,6 @@ void xf86PciProbe(void); > Bool xf86PciAddMatchingDev(DriverPtr drvp); > Bool xf86PciProbeDev(DriverPtr drvp); > void xf86PciIsolateDevice(char *argument); > -void xf86PciMatchDriver(char* matches[], int nmatches); > +int xf86PciMatchDriver(char* matches[], int nmatches); > > #endif /* _XF86_PCI_BUS_H */ > -- > 1.7.1 > > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
