<?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 Re: enable/disable local alpha and global alpha -blog archive in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166246#M4558</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;loc_alpha.alpha_in_pixel should be 1 to indicate there is alpha information per each pixel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 08 Aug 2013 05:19:30 GMT</pubDate>
    <dc:creator>max_tsai</dc:creator>
    <dc:date>2013-08-08T05:19:30Z</dc:date>
    <item>
      <title>enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166236#M4548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;To enable &lt;STRONG&gt;local alpha&lt;/STRONG&gt; needs &lt;STRONG&gt;32 bpp&lt;/STRONG&gt; within bootargs, like "&lt;SPAN style="font-size: 2; "&gt;video=mxcdi1fb:RGB666,XGA&lt;SPAN style="color: #FF0000; "&gt;,bpp=32&lt;/SPAN&gt;&lt;/SPAN&gt;"&lt;/P&gt;&lt;P&gt;Attached a simple code to enable/disable local/global alpha bledding by ioctl below.&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" href="https://community.nxp.com/blogs/26-alpha.c" target="_self"&gt;alpha blending&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jun 2012 08:44:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166236#M4548</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2012-06-05T08:44:28Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166237#M4549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Max&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Where is the attachment?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jul 2013 14:05:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166237#M4549</guid>
      <dc:creator>saurabh206</dc:creator>
      <dc:date>2013-07-23T14:05:25Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166238#M4550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Actually seems that is not an attachment, it is a link but the link is broken &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/MaxTsai"&gt;MaxTsai&lt;/A&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Jul 2013 16:40:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166238#M4550</guid>
      <dc:creator>LeonardoSandova</dc:creator>
      <dc:date>2013-07-23T16:40:00Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166239#M4551</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The attachment is broken. Attached the code below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;---&lt;/P&gt;&lt;P&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;sys/types.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;sys/stat.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;fcntl.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;sys/ioctl.h&amp;gt;&lt;/P&gt;&lt;P&gt;#include &amp;lt;unistd.h&amp;gt;&lt;/P&gt;&lt;P&gt;//#include &amp;lt;asm/arch/mxcfb.h&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define MXCFB_SET_GBL_ALPHA _IOW('F', 0x21, struct mxcfb_gbl_alpha)&lt;/P&gt;&lt;P&gt;#define MXCFB_SET_CLR_KEY _IOW('F', 0x22, struct mxcfb_color_key)&lt;/P&gt;&lt;P&gt;#define MXCFB_SET_LOC_ALPHA _IOWR('F', 0x26, struct mxcfb_loc_alpha) &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;struct mxcfb_gbl_alpha {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int enable;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int alpha;&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;struct mxcfb_color_key {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int enable;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __u32 color_key;&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;struct mxcfb_loc_alpha {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int enable;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int alpha_in_pixel;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp; unsigned long alpha_phy_addr0;&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;&amp;nbsp;&amp;nbsp; unsigned long alpha_phy_addr1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(int argc, char **argv)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int fb_fd;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct mxcfb_gbl_alpha gbl_alpha;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct mxcfb_loc_alpha l_alpha;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct mxcfb_color_key key;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char fbname[128];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char *endptr;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(argc &amp;lt; 3){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("Usage: %s fb_chn [gn|ln] [alpha_val[0-255]] [color_key[0x00000000-0xffffffff]]\n",argv[0]);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(fbname, 0, sizeof(fbname));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sprintf(fbname, "/dev/graphics/fb%s", argv[1]);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("open '%s'\n", fbname);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_fd = open(fbname,O_RDWR,0);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (fb_fd == -1) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; perror("open");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit(1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (argv[2][0] == 'g') {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gbl_alpha.enable = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gbl_alpha.alpha = atoi(argv[3]);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ioctl(fb_fd, MXCFB_SET_GBL_ALPHA, &amp;amp;gbl_alpha))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; perror("ioctl");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (argv[2][1] == '1') {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("enable global alpha blending\n");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; key.enable = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("disable global alpha blending\n");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; key.enable = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp; key.color_key = strtol(argv[4], &amp;amp;endptr, 16);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("key = 0x%x\n", key.color_key);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ioctl(fb_fd, MXCFB_SET_CLR_KEY, &amp;amp;key))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; perror("ioctl");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (argv[2][0] =='l') {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (argv[2][1] == '1') {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; l_alpha.enable = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("enable local alpha blending\n");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; l_alpha.enable = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("disable local alpha blending\n");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp; l_alpha.alpha_in_pixel = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ioctl(fb_fd, MXCFB_SET_LOC_ALPHA, &amp;amp;l_alpha))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; perror("ioctl");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; close(fb_fd);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 24 Jul 2013 02:10:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166239#M4551</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2013-07-24T02:10:12Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166240#M4552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Max&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for sharing the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Our setup&amp;nbsp; is like data from android surface flinger is available "/dev/graphics/fb0"&lt;/P&gt;&lt;P&gt;We want to do overlay with CSI buffer which is written on "/dev/graphics/fb1"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We are able to get it working with global alpha and colour keying. But due to some limitation with our GUI we can not use global alpha.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But If I disable global alpha and enable the local alpha than data from /dev/graphics/fb1 is not display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Is it possible to do alpha blending using local alpha without colour keying?&lt;/P&gt;&lt;P&gt;- What is a significance of alpha_phy_addr0, alpha_phy_addr1 and alpha_in_pixel?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Saurabh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Jul 2013 10:19:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166240#M4552</guid>
      <dc:creator>saurabh206</dc:creator>
      <dc:date>2013-07-25T10:19:16Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166241#M4553</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Your data going to show into framebuffer must include alpha information(ARGB), so the pixel size of framebuffer should be 32bpp.&lt;/P&gt;&lt;P&gt;alpha_in_pixel means each pixel embedds alpha channel, and alpha_phy_addr are the buffers used by IPU.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Jul 2013 08:58:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166241#M4553</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2013-07-30T08:58:41Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166242#M4554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;BTW, color key should work with global alpha. IPU get alpha info from each pixel for local alpha, and color key doesn't mater for local alpha. you can refer to "hardware/mx5x/libgralloc/framebuffer.cpp".&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Jul 2013 09:01:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166242#M4554</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2013-07-30T09:01:32Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166243#M4555</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Max&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the valuable information.&lt;/P&gt;&lt;P&gt;Our fame buffer is 32bit and it should contain ARGB format. I will verify this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"hardware/imx/mx5x/libgralloc/framebuffer.cpp" will be used for imx6q.&lt;/P&gt;&lt;P&gt;To enable local alpha I need to build source code without "HAVE_FSL_EPDC_FB".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please explain that what is significance of HAVE_FSL_EPDC_FB?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Saurabh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 30 Jul 2013 16:41:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166243#M4555</guid>
      <dc:creator>saurabh206</dc:creator>
      <dc:date>2013-07-30T16:41:55Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166244#M4556</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi I trace FSL ICS and FSL JB, "HAVE_FSL_EPDC_FB" "hardware/imx/mx6/libgralloc_wrapper/Android.mk" is marked.&lt;/P&gt;&lt;P&gt;Also alpha blending configuration should not be related with this flag.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 31 Jul 2013 02:31:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166244#M4556</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2013-07-31T02:31:15Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166245#M4557</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have modified the frame buffer code to pass alpha channel.&lt;/P&gt;&lt;P&gt;hardware\imx\mx6\libgralloc_wrapper\framebuffer.cpp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.bits_per_pixel = 32;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.red.offset&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8;&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;&amp;nbsp;&amp;nbsp; info.red.length&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.green.offset&amp;nbsp;&amp;nbsp; = 16;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.green.length&amp;nbsp;&amp;nbsp; = 8;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.blue.offset&amp;nbsp;&amp;nbsp;&amp;nbsp; = 24;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.blue.length&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.transp.offset&amp;nbsp; = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info.transp.length&amp;nbsp; = 8;&amp;nbsp; //We need local alpha transparency&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And I am enabling the local alpha channel by following code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int set_local_alpha()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp; struct mxcfb_loc_alpha loc_alpha;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; int fd_fb;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if ((fd_fb = open("/dev/graphics/fb0", O_RDWR, 0)) &amp;lt; 0)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __android_log_print(ANDROID_LOG_DEBUG,CF_TAG,"unable to open /dev/graphics/fb0 ");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt; loc_alpha.alpha_in_pixel = 0;&lt;BR /&gt; loc_alpha.enable = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; loc_alpha.alpha_phy_addr0=0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; loc_alpha.alpha_phy_addr1=0;&lt;/P&gt;&lt;P&gt; if ( ioctl(fd_fb, MXCFB_SET_LOC_ALPHA, &amp;amp;loc_alpha) &amp;lt; 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __android_log_print(ANDROID_LOG_DEBUG,CF_TAG,"Error in applying Local Alpha\n");&lt;BR /&gt; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; close (fd_fb);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After setting the local alpha I got only blue screen on display, no Android UI or not CSI content.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you have idea, what part is missing?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 01 Aug 2013 11:29:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166245#M4557</guid>
      <dc:creator>saurabh206</dc:creator>
      <dc:date>2013-08-01T11:29:48Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166246#M4558</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;loc_alpha.alpha_in_pixel should be 1 to indicate there is alpha information per each pixel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Aug 2013 05:19:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166246#M4558</guid>
      <dc:creator>max_tsai</dc:creator>
      <dc:date>2013-08-08T05:19:30Z</dc:date>
    </item>
    <item>
      <title>Re: enable/disable local alpha and global alpha -blog archive</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166247#M4559</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;Max&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I got it working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your support.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loc_alpha.alpha_in_pixel = 1;&lt;/P&gt;&lt;P&gt; loc_alpha.enable = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; loc_alpha.alpha_phy_addr0=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; loc_alpha.alpha_phy_addr1=0;&lt;/P&gt;&lt;P&gt; if ( ioctl(fd_fb, MXCFB_SET_LOC_ALPHA, &amp;amp;loc_alpha) &amp;lt; 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __android_log_print(ANDROID_LOG_DEBUG,CF_TAG,"Error in applying Local Alpha\n");&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is required to get local alpha working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Saurabh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Aug 2013 07:20:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/enable-disable-local-alpha-and-global-alpha-blog-archive/m-p/166247#M4559</guid>
      <dc:creator>saurabh206</dc:creator>
      <dc:date>2013-08-08T07:20:29Z</dc:date>
    </item>
  </channel>
</rss>

