aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/common/xf86sbusBus.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-09-27 11:49:20 +0000
committermarha <marha@users.sourceforge.net>2010-09-27 11:49:20 +0000
commitf331b3c351021681044b2594d1ec5b49bd8edb47 (patch)
tree3f593072cd3390f173857a4d0484938aed8863c1 /xorg-server/hw/xfree86/common/xf86sbusBus.c
parent4e512860d6f0a7644ae3872d91edafa9040f608a (diff)
parent84b35d18d0b84909f7216fc6a7487ffa72bd3f18 (diff)
downloadvcxsrv-f331b3c351021681044b2594d1ec5b49bd8edb47.tar.gz
vcxsrv-f331b3c351021681044b2594d1ec5b49bd8edb47.tar.bz2
vcxsrv-f331b3c351021681044b2594d1ec5b49bd8edb47.zip
svn merge ^/branches/released .
Diffstat (limited to 'xorg-server/hw/xfree86/common/xf86sbusBus.c')
-rw-r--r--xorg-server/hw/xfree86/common/xf86sbusBus.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/xorg-server/hw/xfree86/common/xf86sbusBus.c b/xorg-server/hw/xfree86/common/xf86sbusBus.c
index 51e7894db..f9244bca7 100644
--- a/xorg-server/hw/xfree86/common/xf86sbusBus.c
+++ b/xorg-server/hw/xfree86/common/xf86sbusBus.c
@@ -685,3 +685,32 @@ xf86SbusHandleColormaps(ScreenPtr pScreen, sbusDevicePtr psdp)
return xf86HandleColormaps(pScreen, 256, 8,
xf86SbusCmapLoadPalette, NULL, 0);
}
+
+Bool
+xf86SbusConfigure(void *busData, sbusDevicePtr sBus)
+{
+ if (sBus && sBus->fbNum == ((sbusDevicePtr) busData)->fbNum)
+ return 0;
+ return 1;
+}
+
+void
+xf86SbusConfigureNewDev(void *busData, sbusDevicePtr sBus, GDevRec *GDev)
+{
+ char *promPath = NULL;
+
+ sBus = (sbusDevicePtr) busData;
+ GDev->identifier = sBus->descr;
+ if (sparcPromInit() >= 0) {
+ promPath = sparcPromNode2Pathname(&sBus->node);
+ sparcPromClose();
+ }
+ if (promPath) {
+ GDev->busID = xnfalloc(strlen(promPath) + 6);
+ sprintf(GDev->busID, "SBUS:%s", promPath);
+ free(promPath);
+ } else {
+ GDev->busID = xnfalloc(12);
+ sprintf(GDev->busID, "SBUS:fb%d", sBus->fbNum);
+ }
+}