I have a basic question w.r.t the ADI FMCOMMS 2 demo code.
Looking at the Verilog first the EMIO assigned is position 46 as shown below.
IOBUF i_iobuf_gpio_resetb (
Now looking at the associated C code in main.c there is a note
// NOTE: The user has to choose the GPIO numbers according to desired
// carrier board.
default_init_param.gpio_resetb = GPIO_RESET_PIN;
Looking at the definition of GPIO_RESET_PIN looks correct because as I understand it you need to add the MIO signal offset of 54
to calculate the GPIO pin. In other words 54 +46 = 100.
My question is, why is it set to 83 for the ZC706 board when the Verilog puts it at 46/
I just add the 54 pin MIO offset to get the value of 100 for the reset pin which is located at GPIO 46 on the hardware. This works on the ZC706 with the FM-COMMS2 and our custom hardware. I have not tried it on the ZedBoard or MicroZed.
Probably best to modify the #define for GPIO_RESET_PIN in parameters.h as it might be used elsewhere.