示例#1
0
Bool
tridentDrawInit (ScreenPtr pScreen)
{
    SetupTrident(pScreen);
    tridentScreenInfo(pScreenPriv);
    PictureScreenPtr    ps = GetPictureScreen(pScreen);
    
    if (!kaaDrawInit (pScreen, &tridentKaa))
	return FALSE;

    if (ps && tridents->off_screen)
	ps->Composite = tridentComposite;
    
    return TRUE;
}
示例#2
0
文件: r128draw.c 项目: mcr/xorg-xvnc4
Bool
r128DrawInit (ScreenPtr pScreen)
{
    KdScreenPriv (pScreen);
    r128ScreenInfo (pScreenPriv);

    memset(&r128s->kaa, 0, sizeof(KaaScreenInfoRec));
    r128s->kaa.waitMarker	= r128WaitMarker;
    r128s->kaa.PrepareSolid	= r128PrepareSolid;
    r128s->kaa.Solid		= r128Solid;
    r128s->kaa.DoneSolid	= r128DoneSolid;
    r128s->kaa.PrepareCopy	= r128PrepareCopy;
    r128s->kaa.Copy		= r128Copy;
    r128s->kaa.DoneCopy		= r128DoneCopy;

    if (!kaaDrawInit (pScreen, &r128s->kaa))
	return FALSE;

    return TRUE;
}
示例#3
0
Bool
nvidiaDrawInit (ScreenPtr pScreen)
{
    KdScreenPriv(pScreen);
    nvidiaCardInfo(pScreenPriv);
    nvidiaScreenInfo(pScreenPriv);
    Bool    ret = TRUE;

    ENTER ();
    if (pScreenPriv->screen->fb[0].depth == 4)
        ret = FALSE;

    memset(&nvidias->kaa, 0, sizeof(KaaScreenInfoRec));
    nvidias->kaa.waitMarker	= nvidiaWaitMarker;
    nvidias->kaa.PrepareSolid	= nvidiaPrepareSolid;
    nvidias->kaa.Solid		= nvidiaSolid;
    nvidias->kaa.DoneSolid	= nvidiaDoneSolid;
    nvidias->kaa.PrepareCopy	= nvidiaPrepareCopy;
    nvidias->kaa.Copy		= nvidiaCopy;
    nvidias->kaa.DoneCopy	= nvidiaDoneCopy;

    if (ret && !nvidiac->rop)
    {
        ErrorF ("Failed to map fifo registers\n");
        ret = FALSE;
    }
    if (ret && !nvidiac->rop->FifoFree.FifoFree)
    {
        ErrorF ("Fifo appears broken\n");
        ret = FALSE;
    }
    if (ret && !kaaDrawInit (pScreen, &nvidias->kaa))
    {
        ErrorF ("kaaDrawInit failed\n");
        ret = FALSE;
    }

    LEAVE ();
    return ret;
}
示例#4
0
Bool
smiDrawInit (ScreenPtr pScreen)
{
    KdScreenPriv(pScreen);
    smiCardInfo (pScreenPriv);
    
    ENTER ();
    if (pScreenPriv->screen->fb[0].depth == 4)
    {
	LEAVE ();
	return FALSE;
    }
    
    if (!smic->dpr)
    {
	LEAVE ();
	return FALSE;
    }

    memset(&smis->kaa, 0, sizeof(KaaScreenInfoRec));
    smis->kaa.PrepareSolid	= smiPrepareSolid;
    smis->kaa.Solid		= smiSolid;
    smis->kaa.DoneSolid		= smiDoneSolid;
    smis->kaa.PrepareCopy	= smiPrepareCopy;
    smis->kaa.Copy		= smiCopy;
    smis->kaa.DoneCopy		= smiDoneCopy;
    smis->kaa.waitMarker	= smiWaitMarker;

    if (!kaaDrawInit (pScreen, &smis->kaa))
    {
	LEAVE ();
	return FALSE;
    }

    LEAVE ();
    return TRUE;
}