Module Name: xsrc Committed By: macallan Date: Fri Jun 10 01:38:31 UTC 2011
Modified Files: xsrc/external/mit/xf86-video-suncg6/dist/src: cg6_driver.c Log Message: add a driverFunc to tell the Xserver that this driver doesn't need PIO access Now this works again on sparc64. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ xsrc/external/mit/xf86-video-suncg6/dist/src/cg6_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-suncg6/dist/src/cg6_driver.c diff -u xsrc/external/mit/xf86-video-suncg6/dist/src/cg6_driver.c:1.5 xsrc/external/mit/xf86-video-suncg6/dist/src/cg6_driver.c:1.6 --- xsrc/external/mit/xf86-video-suncg6/dist/src/cg6_driver.c:1.5 Wed Apr 13 15:47:03 2011 +++ xsrc/external/mit/xf86-video-suncg6/dist/src/cg6_driver.c Fri Jun 10 01:38:31 2011 @@ -61,7 +61,8 @@ static ModeStatus CG6ValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags); -void CG6Sync(ScrnInfoPtr pScrn); +static Bool CG6DriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, + pointer ptr); #define CG6_VERSION 4000 #define CG6_NAME "SUNCG6" @@ -85,7 +86,8 @@ CG6Probe, CG6AvailableOptions, NULL, - 0 + 0, + CG6DriverFunc }; typedef enum { @@ -136,7 +138,7 @@ if (!setupDone) { setupDone = TRUE; - xf86AddDriver(&SUNCG6, module, 0); + xf86AddDriver(&SUNCG6, module, HaveDriverFuncs); /* * Modules that this driver always requires can be loaded here @@ -752,11 +754,19 @@ return TRUE; } -/* - * This is the implementation of the Sync() function. - */ -void -CG6Sync(ScrnInfoPtr pScrn) +static Bool +CG6DriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, + pointer ptr) { - return; + xorgHWFlags *flag; + + switch (op) { + case GET_REQUIRED_HW_INTERFACES: + flag = (CARD32*)ptr; + (*flag) = HW_MMIO; + return TRUE; + default: + return FALSE; + } } +