162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * This header provides constants specific to AM33XX pinctrl bindings.
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#ifndef _DT_BINDINGS_PINCTRL_AM33XX_H
762306a36Sopenharmony_ci#define _DT_BINDINGS_PINCTRL_AM33XX_H
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <dt-bindings/pinctrl/omap.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/* am33xx specific mux bit defines */
1262306a36Sopenharmony_ci#undef PULL_ENA
1362306a36Sopenharmony_ci#undef INPUT_EN
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci#define PULL_DISABLE		(1 << 3)
1662306a36Sopenharmony_ci#define INPUT_EN		(1 << 5)
1762306a36Sopenharmony_ci#define SLEWCTRL_SLOW		(1 << 6)
1862306a36Sopenharmony_ci#define SLEWCTRL_FAST		0
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci/* update macro depending on INPUT_EN and PULL_ENA */
2162306a36Sopenharmony_ci#undef PIN_OUTPUT
2262306a36Sopenharmony_ci#undef PIN_OUTPUT_PULLUP
2362306a36Sopenharmony_ci#undef PIN_OUTPUT_PULLDOWN
2462306a36Sopenharmony_ci#undef PIN_INPUT
2562306a36Sopenharmony_ci#undef PIN_INPUT_PULLUP
2662306a36Sopenharmony_ci#undef PIN_INPUT_PULLDOWN
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci#define PIN_OUTPUT		(PULL_DISABLE)
2962306a36Sopenharmony_ci#define PIN_OUTPUT_PULLUP	(PULL_UP)
3062306a36Sopenharmony_ci#define PIN_OUTPUT_PULLDOWN	0
3162306a36Sopenharmony_ci#define PIN_INPUT		(INPUT_EN | PULL_DISABLE)
3262306a36Sopenharmony_ci#define PIN_INPUT_PULLUP	(INPUT_EN | PULL_UP)
3362306a36Sopenharmony_ci#define PIN_INPUT_PULLDOWN	(INPUT_EN)
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci/* undef non-existing modes */
3662306a36Sopenharmony_ci#undef PIN_OFF_NONE
3762306a36Sopenharmony_ci#undef PIN_OFF_OUTPUT_HIGH
3862306a36Sopenharmony_ci#undef PIN_OFF_OUTPUT_LOW
3962306a36Sopenharmony_ci#undef PIN_OFF_INPUT_PULLUP
4062306a36Sopenharmony_ci#undef PIN_OFF_INPUT_PULLDOWN
4162306a36Sopenharmony_ci#undef PIN_OFF_WAKEUPENABLE
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci#define AM335X_PIN_OFFSET_MIN			0x0800U
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD0			0x800
4662306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD1			0x804
4762306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD2			0x808
4862306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD3			0x80c
4962306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD4			0x810
5062306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD5			0x814
5162306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD6			0x818
5262306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD7			0x81c
5362306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD8			0x820
5462306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD9			0x824
5562306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD10			0x828
5662306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD11			0x82c
5762306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD12			0x830
5862306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD13			0x834
5962306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD14			0x838
6062306a36Sopenharmony_ci#define AM335X_PIN_GPMC_AD15			0x83c
6162306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A0			0x840
6262306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A1			0x844
6362306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A2			0x848
6462306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A3			0x84c
6562306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A4			0x850
6662306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A5			0x854
6762306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A6			0x858
6862306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A7			0x85c
6962306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A8			0x860
7062306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A9			0x864
7162306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A10			0x868
7262306a36Sopenharmony_ci#define AM335X_PIN_GPMC_A11			0x86c
7362306a36Sopenharmony_ci#define AM335X_PIN_GPMC_WAIT0			0x870
7462306a36Sopenharmony_ci#define AM335X_PIN_GPMC_WPN			0x874
7562306a36Sopenharmony_ci#define AM335X_PIN_GPMC_BEN1			0x878
7662306a36Sopenharmony_ci#define AM335X_PIN_GPMC_CSN0			0x87c
7762306a36Sopenharmony_ci#define AM335X_PIN_GPMC_CSN1			0x880
7862306a36Sopenharmony_ci#define AM335X_PIN_GPMC_CSN2			0x884
7962306a36Sopenharmony_ci#define AM335X_PIN_GPMC_CSN3			0x888
8062306a36Sopenharmony_ci#define AM335X_PIN_GPMC_CLK			0x88c
8162306a36Sopenharmony_ci#define AM335X_PIN_GPMC_ADVN_ALE		0x890
8262306a36Sopenharmony_ci#define AM335X_PIN_GPMC_OEN_REN			0x894
8362306a36Sopenharmony_ci#define AM335X_PIN_GPMC_WEN			0x898
8462306a36Sopenharmony_ci#define AM335X_PIN_GPMC_BEN0_CLE		0x89c
8562306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA0			0x8a0
8662306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA1			0x8a4
8762306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA2			0x8a8
8862306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA3			0x8ac
8962306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA4			0x8b0
9062306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA5			0x8b4
9162306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA6			0x8b8
9262306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA7			0x8bc
9362306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA8			0x8c0
9462306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA9			0x8c4
9562306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA10			0x8c8
9662306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA11			0x8cc
9762306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA12			0x8d0
9862306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA13			0x8d4
9962306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA14			0x8d8
10062306a36Sopenharmony_ci#define AM335X_PIN_LCD_DATA15			0x8dc
10162306a36Sopenharmony_ci#define AM335X_PIN_LCD_VSYNC			0x8e0
10262306a36Sopenharmony_ci#define AM335X_PIN_LCD_HSYNC			0x8e4
10362306a36Sopenharmony_ci#define AM335X_PIN_LCD_PCLK			0x8e8
10462306a36Sopenharmony_ci#define AM335X_PIN_LCD_AC_BIAS_EN		0x8ec
10562306a36Sopenharmony_ci#define AM335X_PIN_MMC0_DAT3			0x8f0
10662306a36Sopenharmony_ci#define AM335X_PIN_MMC0_DAT2			0x8f4
10762306a36Sopenharmony_ci#define AM335X_PIN_MMC0_DAT1			0x8f8
10862306a36Sopenharmony_ci#define AM335X_PIN_MMC0_DAT0			0x8fc
10962306a36Sopenharmony_ci#define AM335X_PIN_MMC0_CLK			0x900
11062306a36Sopenharmony_ci#define AM335X_PIN_MMC0_CMD			0x904
11162306a36Sopenharmony_ci#define AM335X_PIN_MII1_COL			0x908
11262306a36Sopenharmony_ci#define AM335X_PIN_MII1_CRS			0x90c
11362306a36Sopenharmony_ci#define AM335X_PIN_MII1_RX_ER			0x910
11462306a36Sopenharmony_ci#define AM335X_PIN_MII1_TX_EN			0x914
11562306a36Sopenharmony_ci#define AM335X_PIN_MII1_RX_DV			0x918
11662306a36Sopenharmony_ci#define AM335X_PIN_MII1_TXD3			0x91c
11762306a36Sopenharmony_ci#define AM335X_PIN_MII1_TXD2			0x920
11862306a36Sopenharmony_ci#define AM335X_PIN_MII1_TXD1			0x924
11962306a36Sopenharmony_ci#define AM335X_PIN_MII1_TXD0			0x928
12062306a36Sopenharmony_ci#define AM335X_PIN_MII1_TX_CLK			0x92c
12162306a36Sopenharmony_ci#define AM335X_PIN_MII1_RX_CLK			0x930
12262306a36Sopenharmony_ci#define AM335X_PIN_MII1_RXD3			0x934
12362306a36Sopenharmony_ci#define AM335X_PIN_MII1_RXD2			0x938
12462306a36Sopenharmony_ci#define AM335X_PIN_MII1_RXD1			0x93c
12562306a36Sopenharmony_ci#define AM335X_PIN_MII1_RXD0			0x940
12662306a36Sopenharmony_ci#define AM335X_PIN_RMII1_REF_CLK		0x944
12762306a36Sopenharmony_ci#define AM335X_PIN_MDIO				0x948
12862306a36Sopenharmony_ci#define AM335X_PIN_MDC				0x94c
12962306a36Sopenharmony_ci#define AM335X_PIN_SPI0_SCLK			0x950
13062306a36Sopenharmony_ci#define AM335X_PIN_SPI0_D0			0x954
13162306a36Sopenharmony_ci#define AM335X_PIN_SPI0_D1			0x958
13262306a36Sopenharmony_ci#define AM335X_PIN_SPI0_CS0			0x95c
13362306a36Sopenharmony_ci#define AM335X_PIN_SPI0_CS1			0x960
13462306a36Sopenharmony_ci#define AM335X_PIN_ECAP0_IN_PWM0_OUT		0x964
13562306a36Sopenharmony_ci#define AM335X_PIN_UART0_CTSN			0x968
13662306a36Sopenharmony_ci#define AM335X_PIN_UART0_RTSN			0x96c
13762306a36Sopenharmony_ci#define AM335X_PIN_UART0_RXD			0x970
13862306a36Sopenharmony_ci#define AM335X_PIN_UART0_TXD			0x974
13962306a36Sopenharmony_ci#define AM335X_PIN_UART1_CTSN			0x978
14062306a36Sopenharmony_ci#define AM335X_PIN_UART1_RTSN			0x97c
14162306a36Sopenharmony_ci#define AM335X_PIN_UART1_RXD			0x980
14262306a36Sopenharmony_ci#define AM335X_PIN_UART1_TXD			0x984
14362306a36Sopenharmony_ci#define AM335X_PIN_I2C0_SDA			0x988
14462306a36Sopenharmony_ci#define AM335X_PIN_I2C0_SCL			0x98c
14562306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_ACLKX			0x990
14662306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_FSX			0x994
14762306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_AXR0			0x998
14862306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_AHCLKR		0x99c
14962306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_ACLKR			0x9a0
15062306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_FSR			0x9a4
15162306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_AXR1			0x9a8
15262306a36Sopenharmony_ci#define AM335X_PIN_MCASP0_AHCLKX		0x9ac
15362306a36Sopenharmony_ci#define AM335X_PIN_XDMA_EVENT_INTR0		0x9b0
15462306a36Sopenharmony_ci#define AM335X_PIN_XDMA_EVENT_INTR1		0x9b4
15562306a36Sopenharmony_ci#define AM335X_PIN_WARMRSTN			0x9b8
15662306a36Sopenharmony_ci#define AM335X_PIN_NNMI				0x9c0
15762306a36Sopenharmony_ci#define AM335X_PIN_TMS				0x9d0
15862306a36Sopenharmony_ci#define AM335X_PIN_TDI				0x9d4
15962306a36Sopenharmony_ci#define AM335X_PIN_TDO				0x9d8
16062306a36Sopenharmony_ci#define AM335X_PIN_TCK				0x9dc
16162306a36Sopenharmony_ci#define AM335X_PIN_TRSTN			0x9e0
16262306a36Sopenharmony_ci#define AM335X_PIN_EMU0				0x9e4
16362306a36Sopenharmony_ci#define AM335X_PIN_EMU1				0x9e8
16462306a36Sopenharmony_ci#define AM335X_PIN_RTC_PWRONRSTN		0x9f8
16562306a36Sopenharmony_ci#define AM335X_PIN_PMIC_POWER_EN		0x9fc
16662306a36Sopenharmony_ci#define AM335X_PIN_EXT_WAKEUP			0xa00
16762306a36Sopenharmony_ci#define AM335X_PIN_USB0_DRVVBUS			0xa1c
16862306a36Sopenharmony_ci#define AM335X_PIN_USB1_DRVVBUS			0xa34
16962306a36Sopenharmony_ci
17062306a36Sopenharmony_ci#define AM335X_PIN_OFFSET_MAX			0x0a34U
17162306a36Sopenharmony_ci
17262306a36Sopenharmony_ci#endif
173