Give Static numbers to GPIOs of each I2C expander

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Give Static numbers to GPIOs of each I2C expander

1,787 次查看
Anks3110
Contributor I

Hello,

I have connected three I2C based GPIO expanders with my CPU board. GPIO511 to GPIO496 populated for Expander1, GPIO495 to GPIO480 populated for Expander2, and GPIO479 to GPIO464 are populated for Expander3.

e.g
- IO expander1 : GPIO511 to GPIO496
- IO expander2 : GPIO495 to GPIO480
- IO expander3 : GPIO479 to GPIO464

I have seen those GPIO at location : /sys/class/gpio/

All the things are working fine and I am able to operate each GPIO.

But, when I remove IO Expander IC 2 from the I2C bus, Linux gives the GPIO ID [GPIO495 to GPIO480] from Expander2 to Expander3(As shown in case 2 in attachment). Due to this, my other functionality gets affected.

So, is there any way to give and initialize from fix GPIO_Base for each I2C expander, in simple words I want to give fix GPIO group to each IO expander?

The IO expander I am using is PCA9555, and Linux kernel Version is 4.9.x+fslc (4.9.44-fslc+g8f876e153b25)

Can anyone please tell me how to fix this problem?

Thank you

标签 (4)
0 项奖励
回复
1 回复

1,753 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Ankit

 

as this is general linux question (not imx specific) may be recommended to post it on kernel mail list

http://vger.kernel.org/vger-lists.html

 

Best regards
igor

0 项奖励
回复