diff mbox

[01/10] drm/radeon: UVD doesn't needs VM on SI

Message ID 1364944719-5175-2-git-send-email-deathsimple@vodafone.de (mailing list archive)
State New, archived
Headers show

Commit Message

Christian König April 2, 2013, 11:18 p.m. UTC
Signed-off-by: Christian König <deathsimple@vodafone.de>
---
 drivers/gpu/drm/radeon/radeon_cs.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Comments

Jerome Glisse April 3, 2013, 2:42 p.m. UTC | #1
On Wed, Apr 03, 2013 at 01:18:30AM +0200, Christian König wrote:
> Signed-off-by: Christian König <deathsimple@vodafone.de>
> ---
>  drivers/gpu/drm/radeon/radeon_cs.c |   10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
> index 70d3824..7d66e01 100644
> --- a/drivers/gpu/drm/radeon/radeon_cs.c
> +++ b/drivers/gpu/drm/radeon/radeon_cs.c
> @@ -241,15 +241,15 @@ int radeon_cs_parser_init(struct radeon_cs_parser *p, void *data)
>  			return -EINVAL;
>  		}
>  
> +		if (radeon_cs_get_ring(p, ring, priority))
> +			return -EINVAL;
> +
>  		/* we only support VM on SI+ */
> -		if ((p->rdev->family >= CHIP_TAHITI) &&
> -		    ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
> +		if ((p->rdev->asic->ring[p->ring].cs_parse == NULL) &&
> +		   ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
>  			DRM_ERROR("VM required on SI+!\n");
>  			return -EINVAL;

What about updating the error message to something more appropriate like
ring %d require virtual memory

Cheers,
Jerome

>  		}
> -
> -		if (radeon_cs_get_ring(p, ring, priority))
> -			return -EINVAL;
>  	}
>  
>  	/* deal with non-vm */
> -- 
> 1.7.9.5
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
Christian König April 3, 2013, 3:29 p.m. UTC | #2
Am 03.04.2013 16:42, schrieb Jerome Glisse:
> On Wed, Apr 03, 2013 at 01:18:30AM +0200, Christian König wrote:
>> Signed-off-by: Christian König <deathsimple@vodafone.de>
>> ---
>>   drivers/gpu/drm/radeon/radeon_cs.c |   10 +++++-----
>>   1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
>> index 70d3824..7d66e01 100644
>> --- a/drivers/gpu/drm/radeon/radeon_cs.c
>> +++ b/drivers/gpu/drm/radeon/radeon_cs.c
>> @@ -241,15 +241,15 @@ int radeon_cs_parser_init(struct radeon_cs_parser *p, void *data)
>>   			return -EINVAL;
>>   		}
>>   
>> +		if (radeon_cs_get_ring(p, ring, priority))
>> +			return -EINVAL;
>> +
>>   		/* we only support VM on SI+ */
>> -		if ((p->rdev->family >= CHIP_TAHITI) &&
>> -		    ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
>> +		if ((p->rdev->asic->ring[p->ring].cs_parse == NULL) &&
>> +		   ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
>>   			DRM_ERROR("VM required on SI+!\n");
>>   			return -EINVAL;
> What about updating the error message to something more appropriate like
> ring %d require virtual memory

Good point, going to change it.

Christian.

> Cheers,
> Jerome
>
>>   		}
>> -
>> -		if (radeon_cs_get_ring(p, ring, priority))
>> -			return -EINVAL;
>>   	}
>>   
>>   	/* deal with non-vm */
>> -- 
>> 1.7.9.5
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox

Patch

diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
index 70d3824..7d66e01 100644
--- a/drivers/gpu/drm/radeon/radeon_cs.c
+++ b/drivers/gpu/drm/radeon/radeon_cs.c
@@ -241,15 +241,15 @@  int radeon_cs_parser_init(struct radeon_cs_parser *p, void *data)
 			return -EINVAL;
 		}
 
+		if (radeon_cs_get_ring(p, ring, priority))
+			return -EINVAL;
+
 		/* we only support VM on SI+ */
-		if ((p->rdev->family >= CHIP_TAHITI) &&
-		    ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
+		if ((p->rdev->asic->ring[p->ring].cs_parse == NULL) &&
+		   ((p->cs_flags & RADEON_CS_USE_VM) == 0)) {
 			DRM_ERROR("VM required on SI+!\n");
 			return -EINVAL;
 		}
-
-		if (radeon_cs_get_ring(p, ring, priority))
-			return -EINVAL;
 	}
 
 	/* deal with non-vm */