亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? radeon_commonfuncs.c

?? x.org上有關ati系列顯卡最新驅動
?? C
字號:
/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_accelfuncs.c,v 1.7tsi Exp $ *//* * Copyright 2000 ATI Technologies Inc., Markham, Ontario, and *                VA Linux Systems Inc., Fremont, California. * * All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * "Software"), to deal in the Software without restriction, including * without limitation on the rights to use, copy, modify, merge, * publish, distribute, sublicense, and/or sell copies of the Software, * and to permit persons to whom the Software is furnished to do so, * subject to the following conditions: * * The above copyright notice and this permission notice (including the * next paragraph) shall be included in all copies or substantial * portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NON-INFRINGEMENT.  IN NO EVENT SHALL ATI, VA LINUX SYSTEMS AND/OR * THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. */#ifdef HAVE_CONFIG_H#include "config.h"#endif#if defined(ACCEL_MMIO) && defined(ACCEL_CP)#error Cannot define both MMIO and CP acceleration!#endif#if !defined(UNIXCPP) || defined(ANSICPP)#define FUNC_NAME_CAT(prefix,suffix) prefix##suffix#else#define FUNC_NAME_CAT(prefix,suffix) prefix/**/suffix#endif#ifdef ACCEL_MMIO#define FUNC_NAME(prefix) FUNC_NAME_CAT(prefix,MMIO)#else#ifdef ACCEL_CP#define FUNC_NAME(prefix) FUNC_NAME_CAT(prefix,CP)#else#error No accel type defined!#endif#endifstatic void FUNC_NAME(RADEONInit3DEngine)(ScrnInfoPtr pScrn){    RADEONInfoPtr  info       = RADEONPTR(pScrn);    ACCEL_PREAMBLE();    if (info->ChipFamily >= CHIP_FAMILY_R300) {	/* Unimplemented */    } else if ((info->ChipFamily == CHIP_FAMILY_RV250) || 	       (info->ChipFamily == CHIP_FAMILY_RV280) || 	       (info->ChipFamily == CHIP_FAMILY_RS300) || 	       (info->ChipFamily == CHIP_FAMILY_R200)) {	BEGIN_ACCEL(7);        if (info->ChipFamily == CHIP_FAMILY_RS300) {            OUT_ACCEL_REG(R200_SE_VAP_CNTL_STATUS, RADEON_TCL_BYPASS);        } else {            OUT_ACCEL_REG(R200_SE_VAP_CNTL_STATUS, 0);        }	OUT_ACCEL_REG(R200_PP_CNTL_X, 0);	OUT_ACCEL_REG(R200_PP_TXMULTI_CTL_0, 0);	OUT_ACCEL_REG(R200_SE_VTX_STATE_CNTL, 0);	OUT_ACCEL_REG(R200_RE_CNTL, 0x0);	/* XXX: correct?  Want it to be like RADEON_VTX_ST?_NONPARAMETRIC */	OUT_ACCEL_REG(R200_SE_VTE_CNTL, R200_VTX_ST_DENORMALIZED);	OUT_ACCEL_REG(R200_SE_VAP_CNTL, R200_VAP_FORCE_W_TO_ONE |	    R200_VAP_VF_MAX_VTX_NUM);	FINISH_ACCEL();    } else {	BEGIN_ACCEL(2);        if ((info->ChipFamily == CHIP_FAMILY_RADEON) ||            (info->ChipFamily == CHIP_FAMILY_RV200))            OUT_ACCEL_REG(RADEON_SE_CNTL_STATUS, 0);        else            OUT_ACCEL_REG(RADEON_SE_CNTL_STATUS, RADEON_TCL_BYPASS);	OUT_ACCEL_REG(RADEON_SE_COORD_FMT,	    RADEON_VTX_XY_PRE_MULT_1_OVER_W0 |	    RADEON_VTX_ST0_NONPARAMETRIC |	    RADEON_VTX_ST1_NONPARAMETRIC |	    RADEON_TEX1_W_ROUTING_USE_W0);	FINISH_ACCEL();    }    BEGIN_ACCEL(5);    OUT_ACCEL_REG(RADEON_RE_TOP_LEFT, 0);    OUT_ACCEL_REG(RADEON_RE_WIDTH_HEIGHT, 0x07ff07ff);    OUT_ACCEL_REG(RADEON_AUX_SC_CNTL, 0);    OUT_ACCEL_REG(RADEON_RB3D_PLANEMASK, 0xffffffff);    OUT_ACCEL_REG(RADEON_SE_CNTL, RADEON_DIFFUSE_SHADE_GOURAUD |				  RADEON_BFACE_SOLID | 				  RADEON_FFACE_SOLID |				  RADEON_VTX_PIX_CENTER_OGL |				  RADEON_ROUND_MODE_ROUND |				  RADEON_ROUND_PREC_4TH_PIX);    FINISH_ACCEL();}/* MMIO: * * Wait for the graphics engine to be completely idle: the FIFO has * drained, the Pixel Cache is flushed, and the engine is idle.  This is * a standard "sync" function that will make the hardware "quiescent". * * CP: * * Wait until the CP is completely idle: the FIFO has drained and the CP * is idle. */void FUNC_NAME(RADEONWaitForIdle)(ScrnInfoPtr pScrn){    RADEONInfoPtr  info = RADEONPTR(pScrn);    unsigned char *RADEONMMIO = info->MMIO;    int            i    = 0;#ifdef ACCEL_CP    /* Make sure the CP is idle first */    if (info->CPStarted) {	int  ret;	FLUSH_RING();	for (;;) {	    do {		ret = drmCommandNone(info->drmFD, DRM_RADEON_CP_IDLE);		if (ret && ret != -EBUSY) {		    xf86DrvMsg(pScrn->scrnIndex, X_ERROR,			       "%s: CP idle %d\n", __FUNCTION__, ret);		}	    } while ((ret == -EBUSY) && (i++ < RADEON_TIMEOUT));	    if (ret == 0) return;	    xf86DrvMsg(pScrn->scrnIndex, X_ERROR,		       "Idle timed out, resetting engine...\n");	    RADEONEngineReset(pScrn);	    RADEONEngineRestore(pScrn);	    /* Always restart the engine when doing CP 2D acceleration */	    RADEONCP_RESET(pScrn, info);	    RADEONCP_START(pScrn, info);	}    }#endif#if 0    RADEONTRACE(("WaitForIdle (entering): %d entries, stat=0x%08x\n",		     INREG(RADEON_RBBM_STATUS) & RADEON_RBBM_FIFOCNT_MASK,		     INREG(RADEON_RBBM_STATUS)));#endif    /* Wait for the engine to go idle */    RADEONWaitForFifoFunction(pScrn, 64);    for (;;) {	for (i = 0; i < RADEON_TIMEOUT; i++) {	    if (!(INREG(RADEON_RBBM_STATUS) & RADEON_RBBM_ACTIVE)) {		RADEONEngineFlush(pScrn);		return;	    }	}	RADEONTRACE(("Idle timed out: %u entries, stat=0x%08x\n",		     INREG(RADEON_RBBM_STATUS) & RADEON_RBBM_FIFOCNT_MASK,		     INREG(RADEON_RBBM_STATUS)));	xf86DrvMsg(pScrn->scrnIndex, X_ERROR,		   "Idle timed out, resetting engine...\n");	RADEONEngineReset(pScrn);	RADEONEngineRestore(pScrn);#ifdef XF86DRI	if (info->directRenderingEnabled) {	    RADEONCP_RESET(pScrn, info);	    RADEONCP_START(pScrn, info);	}#endif    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情综合色播五月| 暴力调教一区二区三区| 亚洲综合区在线| 亚洲精品久久久久久国产精华液| 中文字幕电影一区| 最新欧美精品一区二区三区| 1区2区3区国产精品| 亚洲欧美另类久久久精品 | 久草精品在线观看| 麻豆91在线播放免费| 免费久久精品视频| 国产乱一区二区| 成人性生交大片| 色就色 综合激情| 欧美疯狂做受xxxx富婆| 精品国产精品网麻豆系列| 久久久www成人免费毛片麻豆| 欧美国产欧美亚州国产日韩mv天天看完整| 国产日韩欧美不卡| 亚洲欧洲综合另类在线| 日本在线观看不卡视频| 国产高清不卡二三区| 成人av在线网站| 欧美日本在线视频| 国产欧美日韩视频一区二区| 亚洲精品国产视频| 久久精品国产亚洲a| 成人激情黄色小说| 91麻豆精品91久久久久久清纯 | 亚洲男人的天堂网| 日韩精品每日更新| av爱爱亚洲一区| 欧美一级一区二区| 中文字幕不卡在线播放| 人人超碰91尤物精品国产| 从欧美一区二区三区| 337p亚洲精品色噜噜狠狠| 国产亚洲短视频| 日韩黄色免费电影| 91视频一区二区三区| 日韩精品自拍偷拍| 亚洲精品高清在线| 国产91在线看| 日韩无一区二区| 亚洲国产综合视频在线观看| 国产成人免费av在线| 7878成人国产在线观看| 一区二区三区精品视频在线| 精品一区二区久久| 欧美猛男gaygay网站| 国产精品动漫网站| 国产一区久久久| 日韩三级av在线播放| 石原莉奈在线亚洲三区| 色综合久久久网| 国产精品三级视频| 国产成人免费在线观看不卡| 日韩欧美综合在线| 天堂影院一区二区| 欧美日韩高清不卡| 亚洲成人一二三| 欧美亚洲综合另类| 一级精品视频在线观看宜春院 | 国内精品国产三级国产a久久| 欧美三级一区二区| 亚洲男人的天堂av| 在线欧美一区二区| 亚洲激情五月婷婷| 欧美性大战久久久久久久蜜臀| 自拍偷拍欧美精品| 在线影视一区二区三区| 亚洲一区二区三区四区在线免费观看| www.亚洲在线| 亚洲视频狠狠干| 色噜噜狠狠成人网p站| 亚洲精品乱码久久久久久| 91福利国产成人精品照片| 最新久久zyz资源站| 色婷婷久久久亚洲一区二区三区| 亚洲黄网站在线观看| 欧美系列亚洲系列| 五月天欧美精品| 日韩一级二级三级| 国产一区二区在线影院| 欧美国产97人人爽人人喊| 99re热这里只有精品免费视频| 国产亚洲精品bt天堂精选| 成人h动漫精品| 亚洲综合色在线| 欧美一区二区视频在线观看2020 | 在线看一区二区| 午夜不卡av在线| 久久久久国产精品厨房| 99久久婷婷国产综合精品电影 | 国产风韵犹存在线视精品| 国产欧美视频一区二区| 色诱亚洲精品久久久久久| 午夜电影一区二区三区| 2023国产一二三区日本精品2022| 成人综合在线网站| 亚洲第一成年网| 亚洲精品一区二区三区99| 99视频一区二区| 天天综合天天综合色| 久久欧美一区二区| 欧美曰成人黄网| 国内精品自线一区二区三区视频| 亚洲欧美综合在线精品| 91精品久久久久久久久99蜜臂| 韩国精品免费视频| 一区二区三区自拍| 欧美成人vps| 色女孩综合影院| 精品一区二区久久| 亚洲综合在线观看视频| 亚洲国产成人私人影院tom| 欧美亚洲国产怡红院影院| 国内精品嫩模私拍在线| 亚洲图片有声小说| 亚洲欧洲一区二区在线播放| 91精品国产乱码久久蜜臀| 99精品欧美一区| 麻豆91免费观看| 亚洲一二三四在线观看| 国产精品日产欧美久久久久| 日韩欧美中文字幕公布| 日本精品一区二区三区高清| 国产又粗又猛又爽又黄91精品| 一区二区成人在线视频| 国产精品污www在线观看| 欧美mv日韩mv| 欧美久久免费观看| 欧美亚一区二区| 色婷婷av久久久久久久| 成人avav影音| 国产成人av一区二区| 久久国产剧场电影| 麻豆精品一区二区三区| 日韩精品视频网| 视频一区二区三区中文字幕| 亚洲男同性视频| 一区二区成人在线| 亚洲美女屁股眼交3| 亚洲免费视频中文字幕| 最新中文字幕一区二区三区| 国产精品久久久久影院老司| 国产女同互慰高潮91漫画| 久久久久久久电影| 久久九九国产精品| 中文一区二区完整视频在线观看| 久久久久九九视频| 日本一区二区三区高清不卡| 国产亚洲一区二区三区| 国产免费观看久久| 一区在线观看免费| 一区二区久久久| 日韩成人精品在线观看| 麻豆精品视频在线| 国产一二三精品| 懂色av一区二区夜夜嗨| 不卡高清视频专区| 色美美综合视频| 欧美一区二区视频网站| 日韩亚洲欧美一区二区三区| 精品对白一区国产伦| 国产三级欧美三级| 亚洲你懂的在线视频| 三级一区在线视频先锋| 国产在线精品一区二区三区不卡| 国产乱码精品一区二区三| 99久久婷婷国产| 717成人午夜免费福利电影| 精品国产sm最大网站| 国产欧美精品区一区二区三区| 日韩高清不卡在线| 国产一区视频网站| 99久久伊人网影院| 制服丝袜亚洲精品中文字幕| 精品久久久久久久人人人人传媒| 欧美国产日韩亚洲一区| 亚洲一区中文日韩| 国产一区二区视频在线播放| 91小视频在线免费看| 欧美高清性hdvideosex| 欧美激情一区在线观看| 亚洲国产精品自拍| 国产精品一区二区在线播放| 在线免费观看视频一区| 精品卡一卡二卡三卡四在线| 亚洲日韩欧美一区二区在线| 免费成人av在线| 日本高清视频一区二区| 精品国产亚洲在线| 亚洲www啪成人一区二区麻豆| 国产伦精一区二区三区| 欧美精品18+| 亚洲精品视频一区二区| 国产经典欧美精品| 日韩午夜在线观看| 亚洲午夜国产一区99re久久|