<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic g2d_blit_2d: fail with status -20 in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/g2d-blit-2d-fail-with-status-20/m-p/470618#M74473</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,FreeScale&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I meet a very strange question on blit image which with G2D_I420,I blit image with physical continued memory as below,if the source image with 576*360,blit success,but if with 480*300,blit failed,how can i fix this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int width = 480;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int height = 300;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int o_width = 320;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int o_height = 240;&lt;/P&gt;&lt;P&gt;&amp;nbsp; g2d_buf* mpInputBuf = g2d_alloc(width * height * 3 / 2, 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp; g2d_buf* mpOutputBuf = g2d_alloc(o_width * o_height * 4, 0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[0] = mpInputBuf-&amp;gt;buf_paddr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[1] = mpInputBuf-&amp;gt;buf_paddr+ a_width*height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[2] = mInputSurface.planes[1] + a_width*height / 4;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.left = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.top = 0; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.right = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.bottom = height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.stride = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.width&amp;nbsp; = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.height = height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.rot&amp;nbsp;&amp;nbsp;&amp;nbsp; = G2D_ROTATION_0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.format = G2D_I420;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.blendfunc = G2D_ZERO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.global_alpha = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Global alpha value 0~255&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.clrcolor = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.planes[0] = mpOutputBuf-&amp;gt;buf_paddr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.left = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.top = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.right = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.bottom = o_height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.stride = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.width&amp;nbsp; = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.height = o_height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.rot&amp;nbsp;&amp;nbsp;&amp;nbsp; = G2D_ROTATION_0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.format = G2D_RGBA8888;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.blendfunc = G2D_SRC_ALPHA;//G2D_ZERO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.global_alpha = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Global alpha value 0~255&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.clrcolor = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_make_current(mhG2d, G2D_HARDWARE_2D))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -4;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; g2d_enable(mhG2d,G2D_BLEND);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_blit(mhG2d, &amp;amp;mInputSurface, &amp;amp;mOutputSurface))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2d_finish(mhG2d);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -5;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; g2d_disable(mhG2d, G2D_BLEND);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_finish(mhG2d))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -6;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 Jan 2016 05:18:05 GMT</pubDate>
    <dc:creator>yongtang</dc:creator>
    <dc:date>2016-01-06T05:18:05Z</dc:date>
    <item>
      <title>g2d_blit_2d: fail with status -20</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/g2d-blit-2d-fail-with-status-20/m-p/470618#M74473</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,FreeScale&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I meet a very strange question on blit image which with G2D_I420,I blit image with physical continued memory as below,if the source image with 576*360,blit success,but if with 480*300,blit failed,how can i fix this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int width = 480;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int height = 300;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int o_width = 320;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; int o_height = 240;&lt;/P&gt;&lt;P&gt;&amp;nbsp; g2d_buf* mpInputBuf = g2d_alloc(width * height * 3 / 2, 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp; g2d_buf* mpOutputBuf = g2d_alloc(o_width * o_height * 4, 0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[0] = mpInputBuf-&amp;gt;buf_paddr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[1] = mpInputBuf-&amp;gt;buf_paddr+ a_width*height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.planes[2] = mInputSurface.planes[1] + a_width*height / 4;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.left = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.top = 0; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.right = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.bottom = height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.stride = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.width&amp;nbsp; = width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.height = height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.rot&amp;nbsp;&amp;nbsp;&amp;nbsp; = G2D_ROTATION_0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.format = G2D_I420;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.blendfunc = G2D_ZERO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.global_alpha = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Global alpha value 0~255&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mInputSurface.clrcolor = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.planes[0] = mpOutputBuf-&amp;gt;buf_paddr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.left = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.top = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.right = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.bottom = o_height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.stride = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.width&amp;nbsp; = o_width;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.height = o_height;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.rot&amp;nbsp;&amp;nbsp;&amp;nbsp; = G2D_ROTATION_0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.format = G2D_RGBA8888;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.blendfunc = G2D_SRC_ALPHA;//G2D_ZERO;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.global_alpha = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Global alpha value 0~255&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mOutputSurface.clrcolor = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_make_current(mhG2d, G2D_HARDWARE_2D))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -4;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; g2d_enable(mhG2d,G2D_BLEND);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_blit(mhG2d, &amp;amp;mInputSurface, &amp;amp;mOutputSurface))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2d_finish(mhG2d);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -5;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; g2d_disable(mhG2d, G2D_BLEND);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(0 != g2d_finish(mhG2d))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -6;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Jan 2016 05:18:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/g2d-blit-2d-fail-with-status-20/m-p/470618#M74473</guid>
      <dc:creator>yongtang</dc:creator>
      <dc:date>2016-01-06T05:18:05Z</dc:date>
    </item>
    <item>
      <title>Re: g2d_blit_2d: fail with status -20</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/g2d-blit-2d-fail-with-status-20/m-p/470619#M74474</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi yong&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;recommended to try latest Vivante v5.0.11p7.4 gpu library (included&lt;/P&gt;&lt;P&gt;in L3.14.52), attached document Table 9. New features shows its&lt;/P&gt;&lt;P&gt;improvements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;igor&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 10 Jan 2016 09:41:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/g2d-blit-2d-fail-with-status-20/m-p/470619#M74474</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2016-01-10T09:41:01Z</dc:date>
    </item>
  </channel>
</rss>

