/*
 * Copyright (c) 2018-2019, Intel Corporation
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/**
 * @file
 * @brief GPIO pins macros for the Apollo Lake SoC
 *
 * This header file is used to specify the GPIO pins for
 * the Apollo Lake SoC.
 */

#ifndef __SOC_GPIO_H_
#define __SOC_GPIO_H_

#define APL_GPIO_DEV_N_0		DT_APL_GPIO_LABEL_N_0
#define APL_GPIO_0			0
#define APL_GPIO_1			1
#define APL_GPIO_2			2
#define APL_GPIO_3			3
#define APL_GPIO_4			4
#define APL_GPIO_5			5
#define APL_GPIO_6			6
#define APL_GPIO_7			7
#define APL_GPIO_8			8
#define APL_GPIO_9			9
#define APL_GPIO_10			10
#define APL_GPIO_11			11
#define APL_GPIO_12			12
#define APL_GPIO_13			13
#define APL_GPIO_14			14
#define APL_GPIO_15			15
#define APL_GPIO_16			16
#define APL_GPIO_17			17
#define APL_GPIO_18			18
#define APL_GPIO_19			19
#define APL_GPIO_20			20
#define APL_GPIO_21			21
#define APL_GPIO_22			22
#define APL_GPIO_23			23
#define APL_GPIO_24			24
#define APL_GPIO_25			25
#define APL_GPIO_26			26
#define APL_GPIO_27			27
#define APL_GPIO_28			28
#define APL_GPIO_29			29
#define APL_GPIO_30			30
#define APL_GPIO_31			31

#define APL_GPIO_DEV_N_1		DT_APL_GPIO_LABEL_N_1
#define APL_GPIO_32			0
#define APL_GPIO_33			1
#define APL_GPIO_34			2
#define APL_GPIO_35			3
#define APL_GPIO_36			4
#define APL_GPIO_37			5
#define APL_GPIO_38			6
#define APL_GPIO_39			7
#define APL_GPIO_40			8
#define APL_GPIO_41			9
#define APL_GPIO_42			10
#define APL_GPIO_43			11
#define APL_GPIO_44			12
#define APL_GPIO_45			13
#define APL_GPIO_46			14
#define APL_GPIO_47			15
#define APL_GPIO_48			16
#define APL_GPIO_49			17
#define APL_GPIO_62			18
#define APL_GPIO_63			19
#define APL_GPIO_64			20
#define APL_GPIO_65			21
#define APL_GPIO_66			22
#define APL_GPIO_67			23
#define APL_GPIO_68			24
#define APL_GPIO_69			25
#define APL_GPIO_70			26
#define APL_GPIO_71			27
#define APL_GPIO_72			28
#define APL_GPIO_73			29
#define APL_GPIO_TCK			30
#define APL_GPIO_TRST_B			31

#define APL_GPIO_DEV_N_2		DT_APL_GPIO_LABEL_N_2
#define APL_GPIO_TMS			0
#define APL_GPIO_TDI			1
#define APL_GPIO_CX_PMODE		2
#define APL_GPIO_CX_PREQ_B		3
#define APL_GPIO_JTAGX			4
#define APL_GPIO_CX_PRDY_B		5
#define APL_GPIO_TDO			6
#define APL_GPIO_CNV_BRI_DT		7
#define APL_GPIO_CNV_BRI_RSP		8
#define APL_GPIO_CNV_RGI_DT		9
#define APL_GPIO_CNV_RGI_RSP		10
#define APL_GPIO_SVID0_ALERT_B		11
#define APL_GPIO_SVOD0_DATA		12
#define APL_GPIO_SVOD0_CLK		13

#define APL_GPIO_DEV_NW_0		DT_APL_GPIO_LABEL_NW_0
#define APL_GPIO_187			0
#define APL_GPIO_188			1
#define APL_GPIO_189			2
#define APL_GPIO_190			3
#define APL_GPIO_191			4
#define APL_GPIO_192			5
#define APL_GPIO_193			6
#define APL_GPIO_194			7
#define APL_GPIO_195			8
#define APL_GPIO_196			9
#define APL_GPIO_197			10
#define APL_GPIO_198			11
#define APL_GPIO_199			12
#define APL_GPIO_200			13
#define APL_GPIO_201			14
#define APL_GPIO_202			15
#define APL_GPIO_203			16
#define APL_GPIO_204			17
#define APL_GPIO_PMC_SPI_FS0		18
#define APL_GPIO_PMC_SPI_FS1		19
#define APL_GPIO_PMC_SPI_FS2		20
#define APL_GPIO_PMC_SPI_RXD		21
#define APL_GPIO_PMC_SPI_TXC		22
#define APL_GPIO_PMC_SPI_CLK		23
#define APL_GPIO_PMIC_PWRGOOD		24
#define APL_GPIO_PMIC_RESET_B		25
#define APL_GPIO_213			26
#define APL_GPIO_214			27
#define APL_GPIO_215			28
#define APL_GPIO_PMIC_THERMTRIP_B	29
#define APL_GPIO_PMIC_STDBY		30
#define APL_GPIO_PROCHOT_B		31

#define APL_GPIO_DEV_NW_1		DT_APL_GPIO_LABEL_NW_1
#define APL_GPIO_PMIC_I2C_SCL		0
#define APL_GPIO_PMIC_I2C_SDA		1
#define APL_GPIO_74			2
#define APL_GPIO_75			3
#define APL_GPIO_76			4
#define APL_GPIO_77			5
#define APL_GPIO_78			6
#define APL_GPIO_79			7
#define APL_GPIO_80			8
#define APL_GPIO_81			9
#define APL_GPIO_82			10
#define APL_GPIO_83			11
#define APL_GPIO_84			12
#define APL_GPIO_85			13
#define APL_GPIO_86			14
#define APL_GPIO_87			15
#define APL_GPIO_88			16
#define APL_GPIO_89			17
#define APL_GPIO_90			18
#define APL_GPIO_91			19
#define APL_GPIO_92			20
#define APL_GPIO_97			21
#define APL_GPIO_98			22
#define APL_GPIO_99			23
#define APL_GPIO_100			24
#define APL_GPIO_101			25
#define APL_GPIO_102			26
#define APL_GPIO_103			27
#define APL_GPIO_FST_SPI_CLK_FB		28
#define APL_GPIO_104			29
#define APL_GPIO_105			30
#define APL_GPIO_106			31

#define APL_GPIO_DEV_NW_2		DT_APL_GPIO_LABEL_NW_2
#define APL_GPIO_109			0
#define APL_GPIO_110			1
#define APL_GPIO_111			2
#define APL_GPIO_112			3
#define APL_GPIO_113			4
#define APL_GPIO_116			5
#define APL_GPIO_117			6
#define APL_GPIO_118			7
#define APL_GPIO_119			8
#define APL_GPIO_120			9
#define APL_GPIO_121			10
#define APL_GPIO_122			11
#define APL_GPIO_123			12

#define APL_GPIO_DEV_W_0		DT_APL_GPIO_LABEL_W_0
#define APL_GPIO_124			0
#define APL_GPIO_125			1
#define APL_GPIO_126			2
#define APL_GPIO_127			3
#define APL_GPIO_128			4
#define APL_GPIO_129			5
#define APL_GPIO_130			6
#define APL_GPIO_131			7
#define APL_GPIO_132			8
#define APL_GPIO_133			9
#define APL_GPIO_134			10
#define APL_GPIO_135			11
#define APL_GPIO_136			12
#define APL_GPIO_137			13
#define APL_GPIO_138			14
#define APL_GPIO_139			15
#define APL_GPIO_146			16
#define APL_GPIO_147			17
#define APL_GPIO_148			18
#define APL_GPIO_149			19
#define APL_GPIO_150			20
#define APL_GPIO_151			21
#define APL_GPIO_152			22
#define APL_GPIO_153			23
#define APL_GPIO_154			24
#define APL_GPIO_155			25
#define APL_GPIO_209			26
#define APL_GPIO_210			27
#define APL_GPIO_211			28
#define APL_GPIO_212			29
#define APL_GPIO_OSC_CLK_OUT_0		30
#define APL_GPIO_OSC_CLK_OUT_1		31

#define APL_GPIO_DEV_W_1		DT_APL_GPIO_LABEL_W_1
#define APL_GPIO_OSC_CLK_OUT_2		0
#define APL_GPIO_OSC_CLK_OUT_3		1
#define APL_GPIO_OSC_CLK_OUT_4		2
#define APL_GPIO_PMU_AC_PRESENT		3
#define APL_GPIO_PMU_BATLOW_B		4
#define APL_GPIO_PMU_PLTRST_B		5
#define APL_GPIO_PMU_PWRBTN_B		6
#define APL_GPIO_PMU_RESETBUTTON_B	7
#define APL_GPIO_PMU_SLP_S0_B		8
#define APL_GPIO_PMU_SLP_S3_B		9
#define APL_GPIO_PMU_SLP_S4_B		10
#define APL_GPIO_PMU_SUSCLK		11
#define APL_GPIO_PMU_WAKE_B		12
#define APL_GPIO_SUS_STAT_B		13
#define APL_GPIO_SUSPWRDNACK		14

#define APL_GPIO_DEV_SW_0		DT_APL_GPIO_LABEL_SW_0
#define APL_GPIO_205			0
#define APL_GPIO_206			1
#define APL_GPIO_207			2
#define APL_GPIO_208			3
#define APL_GPIO_156			4
#define APL_GPIO_157			5
#define APL_GPIO_158			6
#define APL_GPIO_159			7
#define APL_GPIO_160			8
#define APL_GPIO_161			9
#define APL_GPIO_162			10
#define APL_GPIO_163			11
#define APL_GPIO_164			12
#define APL_GPIO_165			13
#define APL_GPIO_166			14
#define APL_GPIO_167			15
#define APL_GPIO_168			16
#define APL_GPIO_169			17
#define APL_GPIO_170			18
#define APL_GPIO_171			19
#define APL_GPIO_172			20
#define APL_GPIO_179			21
#define APL_GPIO_173			22
#define APL_GPIO_174			23
#define APL_GPIO_175			24
#define APL_GPIO_176			25
#define APL_GPIO_177			26
#define APL_GPIO_178			27
#define APL_GPIO_186			28
#define APL_GPIO_182			29
#define APL_GPIO_183			30
#define APL_GPIO_SMB_ALERTB		31

#define APL_GPIO_DEV_SW_1		DT_APL_GPIO_LABEL_SW_1
#define APL_GPIO_SMB_CLK		0
#define APL_GPIO_SMB_DATA		1
#define APL_GPIO_LPC_ILB_SERIRQ		2
#define APL_GPIO_LPC_CLKOUT0		3
#define APL_GPIO_LPC_CLKOUT1		4
#define APL_GPIO_LPC_AD0		5
#define APL_GPIO_LPC_AD1		6
#define APL_GPIO_LPC_AD2		7
#define APL_GPIO_LPC_AD3		8
#define APL_GPIO_LPC_CLKRUNB		9
#define APL_GPIO_LPC_FRAMEB		10

#endif /* __SOC_GPIO_H_ */
