<?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>i.MX ProcessorsのトピックRe: Imx6 solo/dl based processor simultaniously is not working  with live VGA 640x480 video capture (OV5640) and  audio loop back(wm8960 codec)</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327810#M44118</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Venkatesh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;internal bandwidth limitations is difficult to predict&lt;/P&gt;&lt;P&gt;or calculate. Usually this is just experimentation.&lt;/P&gt;&lt;P&gt;For example check that you used Freescale optimized&lt;/P&gt;&lt;P&gt;codecs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;L3.0.35_4.1.0_MM_CODECS&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and installed all latest patches, check patches tab below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="loading" href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab" title="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Very useful would be test this use case without OS, just with bare-metal&lt;/P&gt;&lt;P&gt;SDK (to exclude OS overheads)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;i.MX 6Series Platform SDK&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;chip&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 Aug 2014 14:43:13 GMT</pubDate>
    <dc:creator>igorpadykov</dc:creator>
    <dc:date>2014-08-06T14:43:13Z</dc:date>
    <item>
      <title>Imx6 solo/dl based processor simultaniously is not working  with live VGA 640x480 video capture (OV5640) and  audio loop back(wm8960 codec)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327807#M44115</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ISSUE:I have faced the issue based on video capture parallel and audio loop back/simultaneous.&lt;/P&gt;&lt;P&gt;Both audio and videos was working parallely&amp;nbsp; with QVGA (320x240) 15 fps QCIF (176x144) 15/30 fps .\&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;Working both audio and video for following resolution :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;QVGA (320x240) 15 fps&lt;/P&gt;&lt;P&gt;QCIF (176x144) 15 fps&lt;/P&gt;&lt;P&gt;QCIF (176x144) 30 fps&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tested Commands:&lt;/P&gt;&lt;P&gt;--------------------------------&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 320 -ih 240 -ow 320 -oh 240&amp;nbsp; -m 1 -fr 15-d /dev/video0 -i 1 -c 1000 /v5640_320_240_30fps.yuv&amp;nbsp; &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 176 -ih 144 -ow 176 -oh 144&amp;nbsp; -m 7 -fr 15 -d /dev/video0 -i 1 -c 1000 /CAM/vv176_144_i1_15.yuv&amp;nbsp;&amp;nbsp; &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 176 -ih 144 -ow 176 -oh 144&amp;nbsp; -m 7 -fr 30 -d /dev/video0 -i 1 -c 1000 /CAM/vv176_144_i1_30.yuv &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;--------------------------------&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt; Both audio and video&amp;nbsp; is not working for following resolution :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;QVGA (320x240) 30 fps&lt;/P&gt;&lt;P&gt;QVGA (640x480) 30 fps&lt;/P&gt;&lt;P&gt;QVGA (640x480) 15 fps&lt;/P&gt;&lt;P&gt;Tested Commands:&lt;/P&gt;&lt;P&gt;--------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 640 -ih 480 -ow 640 -oh 480&amp;nbsp; -m 0 -fr 30 -d /dev/video0 -i 1 -c 1000 /CAM/v5640_640_480p_30fps.yuv &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 640 -ih 480 -ow 640 -oh 480&amp;nbsp; -m 0 -fr 10 -d /dev/video0 -i 1 -c 1000 /CAM/v5640_640_480p_10fps.yuv &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_v4l2_capture.out -iw 320 -ih 240 -ow 320 -oh 240&amp;nbsp; -m 1 -fr 15 -d /dev/video0 -i 1 -c 1000 /v5640_320_240_15fps.yuv &amp;amp;&lt;/P&gt;&lt;P&gt;arecord -D hw:0,0 -c 2 -f S16_LE -r 8000 -t raw | aplay -D hw:0,0 -c 2 -f S16_LE&amp;nbsp; -r 8000 -v&lt;/P&gt;&lt;P&gt;--------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any memory related issue happening in the driver side for both camera capture and audio working time?&lt;/P&gt;&lt;P&gt;How to solve this issue?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following things are the memory allocation in kernel drive(linux-3.0.35)&lt;/P&gt;&lt;P&gt;Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;Memory: 256MB = 256MB total&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Memory: 248016k/248016k available, 276272k reserved, 0K highmem&lt;/P&gt;&lt;P&gt;Virtual kernel memory layout:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; vector&amp;nbsp; : 0xffff0000 - 0xffff1000&amp;nbsp;&amp;nbsp; (&amp;nbsp;&amp;nbsp; 4 kB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fixmap&amp;nbsp; : 0xfff00000 - 0xfffe0000&amp;nbsp;&amp;nbsp; ( 896 kB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DMA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 0xf4600000 - 0xffe00000&amp;nbsp;&amp;nbsp; ( 184 MB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; vmalloc : 0xa0800000 - 0xf2000000&amp;nbsp;&amp;nbsp; (1304 MB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lowmem&amp;nbsp; : 0x80000000 - 0xa0000000&amp;nbsp;&amp;nbsp; ( 512 MB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pkmap&amp;nbsp;&amp;nbsp; : 0x7fe00000 - 0x80000000&amp;nbsp;&amp;nbsp; (&amp;nbsp;&amp;nbsp; 2 MB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; modules : 0x7f000000 - 0x7fe00000&amp;nbsp;&amp;nbsp; (&amp;nbsp; 14 MB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .init : 0x80008000 - 0x80032000&amp;nbsp;&amp;nbsp; ( 168 kB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .text : 0x80032000 - 0x808f6bf0&amp;nbsp;&amp;nbsp; (8979 kB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .data : 0x808f8000 - 0x80947240&amp;nbsp;&amp;nbsp; ( 317 kB)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Audio and camera clock settings:&lt;/P&gt;&lt;P&gt;Audio clock settings:&lt;/P&gt;&lt;P&gt;MX6DL_PAD_GPIO_0__CCM_CLKO,---&amp;gt;Audio MCLK clock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int wm8960_clk_enable(int enable)&lt;BR /&gt;{&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;if (enable)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;clk_enable(clko);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;else&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;clk_disable(clko);&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;printk(" %s HELLO old wm8960\n\n\n",__func__);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;return 0;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int mxc_wm8960_init(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;int rate;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;printk(" %s HELLO old wm8960\n\n\n",__func__);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;clko = clk_get(NULL, "clko_clk");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;if (IS_ERR(clko)) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;pr_err("can't get CLKO clock.\n");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;return PTR_ERR(clko);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;/* both audio codec and comera use CLKO clk*/&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;rate = clk_round_rate(clko, 24000000);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;rate = clk_round_rate(clko, 12000000);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;clk_set_rate(clko, rate);&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;wm8960_data.sysclk = rate;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;printk(" %s End rate=%d\n\n\n",__func__,rate);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;return 0;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int __init imx6q_init_audio(void)&lt;BR /&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; platform_device_register(&amp;amp;sabresd_vwm8960_reg_devices);&lt;BR /&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;&amp;nbsp; mxc_register_device(&amp;amp;mx6_sabresd_audio_wm8960_device,&lt;BR /&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;wm8960_data);&lt;BR /&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;&amp;nbsp; imx6q_add_imx_ssi(1, &amp;amp;mx6_sabresd_ssi_pdata);&lt;BR /&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;&amp;nbsp; mxc_wm8960_init();&lt;BR /&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;&amp;nbsp; printk("HELLO old wm8960\n\n\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static struct mxc_audio_platform_data wm8960_data = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ssi_num = 1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .src_port = 2,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ext_port = 3,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .hp_active_low = 1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .mic_active_low = 1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .init = mxc_wm8960_init,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .clock_enable = wm8960_clk_enable,&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Camera clock settings:&lt;/P&gt;&lt;P&gt; MX6DL_PAD_GPIO_6__CCM_CCM_OUT_0 --&amp;gt;GPIO_6 CAmera clock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static struct imx_ipuv3_platform_data ipu_data[] = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .rev = 4,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .csi_clk[0] = "clko2_clk",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .bypass_reset = false,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;BR /&gt;#ifndef OV9712_CAM_CONFIG&lt;BR /&gt;#if 1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .rev = 4,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .csi_clk[0] = "clko2_clk",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .bypass_reset = false,&lt;BR /&gt;#endif&lt;BR /&gt;#endif&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;static struct fsl_mxc_capture_platform_data capture_data[] = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&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;&amp;nbsp; .csi = 0,&lt;BR /&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;&amp;nbsp; .ipu = 0,&lt;BR /&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;&amp;nbsp; .mclk_source = 0,&lt;BR /&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;&amp;nbsp; .is_mipi = 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;BR /&gt;#if 1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&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;&amp;nbsp; .csi = 1,&lt;BR /&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;&amp;nbsp; .ipu = 0,&lt;BR /&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;&amp;nbsp; .mclk_source = 0,&lt;BR /&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;&amp;nbsp; .is_mipi = 1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;/P&gt;&lt;P&gt;static struct mipi_csi2_platform_data mipi_csi2_pdata = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .ipu_id&amp;nbsp; = 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .csi_id = 0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .csi_id = 1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .lanes = 2,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .dphy_clk = "mipi_pllref_clk",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .pixel_clk = "emi_clk",&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;---------&amp;nbsp;&amp;nbsp; &lt;BR /&gt; mx6_sabresd_board_init(void)()&lt;BR /&gt;{&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clko2 = clk_get(NULL, "clko2_clk");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IS_ERR(clko2))&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&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;&amp;nbsp; pr_err("can't get CLKO2 clock.\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk(" %s clko2&amp;nbsp; error&amp;nbsp; \n\n\n",__func__);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new_parent = clk_get(NULL, "osc_clk");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!IS_ERR(new_parent)) {&lt;BR /&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;&amp;nbsp; clk_set_parent(clko2, new_parent);&lt;BR /&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;&amp;nbsp; clk_put(new_parent);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk(" %s clko2 parent&amp;nbsp; error&amp;nbsp; \n\n\n",__func__);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rate = clk_round_rate(clko2, 24000000);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clk_set_rate(clko2, rate);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clk_enable(clko2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printk(" %s 2 clko2 set&amp;nbsp; rate=%d\n\n\n",__func__,rate);&lt;BR /&gt;}&lt;BR /&gt;----------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Please let me know whats happening inside the kernel while accessing the caera capture above QVGA resolution with audio,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;Without camera capture audio playback and capture working properly,if once camera capture enabled that time audio is not working .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;Audio using CLKO(GPIO_0) and video using the clk CLKO2(GPIO_6).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;How to solve this simultaneous memory related issue in inx6 solo/dl processor.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks by,&lt;/P&gt;&lt;P&gt;Venkat&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff00ff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Jul 2014 10:55:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327807#M44115</guid>
      <dc:creator>venkatesh_pvsm</dc:creator>
      <dc:date>2014-07-31T10:55:17Z</dc:date>
    </item>
    <item>
      <title>Re: Imx6 solo/dl based processor simultaniously is not working  with live VGA 640x480 video capture (OV5640) and  audio loop back(wm8960 codec)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327808#M44116</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Venkatesh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am not sure that this is memory issue.&lt;/P&gt;&lt;P&gt;Issue may be related to performance issues, that is internal bandwidth&lt;/P&gt;&lt;P&gt;limitation.&lt;/P&gt;&lt;P&gt;For further checking I would suggest to test this on Freescale reference board&lt;/P&gt;&lt;P&gt;with Freescale Demo images&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;L3.10.17_1.0.0_IMX6QDLS_BUNDLE&lt;/A&gt; &lt;IMG alt="" class="jiveImage" src="http://www.freescale.com/files/graphic/SECURITYINFOIMAGE.gif" /&gt; : Source Code&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://ci.ossystems.com.br/public/fsl-community-bsp/master/"&gt;http://ci.ossystems.com.br/public/fsl-community-bsp/master/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://download.ossystems.com.br/images/freescale/current/"&gt;http://download.ossystems.com.br/images/freescale/current/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;chip&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>Mon, 04 Aug 2014 15:15:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327808#M44116</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2014-08-04T15:15:55Z</dc:date>
    </item>
    <item>
      <title>Re: Imx6 solo/dl based processor simultaniously is not working  with live VGA 640x480 video capture (OV5640) and  audio loop back(wm8960 codec)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327809#M44117</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Right now we don't have IMX6 free scale reference board ,any body tested this both audio(Playback and capture) and video (capture) application with Freecale board.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt; Also any Internal Bandwidth limitation&amp;nbsp; are their&amp;nbsp; between IMX6S/DL and IMX6Q based processor.&lt;/P&gt;&lt;P&gt;Thanks by,&lt;/P&gt;&lt;P&gt;Venkat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 05:57:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327809#M44117</guid>
      <dc:creator>venkatesh_pvsm</dc:creator>
      <dc:date>2014-08-06T05:57:23Z</dc:date>
    </item>
    <item>
      <title>Re: Imx6 solo/dl based processor simultaniously is not working  with live VGA 640x480 video capture (OV5640) and  audio loop back(wm8960 codec)</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327810#M44118</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Venkatesh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;internal bandwidth limitations is difficult to predict&lt;/P&gt;&lt;P&gt;or calculate. Usually this is just experimentation.&lt;/P&gt;&lt;P&gt;For example check that you used Freescale optimized&lt;/P&gt;&lt;P&gt;codecs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;L3.0.35_4.1.0_MM_CODECS&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and installed all latest patches, check patches tab below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="loading" href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab" title="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Very useful would be test this use case without OS, just with bare-metal&lt;/P&gt;&lt;P&gt;SDK (to exclude OS overheads)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&amp;amp;nodeId=018rH3ZrDRB24A&amp;amp;fpsp=1&amp;amp;tab=Design_Tools_Tab"&gt;i.MX 6Series Platform SDK&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;chip&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 14:43:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Imx6-solo-dl-based-processor-simultaniously-is-not-working-with/m-p/327810#M44118</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2014-08-06T14:43:13Z</dc:date>
    </item>
  </channel>
</rss>

