Messages in this thread | | | From | Simon Vogl <> | Subject | Re: [offtopic] Re: I2c was: Cobalt Micro (was Re: Build your own Mo therboards) | Date | Thu, 10 Sep 1998 12:35:53 +0200 (MET DST) |
| |
> > Yes, many CPU-I2C interface chips leave the protocol to the software. > I'm not sure if you can implement the multimaster protocol in > software. You might have to guarantee a sample-rate of more than 1MHz > or something like that. > > Roger.
Not necessarily. Arbitration is done when the clock line is high and the state of the data line is well defined. If the line state is different from what you put on the bus (i.e. you wrote 1 and sda is 0, due to wired and logic), you have to get lost.
So the only necessity is a delay between clock line going high & reading of the data line that is small enough to be under the minimum bus timings ( ca. 4 us, if I remember correctly). An interrupt handler and the right hardware should do the trick.
btw, it's all there in my driver, just commented out - arbitration doesn't make much sense in a single-master environment anyway.
Simon
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/faq.html
| |