20.5.3 Communicating As a Host In A Multi-Host Environment
The I2C protocol allows more than one host to be attached to a system bus. Taking into account that a host can initiate message transactions and generate clocks for the bus, the protocol has methods to account for situations where more than one host is attempting to control the bus. The clock synchronization ensures that multiple nodes can synchronize their SCLx clocks to result in one common clock on the SCLx line. The bus arbitration ensures that if more than one node attempts a message transaction, only one node will be successful in completing the message. The other nodes lose bus arbitration and are left with a bus collision.