123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- /* SPDX-License-Identifier: GPL-2.0+ */
- /*
- * (C) Copyright 2010,2011
- * NVIDIA Corporation <www.nvidia.com>
- */
- #ifndef _TEGRA20_PINMUX_H_
- #define _TEGRA20_PINMUX_H_
- /*
- * Pin groups which we adjust. There are three basic attributes of each pin
- * group which use this enum:
- *
- * - function
- * - pullup / pulldown
- * - tristate or normal
- */
- enum pmux_pingrp {
- /* APB_MISC_PP_TRISTATE_REG_A_0 */
- PMUX_PINGRP_ATA,
- PMUX_PINGRP_ATB,
- PMUX_PINGRP_ATC,
- PMUX_PINGRP_ATD,
- PMUX_PINGRP_CDEV1,
- PMUX_PINGRP_CDEV2,
- PMUX_PINGRP_CSUS,
- PMUX_PINGRP_DAP1,
- PMUX_PINGRP_DAP2,
- PMUX_PINGRP_DAP3,
- PMUX_PINGRP_DAP4,
- PMUX_PINGRP_DTA,
- PMUX_PINGRP_DTB,
- PMUX_PINGRP_DTC,
- PMUX_PINGRP_DTD,
- PMUX_PINGRP_DTE,
- PMUX_PINGRP_GPU,
- PMUX_PINGRP_GPV,
- PMUX_PINGRP_I2CP,
- PMUX_PINGRP_IRTX,
- PMUX_PINGRP_IRRX,
- PMUX_PINGRP_KBCB,
- PMUX_PINGRP_KBCA,
- PMUX_PINGRP_PMC,
- PMUX_PINGRP_PTA,
- PMUX_PINGRP_RM,
- PMUX_PINGRP_KBCE,
- PMUX_PINGRP_KBCF,
- PMUX_PINGRP_GMA,
- PMUX_PINGRP_GMC,
- PMUX_PINGRP_SDIO1,
- PMUX_PINGRP_OWC,
- /* 32: APB_MISC_PP_TRISTATE_REG_B_0 */
- PMUX_PINGRP_GME,
- PMUX_PINGRP_SDC,
- PMUX_PINGRP_SDD,
- PMUX_PINGRP_RESERVED0,
- PMUX_PINGRP_SLXA,
- PMUX_PINGRP_SLXC,
- PMUX_PINGRP_SLXD,
- PMUX_PINGRP_SLXK,
- PMUX_PINGRP_SPDI,
- PMUX_PINGRP_SPDO,
- PMUX_PINGRP_SPIA,
- PMUX_PINGRP_SPIB,
- PMUX_PINGRP_SPIC,
- PMUX_PINGRP_SPID,
- PMUX_PINGRP_SPIE,
- PMUX_PINGRP_SPIF,
- PMUX_PINGRP_SPIG,
- PMUX_PINGRP_SPIH,
- PMUX_PINGRP_UAA,
- PMUX_PINGRP_UAB,
- PMUX_PINGRP_UAC,
- PMUX_PINGRP_UAD,
- PMUX_PINGRP_UCA,
- PMUX_PINGRP_UCB,
- PMUX_PINGRP_RESERVED1,
- PMUX_PINGRP_ATE,
- PMUX_PINGRP_KBCC,
- PMUX_PINGRP_RESERVED2,
- PMUX_PINGRP_RESERVED3,
- PMUX_PINGRP_GMB,
- PMUX_PINGRP_GMD,
- PMUX_PINGRP_DDC,
- /* 64: APB_MISC_PP_TRISTATE_REG_C_0 */
- PMUX_PINGRP_LD0,
- PMUX_PINGRP_LD1,
- PMUX_PINGRP_LD2,
- PMUX_PINGRP_LD3,
- PMUX_PINGRP_LD4,
- PMUX_PINGRP_LD5,
- PMUX_PINGRP_LD6,
- PMUX_PINGRP_LD7,
- PMUX_PINGRP_LD8,
- PMUX_PINGRP_LD9,
- PMUX_PINGRP_LD10,
- PMUX_PINGRP_LD11,
- PMUX_PINGRP_LD12,
- PMUX_PINGRP_LD13,
- PMUX_PINGRP_LD14,
- PMUX_PINGRP_LD15,
- PMUX_PINGRP_LD16,
- PMUX_PINGRP_LD17,
- PMUX_PINGRP_LHP0,
- PMUX_PINGRP_LHP1,
- PMUX_PINGRP_LHP2,
- PMUX_PINGRP_LVP0,
- PMUX_PINGRP_LVP1,
- PMUX_PINGRP_HDINT,
- PMUX_PINGRP_LM0,
- PMUX_PINGRP_LM1,
- PMUX_PINGRP_LVS,
- PMUX_PINGRP_LSC0,
- PMUX_PINGRP_LSC1,
- PMUX_PINGRP_LSCK,
- PMUX_PINGRP_LDC,
- PMUX_PINGRP_LCSN,
- /* 96: APB_MISC_PP_TRISTATE_REG_D_0 */
- PMUX_PINGRP_LSPI,
- PMUX_PINGRP_LSDA,
- PMUX_PINGRP_LSDI,
- PMUX_PINGRP_LPW0,
- PMUX_PINGRP_LPW1,
- PMUX_PINGRP_LPW2,
- PMUX_PINGRP_LDI,
- PMUX_PINGRP_LHS,
- PMUX_PINGRP_LPP,
- PMUX_PINGRP_RESERVED4,
- PMUX_PINGRP_KBCD,
- PMUX_PINGRP_GPU7,
- PMUX_PINGRP_DTF,
- PMUX_PINGRP_UDA,
- PMUX_PINGRP_CRTP,
- PMUX_PINGRP_SDB,
- /* these pin groups only have pullup and pull down control */
- PMUX_PINGRP_CK32,
- PMUX_PINGRP_DDRC,
- PMUX_PINGRP_PMCA,
- PMUX_PINGRP_PMCB,
- PMUX_PINGRP_PMCC,
- PMUX_PINGRP_PMCD,
- PMUX_PINGRP_PMCE,
- PMUX_PINGRP_XM2C,
- PMUX_PINGRP_XM2D,
- PMUX_PINGRP_COUNT,
- };
- /*
- * Functions which can be assigned to each of the pin groups. The values here
- * bear no relation to the values programmed into pinmux registers and are
- * purely a convenience. The translation is done through a table search.
- */
- enum pmux_func {
- PMUX_FUNC_DEFAULT,
- PMUX_FUNC_AHB_CLK,
- PMUX_FUNC_APB_CLK,
- PMUX_FUNC_AUDIO_SYNC,
- PMUX_FUNC_CRT,
- PMUX_FUNC_DAP1,
- PMUX_FUNC_DAP2,
- PMUX_FUNC_DAP3,
- PMUX_FUNC_DAP4,
- PMUX_FUNC_DAP5,
- PMUX_FUNC_DISPA,
- PMUX_FUNC_DISPB,
- PMUX_FUNC_EMC_TEST0_DLL,
- PMUX_FUNC_EMC_TEST1_DLL,
- PMUX_FUNC_GMI,
- PMUX_FUNC_GMI_INT,
- PMUX_FUNC_HDMI,
- PMUX_FUNC_I2C,
- PMUX_FUNC_I2C2,
- PMUX_FUNC_I2C3,
- PMUX_FUNC_IDE,
- PMUX_FUNC_KBC,
- PMUX_FUNC_MIO,
- PMUX_FUNC_MIPI_HS,
- PMUX_FUNC_NAND,
- PMUX_FUNC_OSC,
- PMUX_FUNC_OWR,
- PMUX_FUNC_PCIE,
- PMUX_FUNC_PLLA_OUT,
- PMUX_FUNC_PLLC_OUT1,
- PMUX_FUNC_PLLM_OUT1,
- PMUX_FUNC_PLLP_OUT2,
- PMUX_FUNC_PLLP_OUT3,
- PMUX_FUNC_PLLP_OUT4,
- PMUX_FUNC_PWM,
- PMUX_FUNC_PWR_INTR,
- PMUX_FUNC_PWR_ON,
- PMUX_FUNC_RTCK,
- PMUX_FUNC_SDIO1,
- PMUX_FUNC_SDIO2,
- PMUX_FUNC_SDIO3,
- PMUX_FUNC_SDIO4,
- PMUX_FUNC_SFLASH,
- PMUX_FUNC_SPDIF,
- PMUX_FUNC_SPI1,
- PMUX_FUNC_SPI2,
- PMUX_FUNC_SPI2_ALT,
- PMUX_FUNC_SPI3,
- PMUX_FUNC_SPI4,
- PMUX_FUNC_TRACE,
- PMUX_FUNC_TWC,
- PMUX_FUNC_UARTA,
- PMUX_FUNC_UARTB,
- PMUX_FUNC_UARTC,
- PMUX_FUNC_UARTD,
- PMUX_FUNC_UARTE,
- PMUX_FUNC_ULPI,
- PMUX_FUNC_VI,
- PMUX_FUNC_VI_SENSOR_CLK,
- PMUX_FUNC_XIO,
- PMUX_FUNC_RSVD1,
- PMUX_FUNC_RSVD2,
- PMUX_FUNC_RSVD3,
- PMUX_FUNC_RSVD4,
- PMUX_FUNC_COUNT,
- };
- #define TEGRA_PMX_SOC_DRV_GROUP_BASE_REG 0x868
- #include <asm/arch-tegra/pinmux.h>
- #endif /* _TEGRA20_PINMUX_H_ */
|