The i2c interface is a 2-wire interface with clock and data (SCL and SDA), so we will need two pins.
The Zynq has two i2c interfaces.
My Antminer boards have pins soldered to J2, J3, and J4. For some reason J1 was skipped. Probably because it was near the edge of the board. This makes it convenient for me to use the MIO signals on J2, J3, or J4 for this i2c experiment.
To get i2c signals onto these pins, we need to configure the MIO pin registers in the SLCR (system level control register) section. The relevant pages of the TRM for this are pages 1660 through 1662. It turns out that only i2c-1 is available on J2 (MIO 29), but MIO 30 and 31 give me the signals I want for i2c-0 as follows:
J3 pin 18 -- MIO 30 - i2c-0 clock J4 pin 18 -- MIO 31 - i2c-0 data
The TRM in chapter 20 discusses the i2c controller and has a diagram showing the possibility to route i2c signals to EMIO and thus into the PL. It says plainly, "The I2C SCL and SDA signals can be routed to one of many sets of MIO pins or to the EMIO interface." See pages 623 to 624 in the TRM. Making use of this would be something for yet another day.
Tom's Computer Info / tom@mmto.org