diff --git a/src/rhd_driver.c b/src/rhd_driver.c index 18ae7f6..e5a6f64 100644 --- a/src/rhd_driver.c +++ b/src/rhd_driver.c @@ -1941,6 +1941,17 @@ rhdOutputConnectorCheck(struct rhdConnector *Connector) } } } + + if (i == 2) { + /* still nothing, just enable the first one */ + for (i = 0; i < 2; i++) { + Output = Connector->Output[i]; + if (Output && Output->Id != RHD_OUTPUT_NONE) { + Output->Connector = Connector; + break; + } + } + } } /* diff --git a/src/rhd_randr.c b/src/rhd_randr.c index 6c8530c..936126f 100644 --- a/src/rhd_randr.c +++ b/src/rhd_randr.c @@ -1047,8 +1047,7 @@ rhdRROutputDetect(xf86OutputPtr output) rout->Output->Connector = rout->Connector; /* @@@ */ RHDOutputPrintSensedType(rout->Output); return XF86OutputStatusConnected; - } else - return XF86OutputStatusDisconnected; + } } /* Use DDC address probing if possible otherwise */ if (rout->Connector->DDC) { @@ -1060,9 +1059,9 @@ rhdRROutputDetect(xf86OutputPtr output) RHDDebug(rout->Output->scrnIndex, "DDC Probing for Output %s returned connected\n",rout->Output->Name); rout->Output->Connector = rout->Connector; /* @@@ */ return XF86OutputStatusConnected; - } else - RHDDebug(rout->Output->scrnIndex, "DDC Probing for Output %s returned disconnected\n",rout->Output->Name); - return XF86OutputStatusDisconnected; + } + RHDDebug(rout->Output->scrnIndex, "DDC Probing for Output %s returned disconnected\n",rout->Output->Name); + return XF86OutputStatusDisconnected; } rout->Output->Connector = rout->Connector; /* @@@ */ return XF86OutputStatusUnknown;