diff options
Diffstat (limited to 'src/nv50_connector.c')
-rw-r--r-- | src/nv50_connector.c | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/src/nv50_connector.c b/src/nv50_connector.c deleted file mode 100644 index f7d6133..0000000 --- a/src/nv50_connector.c +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright 2008 Maarten Maathuis - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF - * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -#include "nouveau_modeset.h" -#include "nouveau_crtc.h" -#include "nouveau_output.h" -#include "nouveau_connector.h" - -static xf86MonPtr -NV50ConnectorGetEDID(nouveauConnectorPtr connector) -{ - ScrnInfoPtr pScrn = connector->scrn; - xf86MonPtr mon = NULL; - -#ifdef EDID_COMPLETE_RAWDATA - mon = xf86DoEEDID(pScrn->scrnIndex, connector->pDDCBus, TRUE); -#else - mon = xf86DoEDID_DDC2(pScrn->scrnIndex, connector->pDDCBus); -#endif - - if (mon) - xf86DDCApplyQuirks(pScrn->scrnIndex, mon); - - return mon; -} - -static xf86MonPtr -NV50ConnectorDDCDetect(nouveauConnectorPtr connector) -{ - ScrnInfoPtr pScrn = connector->scrn; - xf86MonPtr ddc_mon; - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "NV50ConnectorDDCDetect is called.\n"); - - if (!connector->pDDCBus) - return FALSE; - - ddc_mon = NV50ConnectorGetEDID(connector); - - return ddc_mon; -} - -static DisplayModePtr -NV50ConnectorGetDDCModes(nouveauConnectorPtr connector) -{ - ScrnInfoPtr pScrn = connector->scrn; - xf86MonPtr ddc_mon; - - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "NV50ConnectorGetDDCModes is called.\n"); - - if (!connector->pDDCBus) - return FALSE; - - ddc_mon = NV50ConnectorGetEDID(connector); - if (!ddc_mon) - return NULL; - - return xf86DDCGetModes(pScrn->scrnIndex, ddc_mon); -} - -void -NV50ConnectorInit(ScrnInfoPtr pScrn) -{ - int i; - NVPtr pNv = NVPTR(pScrn); - - /* Maybe a bit overdone, because often only 3 or 4 connectors are present. */ - for (i = 0; i < DCB_MAX_NUM_I2C_ENTRIES; i++) { - nouveauConnectorPtr connector = xnfcalloc(sizeof(nouveauConnectorRec), 1); - connector->scrn = pScrn; - connector->index = i; - - char connector_name[20]; - sprintf(connector_name, "Connector-%d", i); - connector->name = xstrdup(connector_name); - - /* Function pointers. */ - connector->DDCDetect = NV50ConnectorDDCDetect; - connector->GetDDCModes = NV50ConnectorGetDDCModes; - connector->HotplugDetect = NULL; - - pNv->connector[i] = connector; - } -} - -void -NV50ConnectorDestroy(ScrnInfoPtr pScrn) -{ - int i; - NVPtr pNv = NVPTR(pScrn); - - /* Maybe a bit overdone, because often only 3 or 4 connectors are present. */ - for (i = 0; i < DCB_MAX_NUM_I2C_ENTRIES; i++) { - nouveauConnectorPtr connector = pNv->connector[i]; - - if (!connector) - continue; - - xfree(connector->name); - xfree(connector); - pNv->connector[i] = NULL; - } -} - |