Para un proyecto en el que estoy trabajando tengo que hablar con un chip multifunción a través de I2C. Puedo hacer esto desde el espacio de usuario de Linux a través de la interfaz I2C/dev/i2c-1.¿Está forzando la comunicación I2C a ser segura?
Sin embargo, parece que un controlador está hablando con el mismo chip al mismo tiempo. Esto hace que mis accesos I2C_SLAVE fallen con An errno-value de EBUSY. Bueno, puedo anular esto a través del ioctl I2C_SLAVE_FORCE. Lo intenté, y funciona. Mis comandos alcanzan el chip.
Pregunta: ¿Es seguro hacer esto? Sé con seguridad que ningún kernel-driver accede a los rangos de direcciones que escribo. Sin embargo, no estoy seguro de si la comunicación I2C obligando de esa manera puede confundir un estado-máquina interna más o menos. (No estoy que en I2C, sólo lo utilizan ...)
Como referencia, el hardware hechos:
OS: Linux Architecture: TI OMAP3 3530 I2C-Chip: TWL4030 (does power, audio, usb and lots of other things..)
¿Intentó hacer esta pregunta en http://chiphacker.com? Es un sitio similar a SO, pero para electrónica (aunque no tan activo como SO). – Wim