aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mxc
diff options
context:
space:
mode:
authorXianzhong <b07117@freescale.com>2013-11-28 09:37:16 -0500
committerNitin Garg <nitin.garg@freescale.com>2014-04-16 09:47:34 -0400
commit14adcace58ae03c2d79052a9434670706cc67cb0 (patch)
tree31fa9f25bf76211973707f746a75f8305f78438c /drivers/mxc
parentfb09778c301ed931be9f004104e1951dfd8abf0d (diff)
ENGR00289999 gpu: fixed gc880 invalid command state message
gpu kernel dump the error message when enable DEBUG mode: gckCONTEXT_Update(1493): State 0x0518 is not mapped. gckCONTEXT_Update(1493): State 0x0520 is not mapped. gckCONTEXT_Update(1493): State 0x0518 is not mapped. gckCONTEXT_Update(1493): State 0x0520 is not mapped. align gpu kernel driver to fix the error message Signed-off-by: Xianzhong <b07117@freescale.com> Acked-by: Jason Liu
Diffstat (limited to 'drivers/mxc')
-rw-r--r--drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_context.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_context.c b/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_context.c
index 42e69151ff13..e277a21a6097 100644
--- a/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_context.c
+++ b/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_context.c
@@ -436,6 +436,7 @@ _InitializeContextBuffer(
436 gctUINT i; 436 gctUINT i;
437 gctUINT vertexUniforms, fragmentUniforms; 437 gctUINT vertexUniforms, fragmentUniforms;
438 gctUINT fe2vsCount; 438 gctUINT fe2vsCount;
439 gctBOOL halti0;
439#endif 440#endif
440 441
441 /* Reset the buffer index. */ 442 /* Reset the buffer index. */
@@ -457,6 +458,7 @@ _InitializeContextBuffer(
457#if !defined(VIVANTE_NO_3D) 458#if !defined(VIVANTE_NO_3D)
458 /**************************************************************************/ 459 /**************************************************************************/
459 /* Build 3D states. *******************************************************/ 460 /* Build 3D states. *******************************************************/
461 halti0 = (((((gctUINT32) (Context->hardware->identity.chipMinorFeatures1)) >> (0 ? 23:23)) & ((gctUINT32) ((((1 ? 23:23) - (0 ? 23:23) + 1) == 32) ? ~0 : (~(~0 << ((1 ? 23:23) - (0 ? 23:23) + 1)))))) );
460 462
461 /* Query shader support. */ 463 /* Query shader support. */
462 gcmkVERIFY_OK(gckHARDWARE_QueryShaderCaps( 464 gcmkVERIFY_OK(gckHARDWARE_QueryShaderCaps(
@@ -747,6 +749,8 @@ _InitializeContextBuffer(
747 749
748 if (Context->hardware->identity.pixelPipes == 1) 750 if (Context->hardware->identity.pixelPipes == 1)
749 { 751 {
752 index += _State(Context, index, 0x01460 >> 2, 0x00000000, 8, gcvFALSE, gcvTRUE);
753
750 index += _State(Context, index, 0x01430 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE); 754 index += _State(Context, index, 0x01430 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE);
751 index += _State(Context, index, 0x01410 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE); 755 index += _State(Context, index, 0x01410 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE);
752 } 756 }
@@ -754,14 +758,17 @@ _InitializeContextBuffer(
754 { 758 {
755 index += _State(Context, index, (0x01460 >> 2) + (0 << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE); 759 index += _State(Context, index, (0x01460 >> 2) + (0 << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE);
756 760
757 index += _State(Context, index, (0x01480 >> 2) + (0 << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE);
758
759 for (i = 0; i < 2; i++) 761 for (i = 0; i < 2; i++)
760 { 762 {
761 index += _State(Context, index, (0x01500 >> 2) + (i << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE); 763 index += _State(Context, index, (0x01500 >> 2) + (i << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE);
762 } 764 }
763 } 765 }
764 766
767 if (Context->hardware->identity.pixelPipes > 1 || halti0)
768 {
769 index += _State(Context, index, (0x01480 >> 2) + (0 << 3), 0x00000000, Context->hardware->identity.pixelPipes, gcvFALSE, gcvTRUE);
770 }
771
765 /* Resolve states. */ 772 /* Resolve states. */
766 index += _State(Context, index, 0x01604 >> 2, 0x00000000, 1, gcvFALSE, gcvFALSE); 773 index += _State(Context, index, 0x01604 >> 2, 0x00000000, 1, gcvFALSE, gcvFALSE);
767 index += _State(Context, index, 0x01608 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE); 774 index += _State(Context, index, 0x01608 >> 2, 0x00000000, 1, gcvFALSE, gcvTRUE);