This is the mail archive of the mailing list for the eCos project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug 1001397] I2C driver for Kinetic microcontrollers

Please do not reply to this email. Use the web interface provided at:

--- Comment #31 from Mike Jones <> 2012-12-25 23:37:55 GMT ---
I think that looping on bus ready is probably ok if there is a SMBus like
timeout of 25ms to 30ms, and as long as the scheduler can break in switch
tasks. If the wait can't be interrupted by the scheduler it is more problematic
when the bus is stuck. 

A worst case scenario might have a task for ALERTB and one for telemetry. The
second master hogs the bus and the first master is having trouble getting in.
The the ALERTB comes along and needs immediate service. The ALERTB task may
flip a GPIO bit and kill power, or it may wait for the timeout and then attempt
to use the bus.

All that matters to me is that it the driver waits for the bus to be free,
times out, and allows a higher priority task do its job while waiting. I would
not want it to just return because the bus is busy and force me to write my own
timeout. And I would not want it to hang forever if a second master was beating
the bus to death.

Configure bugmail:
------- You are receiving this mail because: -------
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]