diff options
Diffstat (limited to 'src/radeon_probe.c')
-rw-r--r-- | src/radeon_probe.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/radeon_probe.c b/src/radeon_probe.c index baca574e..2d3c58e8 100644 --- a/src/radeon_probe.c +++ b/src/radeon_probe.c @@ -50,6 +50,10 @@ #include "xf86drmMode.h" #include "dri.h" +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +#include <xf86_OSproc.h> +#endif + #ifdef XSERVER_PLATFORM_BUS #include <xf86platformBus.h> #endif @@ -92,6 +96,12 @@ static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci busIdString = DRICreatePCIBusID(pci_dev); ret = drmCheckModesettingSupported(busIdString); +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + if (ret) { + if (xf86LoadKernelModule("radeonkms")) + ret = drmCheckModesettingSupported(busIdString); + } +#endif free(busIdString); if (ret) { xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0, |