| /* SPDX-License-Identifier: GPL-2.0 */ | 
 | /* | 
 |  * Defines macros and constants for Renesas RZ/N1 pin controller pin | 
 |  * muxing functions. | 
 |  */ | 
 | #ifndef __DT_BINDINGS_RZN1_PINCTRL_H | 
 | #define __DT_BINDINGS_RZN1_PINCTRL_H | 
 |  | 
 | #define RZN1_PINMUX(_gpio, _func) \ | 
 | 	(((_func) << 8) | (_gpio)) | 
 |  | 
 | /* | 
 |  * Given the different levels of muxing on the SoC, it was decided to | 
 |  * 'linearize' them into one numerical space. So mux level 1, 2 and the MDIO | 
 |  * muxes are all represented by one single value. | 
 |  * | 
 |  * You can derive the hardware value pretty easily too, as | 
 |  * 0...9   are Level 1 | 
 |  * 10...71 are Level 2. The Level 2 mux will be set to this | 
 |  *         value - RZN1_FUNC_L2_OFFSET, and the Level 1 mux will be | 
 |  *         set accordingly. | 
 |  * 72...103 are for the 2 MDIO muxes. | 
 |  */ | 
 | #define RZN1_FUNC_HIGHZ				0 | 
 | #define RZN1_FUNC_0L				1 | 
 | #define RZN1_FUNC_CLK_ETH_MII_RGMII_RMII	2 | 
 | #define RZN1_FUNC_CLK_ETH_NAND			3 | 
 | #define RZN1_FUNC_QSPI				4 | 
 | #define RZN1_FUNC_SDIO				5 | 
 | #define RZN1_FUNC_LCD				6 | 
 | #define RZN1_FUNC_LCD_E				7 | 
 | #define RZN1_FUNC_MSEBIM			8 | 
 | #define RZN1_FUNC_MSEBIS			9 | 
 | #define RZN1_FUNC_L2_OFFSET			10	/* I'm Special */ | 
 |  | 
 | #define RZN1_FUNC_HIGHZ1			(RZN1_FUNC_L2_OFFSET + 0) | 
 | #define RZN1_FUNC_ETHERCAT			(RZN1_FUNC_L2_OFFSET + 1) | 
 | #define RZN1_FUNC_SERCOS3			(RZN1_FUNC_L2_OFFSET + 2) | 
 | #define RZN1_FUNC_SDIO_E			(RZN1_FUNC_L2_OFFSET + 3) | 
 | #define RZN1_FUNC_ETH_MDIO			(RZN1_FUNC_L2_OFFSET + 4) | 
 | #define RZN1_FUNC_ETH_MDIO_E1			(RZN1_FUNC_L2_OFFSET + 5) | 
 | #define RZN1_FUNC_USB				(RZN1_FUNC_L2_OFFSET + 6) | 
 | #define RZN1_FUNC_MSEBIM_E			(RZN1_FUNC_L2_OFFSET + 7) | 
 | #define RZN1_FUNC_MSEBIS_E			(RZN1_FUNC_L2_OFFSET + 8) | 
 | #define RZN1_FUNC_RSV				(RZN1_FUNC_L2_OFFSET + 9) | 
 | #define RZN1_FUNC_RSV_E				(RZN1_FUNC_L2_OFFSET + 10) | 
 | #define RZN1_FUNC_RSV_E1			(RZN1_FUNC_L2_OFFSET + 11) | 
 | #define RZN1_FUNC_UART0_I			(RZN1_FUNC_L2_OFFSET + 12) | 
 | #define RZN1_FUNC_UART0_I_E			(RZN1_FUNC_L2_OFFSET + 13) | 
 | #define RZN1_FUNC_UART1_I			(RZN1_FUNC_L2_OFFSET + 14) | 
 | #define RZN1_FUNC_UART1_I_E			(RZN1_FUNC_L2_OFFSET + 15) | 
 | #define RZN1_FUNC_UART2_I			(RZN1_FUNC_L2_OFFSET + 16) | 
 | #define RZN1_FUNC_UART2_I_E			(RZN1_FUNC_L2_OFFSET + 17) | 
 | #define RZN1_FUNC_UART0				(RZN1_FUNC_L2_OFFSET + 18) | 
 | #define RZN1_FUNC_UART0_E			(RZN1_FUNC_L2_OFFSET + 19) | 
 | #define RZN1_FUNC_UART1				(RZN1_FUNC_L2_OFFSET + 20) | 
 | #define RZN1_FUNC_UART1_E			(RZN1_FUNC_L2_OFFSET + 21) | 
 | #define RZN1_FUNC_UART2				(RZN1_FUNC_L2_OFFSET + 22) | 
 | #define RZN1_FUNC_UART2_E			(RZN1_FUNC_L2_OFFSET + 23) | 
 | #define RZN1_FUNC_UART3				(RZN1_FUNC_L2_OFFSET + 24) | 
 | #define RZN1_FUNC_UART3_E			(RZN1_FUNC_L2_OFFSET + 25) | 
 | #define RZN1_FUNC_UART4				(RZN1_FUNC_L2_OFFSET + 26) | 
 | #define RZN1_FUNC_UART4_E			(RZN1_FUNC_L2_OFFSET + 27) | 
 | #define RZN1_FUNC_UART5				(RZN1_FUNC_L2_OFFSET + 28) | 
 | #define RZN1_FUNC_UART5_E			(RZN1_FUNC_L2_OFFSET + 29) | 
 | #define RZN1_FUNC_UART6				(RZN1_FUNC_L2_OFFSET + 30) | 
 | #define RZN1_FUNC_UART6_E			(RZN1_FUNC_L2_OFFSET + 31) | 
 | #define RZN1_FUNC_UART7				(RZN1_FUNC_L2_OFFSET + 32) | 
 | #define RZN1_FUNC_UART7_E			(RZN1_FUNC_L2_OFFSET + 33) | 
 | #define RZN1_FUNC_SPI0_M			(RZN1_FUNC_L2_OFFSET + 34) | 
 | #define RZN1_FUNC_SPI0_M_E			(RZN1_FUNC_L2_OFFSET + 35) | 
 | #define RZN1_FUNC_SPI1_M			(RZN1_FUNC_L2_OFFSET + 36) | 
 | #define RZN1_FUNC_SPI1_M_E			(RZN1_FUNC_L2_OFFSET + 37) | 
 | #define RZN1_FUNC_SPI2_M			(RZN1_FUNC_L2_OFFSET + 38) | 
 | #define RZN1_FUNC_SPI2_M_E			(RZN1_FUNC_L2_OFFSET + 39) | 
 | #define RZN1_FUNC_SPI3_M			(RZN1_FUNC_L2_OFFSET + 40) | 
 | #define RZN1_FUNC_SPI3_M_E			(RZN1_FUNC_L2_OFFSET + 41) | 
 | #define RZN1_FUNC_SPI4_S			(RZN1_FUNC_L2_OFFSET + 42) | 
 | #define RZN1_FUNC_SPI4_S_E			(RZN1_FUNC_L2_OFFSET + 43) | 
 | #define RZN1_FUNC_SPI5_S			(RZN1_FUNC_L2_OFFSET + 44) | 
 | #define RZN1_FUNC_SPI5_S_E			(RZN1_FUNC_L2_OFFSET + 45) | 
 | #define RZN1_FUNC_SGPIO0_M			(RZN1_FUNC_L2_OFFSET + 46) | 
 | #define RZN1_FUNC_SGPIO1_M			(RZN1_FUNC_L2_OFFSET + 47) | 
 | #define RZN1_FUNC_GPIO				(RZN1_FUNC_L2_OFFSET + 48) | 
 | #define RZN1_FUNC_CAN				(RZN1_FUNC_L2_OFFSET + 49) | 
 | #define RZN1_FUNC_I2C				(RZN1_FUNC_L2_OFFSET + 50) | 
 | #define RZN1_FUNC_SAFE				(RZN1_FUNC_L2_OFFSET + 51) | 
 | #define RZN1_FUNC_PTO_PWM			(RZN1_FUNC_L2_OFFSET + 52) | 
 | #define RZN1_FUNC_PTO_PWM1			(RZN1_FUNC_L2_OFFSET + 53) | 
 | #define RZN1_FUNC_PTO_PWM2			(RZN1_FUNC_L2_OFFSET + 54) | 
 | #define RZN1_FUNC_PTO_PWM3			(RZN1_FUNC_L2_OFFSET + 55) | 
 | #define RZN1_FUNC_PTO_PWM4			(RZN1_FUNC_L2_OFFSET + 56) | 
 | #define RZN1_FUNC_DELTA_SIGMA			(RZN1_FUNC_L2_OFFSET + 57) | 
 | #define RZN1_FUNC_SGPIO2_M			(RZN1_FUNC_L2_OFFSET + 58) | 
 | #define RZN1_FUNC_SGPIO3_M			(RZN1_FUNC_L2_OFFSET + 59) | 
 | #define RZN1_FUNC_SGPIO4_S			(RZN1_FUNC_L2_OFFSET + 60) | 
 | #define RZN1_FUNC_MAC_MTIP_SWITCH		(RZN1_FUNC_L2_OFFSET + 61) | 
 |  | 
 | #define RZN1_FUNC_MDIO_OFFSET			(RZN1_FUNC_L2_OFFSET + 62) | 
 |  | 
 | /* These are MDIO0 peripherals for the RZN1_FUNC_ETH_MDIO function */ | 
 | #define RZN1_FUNC_MDIO0_HIGHZ			(RZN1_FUNC_MDIO_OFFSET + 0) | 
 | #define RZN1_FUNC_MDIO0_GMAC0			(RZN1_FUNC_MDIO_OFFSET + 1) | 
 | #define RZN1_FUNC_MDIO0_GMAC1			(RZN1_FUNC_MDIO_OFFSET + 2) | 
 | #define RZN1_FUNC_MDIO0_ECAT			(RZN1_FUNC_MDIO_OFFSET + 3) | 
 | #define RZN1_FUNC_MDIO0_S3_MDIO0		(RZN1_FUNC_MDIO_OFFSET + 4) | 
 | #define RZN1_FUNC_MDIO0_S3_MDIO1		(RZN1_FUNC_MDIO_OFFSET + 5) | 
 | #define RZN1_FUNC_MDIO0_HWRTOS			(RZN1_FUNC_MDIO_OFFSET + 6) | 
 | #define RZN1_FUNC_MDIO0_SWITCH			(RZN1_FUNC_MDIO_OFFSET + 7) | 
 | /* These are MDIO0 peripherals for the RZN1_FUNC_ETH_MDIO_E1 function */ | 
 | #define RZN1_FUNC_MDIO0_E1_HIGHZ		(RZN1_FUNC_MDIO_OFFSET + 8) | 
 | #define RZN1_FUNC_MDIO0_E1_GMAC0		(RZN1_FUNC_MDIO_OFFSET + 9) | 
 | #define RZN1_FUNC_MDIO0_E1_GMAC1		(RZN1_FUNC_MDIO_OFFSET + 10) | 
 | #define RZN1_FUNC_MDIO0_E1_ECAT			(RZN1_FUNC_MDIO_OFFSET + 11) | 
 | #define RZN1_FUNC_MDIO0_E1_S3_MDIO0		(RZN1_FUNC_MDIO_OFFSET + 12) | 
 | #define RZN1_FUNC_MDIO0_E1_S3_MDIO1		(RZN1_FUNC_MDIO_OFFSET + 13) | 
 | #define RZN1_FUNC_MDIO0_E1_HWRTOS		(RZN1_FUNC_MDIO_OFFSET + 14) | 
 | #define RZN1_FUNC_MDIO0_E1_SWITCH		(RZN1_FUNC_MDIO_OFFSET + 15) | 
 |  | 
 | /* These are MDIO1 peripherals for the RZN1_FUNC_ETH_MDIO function */ | 
 | #define RZN1_FUNC_MDIO1_HIGHZ			(RZN1_FUNC_MDIO_OFFSET + 16) | 
 | #define RZN1_FUNC_MDIO1_GMAC0			(RZN1_FUNC_MDIO_OFFSET + 17) | 
 | #define RZN1_FUNC_MDIO1_GMAC1			(RZN1_FUNC_MDIO_OFFSET + 18) | 
 | #define RZN1_FUNC_MDIO1_ECAT			(RZN1_FUNC_MDIO_OFFSET + 19) | 
 | #define RZN1_FUNC_MDIO1_S3_MDIO0		(RZN1_FUNC_MDIO_OFFSET + 20) | 
 | #define RZN1_FUNC_MDIO1_S3_MDIO1		(RZN1_FUNC_MDIO_OFFSET + 21) | 
 | #define RZN1_FUNC_MDIO1_HWRTOS			(RZN1_FUNC_MDIO_OFFSET + 22) | 
 | #define RZN1_FUNC_MDIO1_SWITCH			(RZN1_FUNC_MDIO_OFFSET + 23) | 
 | /* These are MDIO1 peripherals for the RZN1_FUNC_ETH_MDIO_E1 function */ | 
 | #define RZN1_FUNC_MDIO1_E1_HIGHZ		(RZN1_FUNC_MDIO_OFFSET + 24) | 
 | #define RZN1_FUNC_MDIO1_E1_GMAC0		(RZN1_FUNC_MDIO_OFFSET + 25) | 
 | #define RZN1_FUNC_MDIO1_E1_GMAC1		(RZN1_FUNC_MDIO_OFFSET + 26) | 
 | #define RZN1_FUNC_MDIO1_E1_ECAT			(RZN1_FUNC_MDIO_OFFSET + 27) | 
 | #define RZN1_FUNC_MDIO1_E1_S3_MDIO0		(RZN1_FUNC_MDIO_OFFSET + 28) | 
 | #define RZN1_FUNC_MDIO1_E1_S3_MDIO1		(RZN1_FUNC_MDIO_OFFSET + 29) | 
 | #define RZN1_FUNC_MDIO1_E1_HWRTOS		(RZN1_FUNC_MDIO_OFFSET + 30) | 
 | #define RZN1_FUNC_MDIO1_E1_SWITCH		(RZN1_FUNC_MDIO_OFFSET + 31) | 
 |  | 
 | #define RZN1_FUNC_MAX				(RZN1_FUNC_MDIO_OFFSET + 32) | 
 |  | 
 | #endif /* __DT_BINDINGS_RZN1_PINCTRL_H */ |