#ifndef __X86_64_QUANTA_LY4R_GPIO_TABLE_H__
#define __X86_64_QUANTA_LY4R_GPIO_TABLE_H__

/*
 * defined within platform/quanta_switch.c
 * Quanta Switch Platform driver
 */
#define QUANTA_LY4R_PCA953x_GPIO(P1, P2)            (P1*8+P2)

#define QUANTA_LY4R_PCA9698_GPIO_SIZE               0x28

#define QUANTA_LY4R_I2C_GPIO_BASE                   0x10

#define QUANTA_LY4R_PCA9698_GPIO_BASE               (QUANTA_LY4R_I2C_GPIO_BASE)
#define QUANTA_LY4R_PCA9698_GPIO_SFP_1_TX_FAULT_N   (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,0))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_1_TX_DIS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,1))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_1_PRSNT_N      (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,2))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_1_RX_LOS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,3))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_2_TX_FAULT_N   (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,4))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_2_TX_DIS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,5))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_2_PRSNT_N      (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,6))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_2_RX_LOS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(0,7))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_3_TX_FAULT_N   (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,0))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_3_TX_DIS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,1))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_3_PRSNT_N      (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,2))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_3_RX_LOS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,3))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_4_TX_FAULT_N   (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,4))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_4_TX_DIS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,5))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_4_PRSNT_N      (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,6))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_4_RX_LOS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(1,7))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_5_TX_FAULT_N   (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,0))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_5_TX_DIS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,1))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_5_PRSNT_N      (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,2))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_5_RX_LOS_N     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,3))
#define QUANTA_LY4R_PCA9698_BOOT_STSLED_N           (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,4))
#define QUANTA_LY4R_PCA9698_SYS_STSLED              (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,5))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_P3V3_PW_EN     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,6))
#define QUANTA_LY4R_PCA9698_GPIO_SFP_P3V3_PW_GD     (QUANTA_LY4R_PCA9698_GPIO_BASE + QUANTA_LY4R_PCA953x_GPIO(2,7))
#endif /* __X86_64_QUANTA_LY4R_GPIO_TABLE_H__ */
