<?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中的主题 how to change DDR clock of i.mx6</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260448#M25915</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all, the DDR clock of i.mx6 is 528MHz on boot time, but I want to change it to lower(may be 400MHz).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I read the Datasheet and found the below introduction:&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;18.2.1.5.3 PLL clock change&lt;/P&gt;&lt;P&gt;If software wants to change pll clock output of a specific pll, or if software wants to stop&lt;/P&gt;&lt;P&gt;a specific pll, then software needs first to move all the clocks generated from this pll to&lt;/P&gt;&lt;P&gt;another pll which is not changed.&lt;/P&gt;&lt;P&gt;This should be done via the glitch less mux's for the clocks which cant be stopped (core&lt;/P&gt;&lt;P&gt;and bus clocks). &lt;SPAN style="color: #0000ff;"&gt;Procedure of PLL clock change is described in anatop module spec&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;But I can't found the "&lt;SPAN style="color: #0000ff;"&gt;anatop module spec&lt;/SPAN&gt;".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By the way, in i.mx5,the clock is configure int the file of "&lt;SPAN style="color: #0000ff;"&gt;lowlevel_init.S&lt;/SPAN&gt;" by the macro of "&lt;SPAN style="color: #0000ff;"&gt;init_clock&lt;/SPAN&gt;" &amp;amp; "&lt;SPAN style="color: #0000ff;"&gt;setup_pll pll, freq&lt;/SPAN&gt;", &lt;/P&gt;&lt;P&gt;But in i.mx6,the macro of "setup_pll pll, freq" is empty and "&lt;SPAN style="color: #0000ff;"&gt;PLL1, PLL2, and PLL3 are configured by ROM&lt;/SPAN&gt;", so I have no idea of how to change DDR clock of i.mx6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If anyone can help me please?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 10 Apr 2013 08:37:54 GMT</pubDate>
    <dc:creator>Tony_Luo</dc:creator>
    <dc:date>2013-04-10T08:37:54Z</dc:date>
    <item>
      <title>how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260448#M25915</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all, the DDR clock of i.mx6 is 528MHz on boot time, but I want to change it to lower(may be 400MHz).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I read the Datasheet and found the below introduction:&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;18.2.1.5.3 PLL clock change&lt;/P&gt;&lt;P&gt;If software wants to change pll clock output of a specific pll, or if software wants to stop&lt;/P&gt;&lt;P&gt;a specific pll, then software needs first to move all the clocks generated from this pll to&lt;/P&gt;&lt;P&gt;another pll which is not changed.&lt;/P&gt;&lt;P&gt;This should be done via the glitch less mux's for the clocks which cant be stopped (core&lt;/P&gt;&lt;P&gt;and bus clocks). &lt;SPAN style="color: #0000ff;"&gt;Procedure of PLL clock change is described in anatop module spec&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;But I can't found the "&lt;SPAN style="color: #0000ff;"&gt;anatop module spec&lt;/SPAN&gt;".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By the way, in i.mx5,the clock is configure int the file of "&lt;SPAN style="color: #0000ff;"&gt;lowlevel_init.S&lt;/SPAN&gt;" by the macro of "&lt;SPAN style="color: #0000ff;"&gt;init_clock&lt;/SPAN&gt;" &amp;amp; "&lt;SPAN style="color: #0000ff;"&gt;setup_pll pll, freq&lt;/SPAN&gt;", &lt;/P&gt;&lt;P&gt;But in i.mx6,the macro of "setup_pll pll, freq" is empty and "&lt;SPAN style="color: #0000ff;"&gt;PLL1, PLL2, and PLL3 are configured by ROM&lt;/SPAN&gt;", so I have no idea of how to change DDR clock of i.mx6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If anyone can help me please?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Apr 2013 08:37:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260448#M25915</guid>
      <dc:creator>Tony_Luo</dc:creator>
      <dc:date>2013-04-10T08:37:54Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260449#M25916</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Tony&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; See below code for reference, it makes the DDR's clock root from 396M PFD.&amp;nbsp; if you want to make DDR running at 400M, you need to switch periph_clk to 400M, which is MMDC clock's parent, and periph_clk is from pre_periph_clk, so you need to switch it from 528M PLL2 to 396M PFD. Normally, 528M DDR script should work for 400M, but if you find it can NOT work, then maybe DDR script need improvement. BTW, you can set CCM_CCOSR to output mmdc_axi_ch0's clock root to CLKO pin, then you can monitor whether it is the frequency you need.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* Init the DDR according the init script */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r0, =CCM_BASE_ADDR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* select 400MHz for pre_periph_clk_sel */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00060324&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x18]&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Apr 2013 09:30:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260449#M25916</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-04-11T09:30:46Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260450#M25917</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;BTW, this code should be done before DDR init, normally it should be in flash_header.S, if you use DCD mode, then you should add these config into DCD items.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Apr 2013 09:32:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260450#M25917</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-04-11T09:32:09Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260451#M25918</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yongcai,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks so much for pointing me to the DCD table feature. But I add the CCM config into DCD items between IOMUXC items and MMDC items like below:&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(37, IOMUXC_BASE_ADDR + 0x758, 0x00000000)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(38, IOMUXC_BASE_ADDR + 0x774, 0x00020000)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(39, IOMUXC_BASE_ADDR + 0x78c, 0x00000030)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(40, IOMUXC_BASE_ADDR + 0x798, 0x000C0000)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(41, CCM_BASE_ADDR + 0x18, 0x00060324)&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; //add here&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(42, MMDC_P0_BASE_ADDR + 0x81c, 0x33333333)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(43, MMDC_P0_BASE_ADDR + 0x820, 0x33333333)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(44, MMDC_P0_BASE_ADDR + 0x824, 0x33333333)&lt;/P&gt;&lt;P&gt;MXC_DCD_ITEM(45, MMDC_P0_BASE_ADDR + 0x828, 0x33333333)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;and the MfgTool load u-boot fail and info "Reason is unknown,failed to run comman".&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Apr 2013 06:55:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260451#M25918</guid>
      <dc:creator>Tony_Luo</dc:creator>
      <dc:date>2013-04-12T06:55:19Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260452#M25919</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Tony&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If you add one item to DCD table, some parameters need to be changed, please search the below two lines code, the DCD length must be changed, such as below, if there is 59 items, then Len = 59*8+4+4=0x1E0, so there is E001 in the dcd_hdr, and same as write_dcd_cmd, it is DC01. You can try it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 66 dcd_hdr:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .word 0x40E001D2 /* Tag=0xD2, Len=59*8 + 4 + 4, Ver=0x40 */&lt;/P&gt;&lt;P&gt; 67 write_dcd_cmd:&amp;nbsp;&amp;nbsp;&amp;nbsp; .word 0x04DC01CC /* Tag=0xCC, Len=59*8 + 4, Param=0x04 */&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Apr 2013 07:03:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260452#M25919</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-04-12T07:03:22Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260453#M25920</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yongcai,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks for your quick replying, I have changed the "dcd_hdr" and "write_dcd_cmd" to the right value,but get the same error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; By the way, what I use is Sabrelite, and please see the attach file for my modify.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Apr 2013 07:37:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260453#M25920</guid>
      <dc:creator>Tony_Luo</dc:creator>
      <dc:date>2013-04-12T07:37:57Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260454#M25921</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Tony&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If so, then I guess you need to adjust DDR script to make it work at 400M. The DDR script means those DCD items of MMDC configure.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 Apr 2013 08:22:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260454#M25921</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-04-12T08:22:58Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260455#M25922</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; we also have a custom board based on mx6sabrelite and we need to reduce the DDR speed to 500Mhz instead of the 528Mhz as the final solution. Maybe for now the 400Mhz should be enough, but I cannot get it to work with the indication found in this post. I was hoping someone could give me some pointers....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using the latest u-boot release 2013.04 and it seems that the DDR initialisation structure changed a little bit. It seems there is no more flash_header.S and the way the DCD structure is declared as changed... &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I modify the following line in board\freescale\imx\ddr\mx6q_4x_mt41j128.cfg, but for now the boot hang...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA 4 0x020e0774 0x00020000&lt;/P&gt;&lt;P&gt;DATA 4 0x020e078c 0x00000030&lt;/P&gt;&lt;P&gt;DATA 4 0x020e0798 0x000C0000&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*************MY ADDITION**************&lt;/P&gt;&lt;P&gt;DATA 4 0x020C4018 0x00060324&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/********************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA 4 0x021b081c 0x33333333&lt;/P&gt;&lt;P&gt;DATA 4 0x021b0820 0x33333333&lt;/P&gt;&lt;P&gt;DATA 4 0x021b0824 0x33333333&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas will be welcome&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Patrice&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Jun 2013 19:42:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260455#M25922</guid>
      <dc:creator>patricesarrasin</dc:creator>
      <dc:date>2013-06-19T19:42:46Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260456#M25923</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Patrice,&lt;/P&gt;&lt;P&gt;i am working on a similar issue but on a sabre SD board. Have you tried the u-boot command &lt;EM&gt;clk&lt;/EM&gt;? just stop the booting process on U-boot and type &lt;EM&gt;clk ddr 400.&lt;/EM&gt; This is not a permanent change but at least in the testing phase it can help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Leo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Jun 2013 20:10:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260456#M25923</guid>
      <dc:creator>LeonardoSandova</dc:creator>
      <dc:date>2013-06-19T20:10:58Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260457#M25924</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;There was some code to modify the DDR clock and do the calibration ( see attached files). It worked in baremetal and I was trying to integrate inside u-boot... For now, I didn't find the correct place to put it inside u-boot. I have to find the place where I can implement this logic before we the jump into RAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas for the correct place?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 11:49:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260457#M25924</guid>
      <dc:creator>patricesarrasin</dc:creator>
      <dc:date>2013-06-20T11:49:30Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260458#M25925</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Hi,&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; which u-boot are you using? In my version this command doesn't exist... I am trying to do the integration of it from the source code I found here:&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;A class="jive-link-external-small" href="https://github.com/bandwidthcrunch/u-boot-gazelle/blob/master/common/cmd_clk.c" style="font-style: inherit; font-family: inherit; color: #3778c7;"&gt;u-boot-gazelle/common/cmd_clk.c at master · bandwidthcrunch/u-boot-gazelle · GitHub&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Pat&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jun 2013 11:50:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260458#M25925</guid>
      <dc:creator>patricesarrasin</dc:creator>
      <dc:date>2013-06-20T11:50:21Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260459#M25926</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, all&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If I remembered right, we didn't support changing DDR clk in runtime under uboot. Which means if you want a dedicated DDR freq, you need to change the DCD table as you mentioned upper, which is in charge of DDR controller's initialization. Different DDR freq may need different DDR script(DCD setting) to make it work stably.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Jun 2013 10:52:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260459#M25926</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-06-21T10:52:28Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260460#M25927</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok thanks for info! I will stop trying to change it in runtime under u-boot... Do you already have a working script for 500Mhz or 400Mhz so I can based myself on it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Jun 2013 11:24:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260460#M25927</guid>
      <dc:creator>patricesarrasin</dc:creator>
      <dc:date>2013-06-21T11:24:42Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260461#M25928</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Pat&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sorry, I don't have a 500M script, I only have a flash_header when I was trying 400M on iMX6Q sabresd board, this is a debug version, the script is not the latest one, you can try it to see whether it works on your board first, and you should contact the DDR owner to get the latest script for 400M.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Init the DDR according the init script */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r0, =CCM_BASE_ADDR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* select 400MHz for pre_periph_clk_sel */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00060324&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x18]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* 64-bit DDR3 */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* IOMUX setting */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r0, =IOMUXC_BASE_ADDR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x30&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5a8]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5b0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x524]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x51c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x518]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x50c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5b8]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5c0]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00020030&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5ac]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5b4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x528]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x520]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x514]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x510]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5bc]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5c4]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x56c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x578]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x588]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x594]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x57c]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00003000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x590]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x598]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x00&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x58c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00003030&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x59c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x5a0]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00000030&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x784]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x788]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x794]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x79c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x7a0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x7a4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x7a8]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x748]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x74c]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x00020000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x750]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x00000000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x758]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x00020000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x774]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x30&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x78c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov r1, #0x000c0000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x798]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Initialize 2GB DDR3 - Micron MT41J128M */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r0, =MMDC_P0_BASE_ADDR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r2, =MMDC_P1_BASE_ADDR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x02020207&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x83c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x02020201&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x840]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x02020207&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x83c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x02150203&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x840]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x3E35353B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x848]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x3A393541&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x848]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x41424744&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x850]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x4937483B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x850]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x33333333&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x81c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x820]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x824]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x828]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x81c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x820]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x824]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x828]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00081740&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x18]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00008000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x555b99a4&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x0c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0xfe730e64&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x10]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x01ff00db&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x14]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x000026d2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x2c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x005b0e21&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x30]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x1b334000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x08]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x0003002d&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x04]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00000027&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x40]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0xc31a0000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x00]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00000800&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x8b8]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x04088032&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x0408803a&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00008033&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x0000803b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00428031&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00428039&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x09308030&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x09308038&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x04008040&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x04008048&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0xa5380003&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x800]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00005800&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x20]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00022221&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x818]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00022221&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r2,#0x818]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr r1, =0x00000000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; str r1, [r0,#0x1c]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Jun 2013 07:12:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260461#M25928</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2013-06-26T07:12:30Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260462#M25929</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Not to go off-topic, but on another board my company made (based on a Samsung chipset) there was an issue with DDR initialization. Simply put, when writing values to the DDR, we weren't able to read the same values. Due to limited documentation, the team fixed that issue with 'trial-and-error'. Basically testing out different combinations for the DDR settings until they found something that worked; obviously it took them a long time to fix things.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm worried about facing the same problem with an upcoming iMX6 dual core board we are designing. From what I've understood with this discussion, the DDR gets initialized in the boot ROM and neither uboot nor linux touch that initialization afterwards. Is this correct? The reference board we have is the iMX6 sabresd (quad core). From the schematics, I understand that its databus is 64bits with 1GB worth of DDR3. Our target board is designed with a databus of 32-bits of 1GB DDR3, using chipsets from a different manufacturer. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is the DCD table as defined in the uboot source file "board/freescale/mx6q_sabresd/flash_header.S" my only point for DDR configuration? (I'm using the uboot obtained from git://git.freescale.com/imx/uboot-imx.git as suggested by the 'Android_User_Guide.pdf' document) Or am I missing something obvious?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Jul 2013 14:46:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260462#M25929</guid>
      <dc:creator>abraham_v</dc:creator>
      <dc:date>2013-07-25T14:46:47Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260463#M25930</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Abraham,&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;&amp;nbsp;&amp;nbsp; I have the same understanding as you, the DDR is initialize in the first couple of call to the CPU before U-Boot is copied into RAM. After that nobody touch it... You will probably have to adjust the DDR configuration file depending on your memory chipset. The DDR configuration file (&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;board/freescale/mx6q_sabresd/flash_header.S&lt;/SPAN&gt; or board\freescale\imx\ddr\mx6q_4x_mt41j128.cfg) depend on which version of u-boot you are using. The latest u-boot version use the .cfg file. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you have more quesitons, I will try my best to help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Patrice&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Jul 2013 14:58:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260463#M25930</guid>
      <dc:creator>patricesarrasin</dc:creator>
      <dc:date>2013-07-25T14:58:55Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260464#M25931</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your reply Patrice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Its good to know that I'm not the only developer who came to the conclusion that the DDR cannot be configured AFTER uboot starts. But that puzzles me too. The iMX6 reference manual has a chapter called "Multi Mode DDR Controller" (chapter 44) which speaks of configuring the MMDC with information like DDR type ... etc. If, as a developer I can't access (or do anything meaningful) with the registers it mentions, why bother with having such a chapter at all?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Off to decypher the DCD table,&lt;/P&gt;&lt;P&gt;Abraham V.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Jul 2013 15:38:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260464#M25931</guid>
      <dc:creator>abraham_v</dc:creator>
      <dc:date>2013-07-25T15:38:12Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260465#M25932</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;SPAN class="j-post-author"&gt;&lt;STRONG&gt;&lt;A href="https://community.nxp.com/people/AnsonHuang"&gt;AnsonHuang&lt;/A&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Slowing the DDR3 clock rate down to 396MHz&amp;nbsp; it's not as easy as it seems.&lt;/P&gt;&lt;P&gt;1 ERR006282&lt;/P&gt;&lt;P&gt;ROM code uses nonreset PFDs to generate clocks, which may&lt;/P&gt;&lt;P&gt;lead to random boot failures&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2 i.mx6q Linux kernel is hardcoded to ddr3 528M &lt;/P&gt;&lt;P&gt;&lt;A href="http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/tree/arch/arm/mach-mx6/bus_freq.c?h=imx_3.0.35_4.1.0#n52" title="http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/tree/arch/arm/mach-mx6/bus_freq.c?h=imx_3.0.35_4.1.0#n52"&gt;linux-2.6-imx.git - Freescale i.MX Linux Tree&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2014 09:23:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260465#M25932</guid>
      <dc:creator>Sasamy</dc:creator>
      <dc:date>2014-03-06T09:23:43Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260466#M25933</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Alex&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ERR006282 is not impacting slowing down DDR3 clock rate to 396MHz, as long as uboot can boot up from SD, there is no PFD issue. For the hardcode of ddr3 to 528M, it is only for busfreq, you can disable busfreq if it is not useful for you. If you still want to use busfreq, then it needs some modification to make the highest setpoint as 396MHz, we ever support that, you can refer to i.MX6DL's code path in busfreq, it is 396MHz.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2014 02:10:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260466#M25933</guid>
      <dc:creator>AnsonHuang</dc:creator>
      <dc:date>2014-03-07T02:10:01Z</dc:date>
    </item>
    <item>
      <title>Re: how to change DDR clock of i.mx6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260467#M25934</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Yongcai Huang, Thanks for your answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1 You are right,but it is necessary to disable gate/ungate 528_PFD2 for i.mx6q in u-booot&lt;/P&gt;&lt;P&gt;&lt;A href="http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/tree/cpu/arm_cortexa8/mx6/generic.c?h=imx_v2009.08_3.0.35_4.1.0#n1054" title="http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/tree/cpu/arm_cortexa8/mx6/generic.c?h=imx_v2009.08_3.0.35_4.1.0#n1054"&gt;uboot-imx.git - Freescale i.MX u-boot Tree&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2 I will be grateful for your advice - how to disable bus_freq correctly, enough to simply disable it in Makefile ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2014 08:49:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/how-to-change-DDR-clock-of-i-mx6/m-p/260467#M25934</guid>
      <dc:creator>Sasamy</dc:creator>
      <dc:date>2014-03-07T08:49:19Z</dc:date>
    </item>
  </channel>
</rss>

