<?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: Adding gpio expander (pca9555) to imx6 linux</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247249#M21756</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Update: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I add only two pca9555 (any combination of two, either 0x20,0x21 or 0x21,0x22, or 0x20,0x22) both will work and show up under /sys/class/gpio/gpiochipX, but if I try to add all three only the first two 0x20 and 0x21 will load successfully but not 0x22.&amp;nbsp; Any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.gpio_base = -1 on all three.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 24 Jan 2014 15:58:43 GMT</pubDate>
    <dc:creator>j-g</dc:creator>
    <dc:date>2014-01-24T15:58:43Z</dc:date>
    <item>
      <title>Adding gpio expander (pca9555) to imx6 linux</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247248#M21755</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am trying to add three pca9555 i2c gpio expanders by adding them to my board file (board-mx6q_qmx6.c) and have some issues I hope someone could help me with.&amp;nbsp; I've already enabled pca953x in the kernel config and added the below to the board file.&amp;nbsp; My first question is can someone explain what to place in for .gpio_base specific to the imx6?&amp;nbsp; I placed in -1 as I saw in a post elsewhere but there were complaints.&amp;nbsp; I also tried some static values thinking that these must be past the last gpio, 232 for ext1_pdata, 248 for ext2_pdata and 254 for ext3_pdata, but only the first one showed up in /sys/class/gpio/ and got complaints about the other two.&amp;nbsp; Thank you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Complaints:&lt;/P&gt;&lt;P&gt;pca953x 0-0021: failed to request irq 0&lt;/P&gt;&lt;P&gt;pca953x: probe of 0-0021 failed with error -16&lt;/P&gt;&lt;P&gt;pca953x 0-0022: failed to request irq 0&lt;/P&gt;&lt;P&gt;pca953x: probe of 0-0022 failed with error -16&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What I put in the board file:&lt;/P&gt;&lt;P&gt;/* PCA9555 */&lt;/P&gt;&lt;P&gt;static struct imxi2c_platform_data mx6q_qmx6_i2c_data = {&lt;BR /&gt; .bitrate = 100000,&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;static struct pca953x_platform_data gpio_ext1_pdata = {&lt;BR /&gt; .gpio_base =&lt;STRONG&gt; &lt;SPAN style="color: #ff0000;"&gt;?,&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static struct pca953x_platform_data gpio_ext2_pdata = {&lt;BR /&gt; .gpio_base = &lt;SPAN style="color: #ff0000;"&gt;?,&lt;/SPAN&gt;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static struct pca953x_platform_data gpio_ext3_pdata = {&lt;BR /&gt; .gpio_base =&lt;SPAN style="color: #ff0000;"&gt; ?,&lt;/SPAN&gt;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static struct i2c_board_info mxc_i2c0_board_info[] __initdata = {&lt;BR /&gt; {&lt;BR /&gt;&amp;nbsp; I2C_BOARD_INFO("pca9555", 0x20),&lt;BR /&gt;&amp;nbsp; .platform_data = &amp;amp;gpio_ext1_pdata,&lt;BR /&gt; },&lt;BR /&gt; {&lt;BR /&gt;&amp;nbsp; I2C_BOARD_INFO("pca9555", 0x21),&lt;BR /&gt;&amp;nbsp; .platform_data = &amp;amp;gpio_ext2_pdata,&lt;BR /&gt; },&lt;BR /&gt; {&lt;BR /&gt;&amp;nbsp; I2C_BOARD_INFO("pca9555", 0x22),&lt;BR /&gt;&amp;nbsp; .platform_data = &amp;amp;gpio_ext3_pdata,&lt;BR /&gt; },&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Place this in board specific initialization function:&amp;nbsp;&amp;nbsp; static void __init_mx6_qmx6_board_init(void)&lt;/P&gt;&lt;P&gt; /* I2C */&lt;/P&gt;&lt;P&gt; imx6q_add_imx_i2c(0, &amp;amp;mx6q_qmx6_i2c_data);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Jan 2014 15:20:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247248#M21755</guid>
      <dc:creator>j-g</dc:creator>
      <dc:date>2014-01-21T15:20:30Z</dc:date>
    </item>
    <item>
      <title>Re: Adding gpio expander (pca9555) to imx6 linux</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247249#M21756</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Update: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I add only two pca9555 (any combination of two, either 0x20,0x21 or 0x21,0x22, or 0x20,0x22) both will work and show up under /sys/class/gpio/gpiochipX, but if I try to add all three only the first two 0x20 and 0x21 will load successfully but not 0x22.&amp;nbsp; Any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.gpio_base = -1 on all three.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Jan 2014 15:58:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247249#M21756</guid>
      <dc:creator>j-g</dc:creator>
      <dc:date>2014-01-24T15:58:43Z</dc:date>
    </item>
    <item>
      <title>Re: Adding gpio expander (pca9555) to imx6 linux</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247250#M21757</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Had to increase the value of ARCH_NR_GPIOS in /include/asm-generic/gpio.h&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 Jan 2014 20:13:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Adding-gpio-expander-pca9555-to-imx6-linux/m-p/247250#M21757</guid>
      <dc:creator>j-g</dc:creator>
      <dc:date>2014-01-28T20:13:31Z</dc:date>
    </item>
  </channel>
</rss>

