<?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 Problem with ssi i.mx35 in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Problem-with-ssi-i-mx35/m-p/177503#M6951</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone! I write driver for SSI and Ac97 of i.mx35. I can not update sacadd, satag and sacdat registers.&lt;/P&gt;&lt;P&gt;My code&lt;/P&gt;&lt;P&gt;void imx_ac97_write( struct wm97xx *wm9705,unsigned&amp;nbsp; int&amp;nbsp; reg, unsigned int val)&lt;/P&gt;&lt;P&gt;{&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacadd=reg;&lt;/P&gt;&lt;P&gt;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacdat=val; &amp;nbsp;&lt;/P&gt;&lt;P&gt;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;satag=0xC000;&lt;/P&gt;&lt;P&gt;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt|=WM9705_WRITE; &amp;nbsp;&lt;/P&gt;&lt;P&gt;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt&amp;amp;=~WM9705_READ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;fprintf(stderr,"write :scr=0x%8X\t sacadd=0x%8X\t sacdat=0x%8X\t satag=0x%8X\t sacnt=0x%8X\t\n",in32(base+SSI_SCR),wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacadd, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacdat,wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;satag,wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt);&lt;/P&gt;&lt;P&gt;&amp;nbsp;usleep((useconds_t)DELAYRG);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;int AudmuxInit(HW_CONTEXT_T * mx35_exm32, ccm_t * ccm)&lt;/P&gt;&lt;P&gt;{&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr1=0; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr1=0;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux&amp;gt;ptcr1=AUDMUX_TCLK_DIROUT|AUDMUX_TFS_PORT4;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;audmux&amp;gt;ptcr1|=AUDMUX_TCLK_PORT4|AUDMUX_SYNC;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;pdcr1=AUDMUX_RXDSEL_PORT4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr4 = AUDMUX_SYNC|AUDMUX_TFS_DIROUT; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;pdcr4 = 0; //&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ccm-&amp;gt;pdr2|=0x141; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ccm-&amp;gt;cosr=0x7d00002d; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ccm-&amp;gt;acmr|=0x11; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;ccm-&amp;gt;cosr=0x7d00002d; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;scr=0;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mx35_exm32-&amp;gt;ssi-&amp;gt;scr|=SCR_SSI_EN; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(1&amp;lt;&amp;lt;18); &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(9&amp;lt;&amp;lt;13); &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(12&amp;lt;&amp;lt;8);&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;usleep((useconds_t)DELAYRG);&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;ssi-&amp;gt;sacnt=1; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;scr|=SCR_TX_EN|SCR_TX_EN; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;fprintf(stderr," scr=0x%8X\t",in32(base+SSI_SCR)); &amp;nbsp;&lt;/P&gt;&lt;P&gt;return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;I see always sacadd, sacdat and satag =0. WHY,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 26 Jul 2012 05:59:56 GMT</pubDate>
    <dc:creator>MariaKuzmina</dc:creator>
    <dc:date>2012-07-26T05:59:56Z</dc:date>
    <item>
      <title>Problem with ssi i.mx35</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Problem-with-ssi-i-mx35/m-p/177503#M6951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone! I write driver for SSI and Ac97 of i.mx35. I can not update sacadd, satag and sacdat registers.&lt;/P&gt;&lt;P&gt;My code&lt;/P&gt;&lt;P&gt;void imx_ac97_write( struct wm97xx *wm9705,unsigned&amp;nbsp; int&amp;nbsp; reg, unsigned int val)&lt;/P&gt;&lt;P&gt;{&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacadd=reg;&lt;/P&gt;&lt;P&gt;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacdat=val; &amp;nbsp;&lt;/P&gt;&lt;P&gt;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;satag=0xC000;&lt;/P&gt;&lt;P&gt;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt|=WM9705_WRITE; &amp;nbsp;&lt;/P&gt;&lt;P&gt;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt&amp;amp;=~WM9705_READ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;fprintf(stderr,"write :scr=0x%8X\t sacadd=0x%8X\t sacdat=0x%8X\t satag=0x%8X\t sacnt=0x%8X\t\n",in32(base+SSI_SCR),wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacadd, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacdat,wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;satag,wm9705-&amp;gt;hwc-&amp;gt;ssi-&amp;gt;sacnt);&lt;/P&gt;&lt;P&gt;&amp;nbsp;usleep((useconds_t)DELAYRG);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;int AudmuxInit(HW_CONTEXT_T * mx35_exm32, ccm_t * ccm)&lt;/P&gt;&lt;P&gt;{&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr1=0; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr1=0;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux&amp;gt;ptcr1=AUDMUX_TCLK_DIROUT|AUDMUX_TFS_PORT4;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;audmux&amp;gt;ptcr1|=AUDMUX_TCLK_PORT4|AUDMUX_SYNC;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;pdcr1=AUDMUX_RXDSEL_PORT4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;ptcr4 = AUDMUX_SYNC|AUDMUX_TFS_DIROUT; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;audmux-&amp;gt;pdcr4 = 0; //&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ccm-&amp;gt;pdr2|=0x141; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ccm-&amp;gt;cosr=0x7d00002d; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ccm-&amp;gt;acmr|=0x11; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;ccm-&amp;gt;cosr=0x7d00002d; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;scr=0;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; mx35_exm32-&amp;gt;ssi-&amp;gt;scr|=SCR_SSI_EN; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(1&amp;lt;&amp;lt;18); &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(9&amp;lt;&amp;lt;13); &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;stccr|=(12&amp;lt;&amp;lt;8);&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;usleep((useconds_t)DELAYRG);&lt;/P&gt;&lt;P&gt;&amp;nbsp; mx35_exm32-&amp;gt;ssi-&amp;gt;sacnt=1; &amp;nbsp;&lt;/P&gt;&lt;P&gt;mx35_exm32-&amp;gt;ssi-&amp;gt;scr|=SCR_TX_EN|SCR_TX_EN; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;fprintf(stderr," scr=0x%8X\t",in32(base+SSI_SCR)); &amp;nbsp;&lt;/P&gt;&lt;P&gt;return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;I see always sacadd, sacdat and satag =0. WHY,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Jul 2012 05:59:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Problem-with-ssi-i-mx35/m-p/177503#M6951</guid>
      <dc:creator>MariaKuzmina</dc:creator>
      <dc:date>2012-07-26T05:59:56Z</dc:date>
    </item>
  </channel>
</rss>

