linux/arch/arm/plat-mxc/include/mach/iomux-mx1.h
<<
>>
Prefs
   1/*
   2* Copyright (C) 2008 by Sascha Hauer <kernel@pengutronix.de>
   3*
   4* This program is free software; you can redistribute it and/or
   5* modify it under the terms of the GNU General Public License
   6* as published by the Free Software Foundation; either version 2
   7* of the License, or (at your option) any later version.
   8* This program is distributed in the hope that it will be useful,
   9* but WITHOUT ANY WARRANTY; without even the implied warranty of
  10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11* GNU General Public License for more details.
  12*
  13* You should have received a copy of the GNU General Public License
  14* along with this program; if not, write to the Free Software
  15* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  16* MA 02110-1301, USA.
  17*/
  18
  19#ifndef _MXC_IOMUX_MX1_H
  20#define _MXC_IOMUX_MX1_H
  21
  22#ifndef GPIO_PORTA
  23#error Please include mach/iomux.h
  24#endif
  25
  26/* FIXME: This list is not completed. The correct directions are
  27* missing on some (many) pins
  28*/
  29
  30
  31/* Primary GPIO pin functions */
  32
  33#define PA0_AIN_SPI2_CLK        (GPIO_PORTA | GPIO_AIN | GPIO_OUT | 0)
  34#define PA0_AF_ETMTRACESYNC     (GPIO_PORTA | GPIO_AF | 0)
  35#define PA1_AOUT_SPI2_RXD       (GPIO_PORTA | GPIO_AOUT | GPIO_IN | 1)
  36#define PA1_PF_TIN              (GPIO_PORTA | GPIO_PF | 1)
  37#define PA2_PF_PWM0             (GPIO_PORTA | GPIO_PF | GPIO_OUT | 2)
  38#define PA3_PF_CSI_MCLK         (GPIO_PORTA | GPIO_PF | 3)
  39#define PA4_PF_CSI_D0           (GPIO_PORTA | GPIO_PF | 4)
  40#define PA5_PF_CSI_D1           (GPIO_PORTA | GPIO_PF | 5)
  41#define PA6_PF_CSI_D2           (GPIO_PORTA | GPIO_PF | 6)
  42#define PA7_PF_CSI_D3           (GPIO_PORTA | GPIO_PF | 7)
  43#define PA8_PF_CSI_D4           (GPIO_PORTA | GPIO_PF | 8)
  44#define PA9_PF_CSI_D5           (GPIO_PORTA | GPIO_PF | 9)
  45#define PA10_PF_CSI_D6          (GPIO_PORTA | GPIO_PF | 10)
  46#define PA11_PF_CSI_D7          (GPIO_PORTA | GPIO_PF | 11)
  47#define PA12_PF_CSI_VSYNC       (GPIO_PORTA | GPIO_PF | 12)
  48#define PA13_PF_CSI_HSYNC       (GPIO_PORTA | GPIO_PF | 13)
  49#define PA14_PF_CSI_PIXCLK      (GPIO_PORTA | GPIO_PF | 14)
  50#define PA15_PF_I2C_SDA         (GPIO_PORTA | GPIO_PF | GPIO_OUT | 15)
  51#define PA16_PF_I2C_SCL         (GPIO_PORTA | GPIO_PF | GPIO_OUT | 16)
  52#define PA17_AF_ETMTRACEPKT4    (GPIO_PORTA | GPIO_AF | 17)
  53#define PA17_AIN_SPI2_SS        (GPIO_PORTA | GPIO_AIN | GPIO_OUT | 17)
  54#define PA18_AF_ETMTRACEPKT5    (GPIO_PORTA | GPIO_AF | 18)
  55#define PA19_AF_ETMTRACEPKT6    (GPIO_PORTA | GPIO_AF | 19)
  56#define PA20_AF_ETMTRACEPKT7    (GPIO_PORTA | GPIO_AF | 20)
  57#define PA21_PF_A0              (GPIO_PORTA | GPIO_PF | 21)
  58#define PA22_PF_CS4             (GPIO_PORTA | GPIO_PF | 22)
  59#define PA23_PF_CS5             (GPIO_PORTA | GPIO_PF | 23)
  60#define PA24_PF_A16             (GPIO_PORTA | GPIO_PF | 24)
  61#define PA24_AF_ETMTRACEPKT0    (GPIO_PORTA | GPIO_AF | 24)
  62#define PA25_PF_A17             (GPIO_PORTA | GPIO_PF | 25)
  63#define PA25_AF_ETMTRACEPKT1    (GPIO_PORTA | GPIO_AF | 25)
  64#define PA26_PF_A18             (GPIO_PORTA | GPIO_PF | 26)
  65#define PA26_AF_ETMTRACEPKT2    (GPIO_PORTA | GPIO_AF | 26)
  66#define PA27_PF_A19             (GPIO_PORTA | GPIO_PF | 27)
  67#define PA27_AF_ETMTRACEPKT3    (GPIO_PORTA | GPIO_AF | 27)
  68#define PA28_PF_A20             (GPIO_PORTA | GPIO_PF | 28)
  69#define PA28_AF_ETMPIPESTAT0    (GPIO_PORTA | GPIO_AF | 28)
  70#define PA29_PF_A21             (GPIO_PORTA | GPIO_PF | 29)
  71#define PA29_AF_ETMPIPESTAT1    (GPIO_PORTA | GPIO_AF | 29)
  72#define PA30_PF_A22             (GPIO_PORTA | GPIO_PF | 30)
  73#define PA30_AF_ETMPIPESTAT2    (GPIO_PORTA | GPIO_AF | 30)
  74#define PA31_PF_A23             (GPIO_PORTA | GPIO_PF | 31)
  75#define PA31_AF_ETMTRACECLK     (GPIO_PORTA | GPIO_AF | 31)
  76#define PB8_PF_SD_DAT0          (GPIO_PORTB | GPIO_PF | GPIO_PUEN | 8)
  77#define PB8_AF_MS_PIO           (GPIO_PORTB | GPIO_AF | 8)
  78#define PB9_PF_SD_DAT1          (GPIO_PORTB | GPIO_PF | GPIO_PUEN | 9)
  79#define PB9_AF_MS_PI1           (GPIO_PORTB | GPIO_AF | 9)
  80#define PB10_PF_SD_DAT2         (GPIO_PORTB | GPIO_PF | GPIO_PUEN | 10)
  81#define PB10_AF_MS_SCLKI        (GPIO_PORTB | GPIO_AF | 10)
  82#define PB11_PF_SD_DAT3         (GPIO_PORTB | GPIO_PF | 11)
  83#define PB11_AF_MS_SDIO         (GPIO_PORTB | GPIO_AF | 11)
  84#define PB12_PF_SD_CLK          (GPIO_PORTB | GPIO_PF | 12)
  85#define PB12_AF_MS_SCLK0        (GPIO_PORTB | GPIO_AF | 12)
  86#define PB13_PF_SD_CMD          (GPIO_PORTB | GPIO_PF | GPIO_PUEN | 13)
  87#define PB13_AF_MS_BS           (GPIO_PORTB | GPIO_AF | 13)
  88#define PB14_AF_SSI_RXFS        (GPIO_PORTB | GPIO_AF | 14)
  89#define PB15_AF_SSI_RXCLK       (GPIO_PORTB | GPIO_AF | 15)
  90#define PB16_AF_SSI_RXDAT       (GPIO_PORTB | GPIO_AF | GPIO_IN | 16)
  91#define PB17_AF_SSI_TXDAT       (GPIO_PORTB | GPIO_AF | GPIO_OUT | 17)
  92#define PB18_AF_SSI_TXFS        (GPIO_PORTB | GPIO_AF | 18)
  93#define PB19_AF_SSI_TXCLK       (GPIO_PORTB | GPIO_AF | 19)
  94#define PB20_PF_USBD_AFE        (GPIO_PORTB | GPIO_PF | 20)
  95#define PB21_PF_USBD_OE         (GPIO_PORTB | GPIO_PF | 21)
  96#define PB22_PF_USBD_RCV        (GPIO_PORTB | GPIO_PF | 22)
  97#define PB23_PF_USBD_SUSPND     (GPIO_PORTB | GPIO_PF | 23)
  98#define PB24_PF_USBD_VP         (GPIO_PORTB | GPIO_PF | 24)
  99#define PB25_PF_USBD_VM         (GPIO_PORTB | GPIO_PF | 25)
 100#define PB26_PF_USBD_VPO        (GPIO_PORTB | GPIO_PF | 26)
 101#define PB27_PF_USBD_VMO        (GPIO_PORTB | GPIO_PF | 27)
 102#define PB28_PF_UART2_CTS       (GPIO_PORTB | GPIO_PF | GPIO_OUT | 28)
 103#define PB29_PF_UART2_RTS       (GPIO_PORTB | GPIO_PF | GPIO_IN | 29)
 104#define PB30_PF_UART2_TXD       (GPIO_PORTB | GPIO_PF | GPIO_OUT | 30)
 105#define PB31_PF_UART2_RXD       (GPIO_PORTB | GPIO_PF | GPIO_IN | 31)
 106#define PC3_PF_SSI_RXFS         (GPIO_PORTC | GPIO_PF | 3)
 107#define PC4_PF_SSI_RXCLK        (GPIO_PORTC | GPIO_PF | 4)
 108#define PC5_PF_SSI_RXDAT        (GPIO_PORTC | GPIO_PF | GPIO_IN | 5)
 109#define PC6_PF_SSI_TXDAT        (GPIO_PORTC | GPIO_PF | GPIO_OUT | 6)
 110#define PC7_PF_SSI_TXFS         (GPIO_PORTC | GPIO_PF | 7)
 111#define PC8_PF_SSI_TXCLK        (GPIO_PORTC | GPIO_PF | 8)
 112#define PC9_PF_UART1_CTS        (GPIO_PORTC | GPIO_PF | GPIO_OUT | 9)
 113#define PC10_PF_UART1_RTS       (GPIO_PORTC | GPIO_PF | GPIO_IN | 10)
 114#define PC11_PF_UART1_TXD       (GPIO_PORTC | GPIO_PF | GPIO_OUT | 11)
 115#define PC12_PF_UART1_RXD       (GPIO_PORTC | GPIO_PF | GPIO_IN | 12)
 116#define PC13_PF_SPI1_SPI_RDY    (GPIO_PORTC | GPIO_PF | 13)
 117#define PC14_PF_SPI1_SCLK       (GPIO_PORTC | GPIO_PF | 14)
 118#define PC15_PF_SPI1_SS         (GPIO_PORTC | GPIO_PF | 15)
 119#define PC16_PF_SPI1_MISO       (GPIO_PORTC | GPIO_PF | 16)
 120#define PC17_PF_SPI1_MOSI       (GPIO_PORTC | GPIO_PF | 17)
 121#define PC24_BIN_UART3_RI       (GPIO_PORTC | GPIO_BIN | GPIO_OUT | 24)
 122#define PC25_BIN_UART3_DSR      (GPIO_PORTC | GPIO_BIN | GPIO_OUT | 25)
 123#define PC26_AOUT_UART3_DTR     (GPIO_PORTC | GPIO_AOUT | GPIO_IN | 26)
 124#define PC27_BIN_UART3_DCD      (GPIO_PORTC | GPIO_BIN | GPIO_OUT | 27)
 125#define PC28_BIN_UART3_CTS      (GPIO_PORTC | GPIO_BIN | GPIO_OUT | 28)
 126#define PC29_AOUT_UART3_RTS     (GPIO_PORTC | GPIO_AOUT | GPIO_IN | 29)
 127#define PC30_BIN_UART3_TX       (GPIO_PORTC | GPIO_BIN | 30)
 128#define PC31_AOUT_UART3_RX      (GPIO_PORTC | GPIO_AOUT | GPIO_IN | 31)
 129#define PD6_PF_LSCLK            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 6)
 130#define PD7_PF_REV              (GPIO_PORTD | GPIO_PF | 7)
 131#define PD7_AF_UART2_DTR        (GPIO_PORTD | GPIO_AF | GPIO_IN | 7)
 132#define PD7_AIN_SPI2_SCLK       (GPIO_PORTD | GPIO_AIN | 7)
 133#define PD8_PF_CLS              (GPIO_PORTD | GPIO_PF | 8)
 134#define PD8_AF_UART2_DCD        (GPIO_PORTD | GPIO_AF | GPIO_OUT | 8)
 135#define PD8_AIN_SPI2_SS         (GPIO_PORTD | GPIO_AIN | 8)
 136#define PD9_PF_PS               (GPIO_PORTD | GPIO_PF | 9)
 137#define PD9_AF_UART2_RI         (GPIO_PORTD | GPIO_AF | GPIO_OUT | 9)
 138#define PD9_AOUT_SPI2_RXD       (GPIO_PORTD | GPIO_AOUT | GPIO_IN | 9)
 139#define PD10_PF_SPL_SPR         (GPIO_PORTD | GPIO_PF | GPIO_OUT | 10)
 140#define PD10_AF_UART2_DSR       (GPIO_PORTD | GPIO_AF | GPIO_OUT | 10)
 141#define PD10_AIN_SPI2_TXD       (GPIO_PORTD | GPIO_AIN | GPIO_OUT | 10)
 142#define PD11_PF_CONTRAST        (GPIO_PORTD | GPIO_PF | GPIO_OUT | 11)
 143#define PD12_PF_ACD_OE          (GPIO_PORTD | GPIO_PF | GPIO_OUT | 12)
 144#define PD13_PF_LP_HSYNC        (GPIO_PORTD | GPIO_PF | GPIO_OUT | 13)
 145#define PD14_PF_FLM_VSYNC       (GPIO_PORTD | GPIO_PF | GPIO_OUT | 14)
 146#define PD15_PF_LD0             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 15)
 147#define PD16_PF_LD1             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 16)
 148#define PD17_PF_LD2             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 17)
 149#define PD18_PF_LD3             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 18)
 150#define PD19_PF_LD4             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 19)
 151#define PD20_PF_LD5             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 20)
 152#define PD21_PF_LD6             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 21)
 153#define PD22_PF_LD7             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 22)
 154#define PD23_PF_LD8             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 23)
 155#define PD24_PF_LD9             (GPIO_PORTD | GPIO_PF | GPIO_OUT | 24)
 156#define PD25_PF_LD10            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 25)
 157#define PD26_PF_LD11            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 26)
 158#define PD27_PF_LD12            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 27)
 159#define PD28_PF_LD13            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 28)
 160#define PD29_PF_LD14            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 29)
 161#define PD30_PF_LD15            (GPIO_PORTD | GPIO_PF | GPIO_OUT | 30)
 162#define PD31_PF_TMR2OUT         (GPIO_PORTD | GPIO_PF | 31)
 163#define PD31_BIN_SPI2_TXD       (GPIO_PORTD | GPIO_BIN | 31)
 164
 165
 166#endif
 167