Driver i2c-mlxcpld¶
Author: Michael Shych <michaelsh@mellanox.com>
This is the Mellanox I2C controller logic, implemented in Lattice CPLD device.
- Device supports:
Master mode.
One physical bus.
Polling mode.
This controller is equipped within the next Mellanox systems: “msx6710”, “msx6720”, “msb7700”, “msn2700”, “msx1410”, “msn2410”, “msb7800”, “msn2740”, “msn2100”.
- The next transaction types are supported:
Receive Byte/Block.
Send Byte/Block.
Read Byte/Block.
Write Byte/Block.
Registers:
CPBLTY |
0x0 |
|
CTRL |
0x1 |
|
HALF_CYC |
0x4 |
|
I2C_HOLD |
0x5 |
|
CMD |
0x6 - command reg. Bit 0, 0 = write, 1 = read. Bits [7:1] - the 7bit Address of the I2C device. It should be written last as it triggers an I2C transaction. |
|
NUM_DATA |
0x7 |
|
NUM_ADDR |
0x8 |
|
STATUS |
0x9 |
|
DATAx |
0xa |
|