feat: add an I2C controller for the MMC mailbox
This was tested successfully on a revision A board with fmc1z7io_example_design:
root@mskamcz7io-0002:~# mmcinfo
MMC information
---------------
App version : 2.1
Lib version : 2.5
CPLD board ver. : 1.1
CPLD lib ver. : 1.0
STAMP revision : Rev. A
AMC slot : 7
IPMB addr : 0x7e
Board name : DAMC-FMC1Z7IO
IANA Vendor ID : 0x053f
IANA Product ID : 0x2710
Uptime : 34 days, 19 hours, 37 minutes, 14 seconds
MMC sensors
-----------
STAMP Temp : 33.3125
AMC MP 3V3 : 3.28507
AMC PP 12V : 12.8155
I_RTM MP 3V3 : 0
I_RTM PP 12V : 0
CPLD Done : 1
RTM MP 3V3 P : 0
RTM PP 12V P : 0
RTM Fault : 0
RTM Temp.1 : nan
PGood_A : 1
PGood_B : 1
FPGA Init : 1
FPGA Done : 1
Inlet Temp : 44.125
Z7 IC Temp : 41.625
IMON_AVCC : 0.563321
IMON_AVTT : 0.425299
LTM4644_F Te : 54.8388
LTM4644_R Te : 58.453
FPGA_1V0 : 0.981079
FPGA_1V8 : 1.79956
FPGA_3V3 : 3.24048
FMC_Vadj : 1.80042
VCC_5V : 4.94666
FRU 0 description
-----------------
UID : 801F1234EA7D
Manufacturer : DESY
Product name : DAMC-FMC1Z7IO
Part number : 0000
Serial number : 0002
Version : 0000
FRU 0 status
-----------------
Flags : +Present +Compatible +Powered -Failure
Temperature 1 : 44.12 C
Temperature 2 : 41.62 C
Temperature 3 : 58.25 C
Temperature 4 : 57.54 C
FRU 1 not present
-----------------
FRU 2 not present
-----------------
FRU 3 not present
-----------------
FPGA Ctrl: -Shdn -PCIeReset