MAILBOX Offset | 32-bit Word | Field Type | Field Description |
---|---|---|---|
0x00
|
[0] | Host Request Message | Message Header 31:24 Opcode
( 23:0 Reserved |
0x04
|
[1] | Host Request Message | Cage Select (0–1) |
0x08
|
[2] | Host Request Message | Page Select (0–255) |
0x0C
|
[3] | Host Request Message |
Extended I2C Addressing 31:23 Reserved 22:18 CMIS Bank (0-31) 17 CMIS Bank Field Valid (0: False, 1:True) 16 I2C Address Field (0: 0xA0, 1: 0xA2) (2) 15:1 Reserved 0 Lower/Upper Page Select (0: Lower, 1: Upper) |
0x10
|
[4] | Host Request Message | Byte Offset (0-255) 1 |
0x14
|
[5] | CMS Response Message | Response Payload 31:8 Reserved 7:0 Module I2C read data byte |
|
Host Action | Function |
---|---|
Peek 0x28018
|
Check availability of the mailbox by confirming CONTROL_REG[5] is 0. |
Poke 0x29000
0x0F000000
|
Write the request message header to MAILBOX
Word 0 (Opcode). Assumes HOST_MSG_OFFSET_REG =
|
Poke 0x29004
0x00000000
|
Select cage 0 via MAILBOX Word 1. |
Poke 0x29008
0x00000003
|
Select page 3 via MAILBOX Word 2. |
Poke 0x2900C
0x00000001
|
Select the upper page via MAILBOX Word 3. 1 |
Poke 0x29010
0x000000FF
|
Select Byte Offset 255 via MAILBOX Word 4. |
Poke 0x28018
0x20
|
Set CONTROL_REG[5] to 1 to indicate a new request message is available. |
Peek 0x28018
|
Poll CONTROL_REG bit 5 until ‘0’ is received indicating the CMS response is available. |
Peek 0x28304
|
Confirm no errors in HOST_MSG_ERR_REG. |
Peek 0x29014
|
Read module I2C read data byte from MAILBOX Word 5. |
|
Host Action | Function |
---|---|
Peek 0x28018
|
Check availability of the mailbox by confirming CONTROL_REG[5] is 0. |
Poke 0x29000
0x0F000000
|
Write the request message header to MAILBOX
Word 0 (Opcode). Assumes HOST_MSG_OFFSET_REG =
|
Poke 0x29004
0x00000001
|
Select cage 1 via MAILBOX Word 1. |
Poke 0x29008
0x00000000
|
Select page 0 via MAILBOX Word 2. |
Poke 0x2900C
0x00020000
|
Select the lower page of CMIS bank 0 via MAILBOX Word 3. 1 |
Poke 0x29010
0x0000007F
|
Select Byte Offset 127 via MAILBOX Word 4. |
Poke 0x28018
0x20
|
Set CONTROL_REG[5] to 1 to indicate a new request message is available. |
Peek 0x28018
|
Poll CONTROL_REG bit 5 until ‘0’ is received indicating the CMS response is available. |
Peek 0x28304
|
Confirm no errors in HOST_MSG_ERR_REG. |
Peek 0x29014
|
Read module I2C read data byte from MAILBOX Word 5. |
|
Host Action | Function |
---|---|
Peek 0x28018
|
Check availability of the mailbox by confirming CONTROL_REG[5] is 0. |
Poke 0x29000
0x0F000000
|
Write the request message header to MAILBOX
Word 0 (Opcode). Assumes HOST_MSG_OFFSET_REG =
|
Poke 0x29004
0x00000000
|
Select cage 0 via MAILBOX Word 1. |
Poke 0x29008
0x00000000
|
Select page 0 via MAILBOX Word 2. |
Poke 0x2900C
0x00000000
|
Select the lower page of I2C Address field 0xA0 via MAILBOX Word 3. 1 |
Poke 0x29010
0x00000000
|
Select Byte Offset 0 via MAILBOX Word 4. |
Poke 0x28018
0x20
|
Set CONTROL_REG[5] to 1 to indicate a new request message is available. |
Peek 0x28018
|
Poll CONTROL_REG bit 5 until ‘0’ is received indicating the CMS response is available. |
Peek 0x28304
|
Confirm no errors in HOST_MSG_ERR_REG. |
Peek 0x29014
|
Read module I2C read data byte from MAILBOX Word 5. |
|