GPIO_RESET_PIN_ZC706 pin definition

Hi all,

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 (

    .I (gpio_o[46]),

    .O (gpio_i[46]),

    .T (gpio_t[46]),

    .IO (gpio_resetb));

Now looking at the associated C code in main.c there is a note

#define GPIO_DEVICE_ID XPAR_PS7_GPIO_0_DEVICE_ID
#define GPIO_RESET_PIN 100
#define GPIO_RESET_PIN_ZC702 84
#define GPIO_RESET_PIN_ZC706 83
#define GPIO_RESET_PIN_ZED 100

// 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/

Regards

Walter

Parents
  • Hi Blake,

    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.

    Regards

    Walter

Reply
  • Hi Blake,

    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.

    Regards

    Walter

Children
No Data