diff options
Diffstat (limited to 'drivers/char/drm/radeon_state.c')
-rw-r--r-- | drivers/char/drm/radeon_state.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/char/drm/radeon_state.c b/drivers/char/drm/radeon_state.c index 1f79e249146c..d57accdd8df5 100644 --- a/drivers/char/drm/radeon_state.c +++ b/drivers/char/drm/radeon_state.c | |||
@@ -2797,6 +2797,17 @@ static int radeon_cp_cmdbuf( DRM_IOCTL_ARGS ) | |||
2797 | 2797 | ||
2798 | orig_nbox = cmdbuf.nbox; | 2798 | orig_nbox = cmdbuf.nbox; |
2799 | 2799 | ||
2800 | if(dev_priv->microcode_version == UCODE_R300) { | ||
2801 | int temp; | ||
2802 | temp=r300_do_cp_cmdbuf(dev, filp, filp_priv, &cmdbuf); | ||
2803 | |||
2804 | if (orig_bufsz != 0) | ||
2805 | drm_free(kbuf, orig_bufsz, DRM_MEM_DRIVER); | ||
2806 | |||
2807 | return temp; | ||
2808 | } | ||
2809 | |||
2810 | /* microcode_version != r300 */ | ||
2800 | while ( cmdbuf.bufsz >= sizeof(header) ) { | 2811 | while ( cmdbuf.bufsz >= sizeof(header) ) { |
2801 | 2812 | ||
2802 | header.i = *(int *)cmdbuf.buf; | 2813 | header.i = *(int *)cmdbuf.buf; |