diff options
| author | Mathias Fröhlich <Mathias.Froehlich@web.de> | 2011-01-23 22:35:13 +0100 | 
|---|---|---|
| committer | Alex Deucher <alexdeucher@gmail.com> | 2011-01-25 14:18:19 -0500 | 
| commit | 90c2fd86407999475ff6accecf36e5a2c75feb9b (patch) | |
| tree | 0a0085852f6888ec55bb580eac3dc539ef95fa0c /src/gallium/drivers | |
| parent | e7ec53273547335863b2377bea9d35aa9c114c6b (diff) | |
r600g: Implement timer queries.
Diffstat (limited to 'src/gallium/drivers')
| -rw-r--r-- | src/gallium/drivers/r600/r600.h | 1 | ||||
| -rw-r--r-- | src/gallium/drivers/r600/r600_pipe.c | 5 | 
2 files changed, 5 insertions, 1 deletions
| diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index a852bef615..b8888bede2 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -113,6 +113,7 @@ struct r600_tiling_info {  enum radeon_family r600_get_family(struct radeon *rw);  enum chip_class r600_get_family_class(struct radeon *radeon);  struct r600_tiling_info *r600_get_tiling_info(struct radeon *radeon); +unsigned r600_get_clock_crystal_freq(struct radeon *radeon);  /* r600_bo.c */  struct r600_bo; diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 53d2c10c56..1ee327f16a 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -283,7 +283,6 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param)  		return 1;  	/* Unsupported features (boolean caps). */ -	case PIPE_CAP_TIMER_QUERY:  	case PIPE_CAP_STREAM_OUTPUT:  	case PIPE_CAP_PRIMITIVE_RESTART:  	case PIPE_CAP_INDEP_BLEND_FUNC: /* FIXME allow this */ @@ -318,6 +317,10 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param)  	case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER:  		return 0; +	/* Timer queries, present when the clock frequency is non zero. */ +	case PIPE_CAP_TIMER_QUERY: +		return r600_get_clock_crystal_freq(rscreen->radeon) != 0; +  	default:  		R600_ERR("r600: unknown param %d\n", param);  		return 0; | 
