From: Bellido N. <nb...@sk...> - 2005-07-26 10:18:31
|
On Monday 25 July 2005 16:22, Aapo Tahkola wrote: > On Mon, 25 Jul 2005 08:59:53 +0200 > > [drm:drm_ioctl] pid=9733, cmd=0x40106450, nr=0x50, dev 0xe200, auth=1 > > [drm:radeon_cp_cmdbuf] RADEON_CMD_SCALARS2 > > [drm:radeon_cp_cmdbuf] *ERROR* bad cmd_type 0 at e08fa024 > > r300_do_cp_cmdbuf doesnt get called... That's indeed strange. From radeon_cp_cmdbuf in shared-core/radeon_state.c: if(dev_priv->microcode_version == UCODE_R300) { int temp; temp=r300_do_cp_cmdbuf(dev, filp, filp_priv, &cmdbuf); if (orig_bufsz != 0) drm_free(kbuf, orig_bufsz, DRM_MEM_DRIVER); return temp; } Although dmesg says: [drm] Loading R300 Microcode So in the function radeon_cp_load_microcode in shared-core/radon_cp.c: if (dev_priv->microcode_version==UCODE_R200) { [snip] } else if (dev_priv->microcode_version==UCODE_R300) { DRM_INFO("Loading R300 Microcode\n"); for ( i = 0 ; i < 256 ; i++ ) { RADEON_WRITE( RADEON_CP_ME_RAM_DATAH, R300_cp_microcode[i][1] ); RADEON_WRITE( RADEON_CP_ME_RAM_DATAL, R300_cp_microcode[i][0] ); } } else { [snip] The test against the microcode_version succeeds... And, from the logs, I don't see the DRM_IOCTL_RADEON_CP_INIT ioctl called twice... Ideas ? Nicolas. |