I2C and receiving data from slave devices



Hi,
We are developing a I2C bus driver on an xscale board running CE 5.0.
Master mode was easy to handle. The question is about Slave mode.

Suppose there are 2 devices on the bus which can initiate slave
transaction. How does the driver know which slave device caused the
interrupt? Is there anyway to know the slave address of the
interrupting device.

Or is it that the xscale has to poll the slave devices (master receive)
asking them if they have anything to send?

Which one is the better way? or if there is third one.

Thanks,
Gromit

.



Relevant Pages

  • [PATCH 1/35] W1: fix deadlocks and remove w1_control_thread
    ... This fixes a deadlock of removing a slave device driver when a slave ... On my small two device network the bus search takes 7.7 seconds which ...
    (Linux-Kernel)
  • Re: I2C and receiving data from slave devices
    ... <apellerin AT adeneo DOT adetelgroup DOT com> ... Master mode was easy to handle. ... The question is about Slave mode. ... How does the driver know which slave device caused the ...
    (microsoft.public.windowsce.platbuilder)
  • Re: [PATCH/RFC] simple SPI controller on PXA2xx SSP port, refresh
    ... > specific slave device. ... This allows different bus configurations for ... kinds of SPI controller, but it seems to me that could ...
    (Linux-Kernel)
  • Re: iMac G3 No boot CD, no boot HDD
    ... The iMac G3 has its ATA bus configured with the hard drive as the master ... My understanding is that the slave device is ... This probably explains the original failure to start up from the CD (the ...
    (comp.sys.mac.system)
  • Re: I2C troubleshooting
    ... > I'm implementing a I2C bootloader for the slave device, ... > (It puts a start-condition on the bus, followed by the slave address, ... > 2a) Master reads slave's status register. ... > the bus, but the slave doesn't ACK, and this goes on forever. ...
    (comp.arch.embedded)