Hello everyone,

I desperately need to bring back userland mode setting (UMS) support on my 
machine for hardware compatibility reasons. As you probably know, UMS support 
was removed some years ago, and a new git branch was created with the 
UMS-compatible source code of the driver.

I cloned the UMS branch on my system and tried to build it, but it is very 
difficult because of the amomunt of "bit rot" this branch seems to have 
experienced. First, it complained about the lack of a "xaa.h", so I grabbed the 
XAA header files from the last XAA-supported xorg-server version (1.12) and put 
them in /usr/include/xorg.

That let me advance a bit, somehow, but shortly after the start of the second 
try, I got other errors (included below). Is there any way in which I could 
make this branch compile on a modern Linux distro with a modern xorg version? 

radeon_driver.c:3383:6: error: too many arguments to function 
‘pScreen->BlockHandler’
(*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
~^~~~~~~~~~~~~~~~~~~~~~~
radeon_driver.c:3384:27: warning: assignment to ‘ScreenBlockHandlerProcPtr’ 
{aka ‘void (*)(struct _Screen *, void *)’} from incompatible pointer type void 
(*)(struct _Screen *, void *, void *)’ [-Wincompatible-pointer-types]
pScreen->BlockHandler = RADEONBlockHandler;
^
radeon_driver.c: In function ‘RADEONScreenInit’:
radeon_driver.c:3740:12: warning: assignment discards ‘const’ qualifier from 
pointer target type [-Wdiscarded-qualifiers]
if ((s = xf86GetOptValString(info->Options, OPTION_SUBPIXEL_ORDER))) {
^
radeon_driver.c:3759:5: warning: implicit declaration of function 
‘miInitializeBackingStore’; did you mean ‘InitializeSprite’? 
[-Wimplicit-function-declaration]
miInitializeBackingStore(pScreen);
^~~~~~~~~~~~~~~~~~~~~~~~
InitializeSprite
radeon_driver.c:3899:24: warning: assignment to ‘void (*)(struct _Screen *, 
void *, void *)’ from incompatible pointer type ‘ScreenBlockHandlerProcPtr’ 
{aka ‘void (*)(struct _Screen *, void *)’} [-Wincompatible-pointer-types]
info->BlockHandler = pScreen->BlockHandler;
^
radeon_driver.c:3900:27: warning: assignment to ‘ScreenBlockHandlerProcPtr’ 
{aka ‘void (*)(struct _Screen *, void *)’} from incompatible pointer type void 
(*)(struct _Screen *, void *, void *)’ [-Wincompatible-pointer-types]
pScreen->BlockHandler = RADEONBlockHandler;
^
radeon_driver.c: In function ‘RADEONEnterVT’:
radeon_driver.c:6313:3: warning: implicit declaration of function 
‘R600LoadShaders’ [-Wimplicit-function-declaration]
R600LoadShaders(pScrn);
^~~~~~~~~~~~~~~
radeon_driver.c: In function ‘RADEONCloseScreen’:
radeon_driver.c:6443:19: warning: passing argument 1 of ‘DamageUnregister’ from 
incompatible pointer type [-Wincompatible-pointer-types]
DamageUnregister(&pPix->drawable, info->dri->pDamage);
^~~~~~~~~~~~~~~
In file included from /usr/include/xorg/pixmapstr.h:53,
from /usr/include/xorg/xf86str.h:40,
from radeon.h:46,
from radeon_driver.c:72:
/usr/include/xorg/damage.h:77:29: note: expected ‘DamagePtr’ {aka ‘struct 
_damage *’} but argument is of type ‘DrawableRec *’ {aka ‘struct _Drawable *’}
DamageUnregister(DamagePtr pDamage);
~~~~~~~~~~^~~~~~~
radeon_driver.c:6443:2: error: too many arguments to function ‘DamageUnregister’
DamageUnregister(&pPix->drawable, info->dri->pDamage);
^~~~~~~~~~~~~~~~
In file included from /usr/include/xorg/pixmapstr.h:53,
from /usr/include/xorg/xf86str.h:40,
from radeon.h:46,
from radeon_driver.c:72:
/usr/include/xorg/damage.h:77:2: note: declared here
DamageUnregister(DamagePtr pDamage);
^~~~~~~~~~~~~~~~
radeon_driver.c:6497:27: warning: assignment to ‘ScreenBlockHandlerProcPtr’ 
{aka ‘void (*)(struct _Screen *, void *)’} from incompatible pointer type void 
(*)(struct _Screen *, void *, void *)’ [-Wincompatible-pointer-types]
pScreen->BlockHandler = info->BlockHandler;
^
make[2]: *** [Makefile:900: radeon_driver.lo] Error 1
make[2]: Leaving directory '/root/src/xf86-video-ati-ums/src'
make[1]: *** [Makefile:448: all-recursive] Error 1
make[1]: Leaving directory '/root/src/xf86-video-ati-ums'
make: *** [Makefile:380: all] Error 2 Thank you very much!


Nicolás Colla
[email protected]
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to