<?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 IMX6D uart3 rx problem in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923255#M138778</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have tried to use UART3 of IMX6D for communication with TiWi-uB2 chip.&lt;/P&gt;&lt;P&gt;In U-Boot i set up UART3 pins as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const uart3_pads[] = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_SD4_CMD__UART3_TX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_SD4_CLK__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_EIM_D30__UART3_CTS_B | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_EIM_D31__UART3_RTS_B | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in kernel's device tree i setup pins as:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pinctrl_uart3: uart3grp {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fsl,pins = &amp;lt;&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;MX6QDL_PAD_SD4_CMD__UART3_TX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_SD4_CLK__UART3_RX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_EIM_D30__UART3_CTS_B&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_EIM_D31__UART3_RTS_B&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;};&lt;/P&gt;&lt;P&gt;Also in U-Boot i additionally set IOMUX regs which selects RX and RTS pins for proper UART&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* select UART3 RX pad */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;writel(3, 0x020E0930 );&lt;BR /&gt;/* select UART3 RTS pad */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; writel(3, 0x020E092C );&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So everything looks as described in docs.&lt;/P&gt;&lt;P&gt;With oscilloscope i can see that hciattach sends some of bytes to BT chip and also i can see that BT chip is answering with some of data.....but hciattach finished with&lt;/P&gt;&lt;P&gt;Initialization timed out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So looks like it can not receive data from BT chip (i suspect). Also a small possibility that RX pin ball on package has bad contact or similar mounting problems.&lt;/P&gt;&lt;P&gt;But before dismounting&amp;nbsp; of chip from PCB i'd like to be sure that i setup UART pins correctly.&lt;/P&gt;&lt;P&gt;Is it enough for IMX6D settings that i did to make UART ready to receive data?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WBR,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 29 Aug 2019 11:29:37 GMT</pubDate>
    <dc:creator>egorrumjantsev</dc:creator>
    <dc:date>2019-08-29T11:29:37Z</dc:date>
    <item>
      <title>IMX6D uart3 rx problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923255#M138778</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have tried to use UART3 of IMX6D for communication with TiWi-uB2 chip.&lt;/P&gt;&lt;P&gt;In U-Boot i set up UART3 pins as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static iomux_v3_cfg_t const uart3_pads[] = {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_SD4_CMD__UART3_TX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_SD4_CLK__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_EIM_D30__UART3_CTS_B | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;IOMUX_PADS(PAD_EIM_D31__UART3_RTS_B | MUX_PAD_CTRL(UART_PAD_CTRL)),&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in kernel's device tree i setup pins as:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pinctrl_uart3: uart3grp {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fsl,pins = &amp;lt;&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;MX6QDL_PAD_SD4_CMD__UART3_TX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_SD4_CLK__UART3_RX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_EIM_D30__UART3_CTS_B&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&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;MX6QDL_PAD_EIM_D31__UART3_RTS_B&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;};&lt;/P&gt;&lt;P&gt;Also in U-Boot i additionally set IOMUX regs which selects RX and RTS pins for proper UART&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* select UART3 RX pad */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;writel(3, 0x020E0930 );&lt;BR /&gt;/* select UART3 RTS pad */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; writel(3, 0x020E092C );&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So everything looks as described in docs.&lt;/P&gt;&lt;P&gt;With oscilloscope i can see that hciattach sends some of bytes to BT chip and also i can see that BT chip is answering with some of data.....but hciattach finished with&lt;/P&gt;&lt;P&gt;Initialization timed out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So looks like it can not receive data from BT chip (i suspect). Also a small possibility that RX pin ball on package has bad contact or similar mounting problems.&lt;/P&gt;&lt;P&gt;But before dismounting&amp;nbsp; of chip from PCB i'd like to be sure that i setup UART pins correctly.&lt;/P&gt;&lt;P&gt;Is it enough for IMX6D settings that i did to make UART ready to receive data?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WBR,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Aug 2019 11:29:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923255#M138778</guid>
      <dc:creator>egorrumjantsev</dc:creator>
      <dc:date>2019-08-29T11:29:37Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D uart3 rx problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923256#M138779</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Egor&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;uart can be tested with uart unit test, checking signals with oscilloscope:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://source.codeaurora.org/external/imx/imx-test/tree/test/mxc_uart_test?h=imx_4.14.98_2.0.0_ga" title="https://source.codeaurora.org/external/imx/imx-test/tree/test/mxc_uart_test?h=imx_4.14.98_2.0.0_ga"&gt;mxc_uart_test\test - imx-test - i.MX Driver Test Application Software&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Aug 2019 23:31:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923256#M138779</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2019-08-29T23:31:04Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D uart3 rx problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923257#M138780</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Igor.&lt;/P&gt;&lt;P&gt;Thank you for your message. But i suppose that this test can help to test UART logically as it use internal loopback. Seems that it is mean to loop tx reg to rx reg.&lt;/P&gt;&lt;P&gt;In my case i see physical problems - may be i did wrong RX pin settings or may be pin has bad contact.&lt;/P&gt;&lt;P&gt;The worst case is to cut off traces RX/TX to bletooth chip by knife and short rx on tx. Or dismount IMX chip from PCB.&lt;/P&gt;&lt;P&gt;So that is why i want to be sure that i setted up RX pin correctly form IMX point of view.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WBR,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Aug 2019 06:30:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923257#M138780</guid>
      <dc:creator>egorrumjantsev</dc:creator>
      <dc:date>2019-08-30T06:30:38Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D uart3 rx problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923258#M138781</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is test output:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;./mxc_uart_test /dev/ttymxc2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;---- Running &amp;lt; ./mxc_uart_test &amp;gt; test ----&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/dev/ttymxc2 opened&lt;BR /&gt;Attributes set&lt;BR /&gt;Test: IOCTL Set&lt;BR /&gt;Data Written= Test&lt;BR /&gt;Data Read back= Test&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;----&amp;nbsp; Test &amp;lt; /dev/ttymxc2 &amp;gt; ended&amp;nbsp; ----&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As i said in previous message logically UART is working. I used other PCB for test, so probability of bad soldering is going to sezo.&lt;/P&gt;&lt;P&gt;Seems something wrong with pinmux settings.&lt;/P&gt;&lt;P&gt;So could someone advise is it enough to set&lt;/P&gt;&lt;P&gt;IOMUX_PADS(PAD_SD4_CLK__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL))&lt;/P&gt;&lt;P&gt;in U-boot&lt;/P&gt;&lt;P&gt;and&lt;/P&gt;&lt;P&gt;&amp;nbsp;MX6QDL_PAD_SD4_CLK__UART3_RX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;0x1b0b1&lt;/P&gt;&lt;P&gt;in kernel's device tree&lt;/P&gt;&lt;P&gt;and also&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* select UART3 RX pad */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;writel(3, 0x020E0930 );&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;UART3 device has described in device tree as:&lt;/P&gt;&lt;P&gt;&amp;amp;uart3 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pinctrl-names = "default";&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pinctrl-0 = &amp;lt;&amp;amp;pinctrl_uart3&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is enough to set up SD4_CLK pin as UART3 RX function?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS:&lt;/P&gt;&lt;P&gt;root@DIPP7_imx6sl:/tmp# cat /proc/tty/driver/IMX-uart &lt;BR /&gt;serinfo:1.0 driver revision:&lt;BR /&gt;1: uart:IMX mmio:0x021E8000 irq:289 tx:1517 rx:126 RTS|DTR|DSR|CD&lt;BR /&gt;2: uart:IMX mmio:0x021EC000 irq:290&lt;STRONG&gt; tx:10 rx:6&lt;/STRONG&gt; CTS|DSR|CD&lt;BR /&gt;3: uart:IMX mmio:0x021F0000 irq:291 tx:0 rx:0 DSR|CD&lt;BR /&gt;root@DIPP7_imx6sl:/tmp# hciattach /dev/ttymxc2 texas&lt;BR /&gt;Initialization timed out.&lt;BR /&gt;root@DIPP7_imx6sl:/tmp# cat /proc/tty/driver/IMX-uart &lt;BR /&gt;serinfo:1.0 driver revision:&lt;BR /&gt;1: uart:IMX mmio:0x021E8000 irq:289 tx:2055 rx:152 RTS|DTR|DSR|CD&lt;BR /&gt;2: uart:IMX mmio:0x021EC000 irq:290 &lt;STRONG&gt;tx:14&lt;/STRONG&gt; r&lt;STRONG&gt;x:6&lt;/STRONG&gt; CTS|DSR|CD&lt;BR /&gt;3: uart:IMX mmio:0x021F0000 irq:291 tx:0 rx:0 DSR|CD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here we can see that after loopback test rx of ttymxc2 has 6 bytes received, but after hciattach no bytes received (oscilloscore shows at least 2 bytes on rx line)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WBR,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Aug 2019 08:32:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923258#M138781</guid>
      <dc:creator>egorrumjantsev</dc:creator>
      <dc:date>2019-08-30T08:32:59Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D uart3 rx problem</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923259#M138782</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I found solution. It is very non usual for me but....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;usdhc4 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;status = "disabled";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hellped to solve issue&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Aug 2019 09:43:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-uart3-rx-problem/m-p/923259#M138782</guid>
      <dc:creator>egorrumjantsev</dc:creator>
      <dc:date>2019-08-30T09:43:12Z</dc:date>
    </item>
  </channel>
</rss>

