Module Name: xsrc
Committed By: macallan
Date: Thu Sep 8 05:25:49 UTC 2016
Modified Files:
xsrc/external/mit/xf86-video-siliconmotion/dist/src: smi_driver.c
Log Message:
provide driverFunc() to tell the Xserver that this driver can work without PIO
access - sm50x doesn't have any vga compatibility registers
problem with that - newer chips do, but xorg 1.18 tries to enable PIO access
unconditionally so we should be fine.
To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 \
xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c
diff -u xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c:1.6 xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c:1.7
--- xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c:1.6 Wed Sep 7 17:10:19 2016
+++ xsrc/external/mit/xf86-video-siliconmotion/dist/src/smi_driver.c Thu Sep 8 05:25:49 2016
@@ -84,6 +84,8 @@ static void SMI_ProbeDDC(ScrnInfoPtr pSc
static void SMI_DetectPanelSize(ScrnInfoPtr pScrn);
static void SMI_DetectMCLK(ScrnInfoPtr pScrn);
+static Bool SMI_driverFunc(ScrnInfoPtr, xorgDriverFuncOp, pointer);
+
/*
* xf86VDrvMsgVerb prints up to 14 characters prefix, where prefix has the
* format "%s(%d): " so, use name "SMI" instead of "Silicon Motion"
@@ -121,7 +123,8 @@ _X_EXPORT DriverRec SILICONMOTION =
SMI_Probe,
SMI_AvailableOptions,
NULL,
- 0
+ 0,
+ SMI_driverFunc
};
/* Supported chipsets */
@@ -235,7 +238,7 @@ siliconmotionSetup(pointer module, point
if (!setupDone) {
setupDone = TRUE;
- xf86AddDriver(&SILICONMOTION, module, 0);
+ xf86AddDriver(&SILICONMOTION, module, HaveDriverFuncs);
/*
* The return value must be non-NULL on success even though there
@@ -2130,3 +2133,19 @@ SMI_PrintRegs(ScrnInfoPtr pScrn)
LEAVE();
}
+
+static Bool
+SMI_driverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op,
+ pointer ptr)
+{
+ xorgHWFlags *flag;
+
+ switch (op) {
+ case GET_REQUIRED_HW_INTERFACES:
+ flag = (CARD32*)ptr;
+ (*flag) = HW_MMIO;
+ return TRUE;
+ default:
+ return FALSE;
+ }
+}