drm/radeon: 6xx/7xx non-kms endian fixes
agd5f: minor cleanups Signed-off-by: Cédric Cano <ccano@interfaceconcept.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -137,9 +137,9 @@ set_shaders(struct drm_device *dev)
|
||||
ps = (u32 *) ((char *)dev->agp_buffer_map->handle + dev_priv->blit_vb->offset + 256);
|
||||
|
||||
for (i = 0; i < r6xx_vs_size; i++)
|
||||
vs[i] = r6xx_vs[i];
|
||||
vs[i] = cpu_to_le32(r6xx_vs[i]);
|
||||
for (i = 0; i < r6xx_ps_size; i++)
|
||||
ps[i] = r6xx_ps[i];
|
||||
ps[i] = cpu_to_le32(r6xx_ps[i]);
|
||||
|
||||
dev_priv->blit_vb->used = 512;
|
||||
|
||||
@@ -192,6 +192,9 @@ set_vtx_resource(drm_radeon_private_t *dev_priv, u64 gpu_addr)
|
||||
DRM_DEBUG("\n");
|
||||
|
||||
sq_vtx_constant_word2 = (((gpu_addr >> 32) & 0xff) | (16 << 8));
|
||||
#ifdef __BIG_ENDIAN
|
||||
sq_vtx_constant_word2 |= (2 << 30);
|
||||
#endif
|
||||
|
||||
BEGIN_RING(9);
|
||||
OUT_RING(CP_PACKET3(R600_IT_SET_RESOURCE, 7));
|
||||
@@ -291,7 +294,11 @@ draw_auto(drm_radeon_private_t *dev_priv)
|
||||
OUT_RING(DI_PT_RECTLIST);
|
||||
|
||||
OUT_RING(CP_PACKET3(R600_IT_INDEX_TYPE, 0));
|
||||
#ifdef __BIG_ENDIAN
|
||||
OUT_RING((2 << 2) | DI_INDEX_SIZE_16_BIT);
|
||||
#else
|
||||
OUT_RING(DI_INDEX_SIZE_16_BIT);
|
||||
#endif
|
||||
|
||||
OUT_RING(CP_PACKET3(R600_IT_NUM_INSTANCES, 0));
|
||||
OUT_RING(1);
|
||||
|
Reference in New Issue
Block a user