linux/arch/sh/include/cpu-sh4/cpu/sh7786.h
<<
>>
Prefs
   1/*
   2 * SH7786 Pinmux
   3 *
   4 * Copyright (C) 2008, 2009  Renesas Solutions Corp.
   5 * Kuninori Morimoto <morimoto.kuninori@renesas.com>
   6 *
   7 *  Based on sh7785.h
   8 *
   9 * This file is subject to the terms and conditions of the GNU General Public
  10 * License.  See the file "COPYING" in the main directory of this archive
  11 * for more details.
  12 */
  13
  14#ifndef __CPU_SH7786_H__
  15#define __CPU_SH7786_H__
  16
  17#include <linux/io.h>
  18
  19enum {
  20        /* PA */
  21        GPIO_PA7, GPIO_PA6, GPIO_PA5, GPIO_PA4,
  22        GPIO_PA3, GPIO_PA2, GPIO_PA1, GPIO_PA0,
  23
  24        /* PB */
  25        GPIO_PB7, GPIO_PB6, GPIO_PB5, GPIO_PB4,
  26        GPIO_PB3, GPIO_PB2, GPIO_PB1, GPIO_PB0,
  27
  28        /* PC */
  29        GPIO_PC7, GPIO_PC6, GPIO_PC5, GPIO_PC4,
  30        GPIO_PC3, GPIO_PC2, GPIO_PC1, GPIO_PC0,
  31
  32        /* PD */
  33        GPIO_PD7, GPIO_PD6, GPIO_PD5, GPIO_PD4,
  34        GPIO_PD3, GPIO_PD2, GPIO_PD1, GPIO_PD0,
  35
  36        /* PE */
  37        GPIO_PE7, GPIO_PE6,
  38
  39        /* PF */
  40        GPIO_PF7, GPIO_PF6, GPIO_PF5, GPIO_PF4,
  41        GPIO_PF3, GPIO_PF2, GPIO_PF1, GPIO_PF0,
  42
  43        /* PG */
  44        GPIO_PG7, GPIO_PG6, GPIO_PG5,
  45
  46        /* PH */
  47        GPIO_PH7, GPIO_PH6, GPIO_PH5, GPIO_PH4,
  48        GPIO_PH3, GPIO_PH2, GPIO_PH1, GPIO_PH0,
  49
  50        /* PJ */
  51        GPIO_PJ7, GPIO_PJ6, GPIO_PJ5, GPIO_PJ4,
  52        GPIO_PJ3, GPIO_PJ2, GPIO_PJ1,
  53
  54        /* DU */
  55        GPIO_FN_DCLKIN, GPIO_FN_DCLKOUT, GPIO_FN_ODDF,
  56        GPIO_FN_VSYNC, GPIO_FN_HSYNC, GPIO_FN_CDE, GPIO_FN_DISP,
  57        GPIO_FN_DR0, GPIO_FN_DG0, GPIO_FN_DB0,
  58        GPIO_FN_DR1, GPIO_FN_DG1, GPIO_FN_DB1,
  59        GPIO_FN_DR2, GPIO_FN_DG2, GPIO_FN_DB2,
  60        GPIO_FN_DR3, GPIO_FN_DG3, GPIO_FN_DB3,
  61        GPIO_FN_DR4, GPIO_FN_DG4, GPIO_FN_DB4,
  62        GPIO_FN_DR5, GPIO_FN_DG5, GPIO_FN_DB5,
  63
  64        /* Eth */
  65        GPIO_FN_ETH_MAGIC, GPIO_FN_ETH_LINK, GPIO_FN_ETH_TX_ER,
  66        GPIO_FN_ETH_TX_EN, GPIO_FN_ETH_MDIO, GPIO_FN_ETH_RX_CLK,
  67        GPIO_FN_ETH_MDC, GPIO_FN_ETH_COL, GPIO_FN_ETH_TX_CLK,
  68        GPIO_FN_ETH_CRS, GPIO_FN_ETH_RX_DV, GPIO_FN_ETH_RX_ER,
  69        GPIO_FN_ETH_TXD3, GPIO_FN_ETH_TXD2, GPIO_FN_ETH_TXD1, GPIO_FN_ETH_TXD0,
  70        GPIO_FN_ETH_RXD3, GPIO_FN_ETH_RXD2, GPIO_FN_ETH_RXD1, GPIO_FN_ETH_RXD0,
  71
  72        /* HSPI */
  73        GPIO_FN_HSPI_CLK, GPIO_FN_HSPI_CS, GPIO_FN_HSPI_RX, GPIO_FN_HSPI_TX,
  74
  75        /* SCIF0 */
  76        GPIO_FN_SCIF0_CTS, GPIO_FN_SCIF0_RTS, GPIO_FN_SCIF0_SCK,
  77        GPIO_FN_SCIF0_RXD, GPIO_FN_SCIF0_TXD,
  78
  79        /* SCIF1 */
  80        GPIO_FN_SCIF1_SCK, GPIO_FN_SCIF1_RXD, GPIO_FN_SCIF1_TXD,
  81
  82        /* SCIF3 */
  83        GPIO_FN_SCIF3_SCK, GPIO_FN_SCIF3_RXD, GPIO_FN_SCIF3_TXD,
  84
  85        /* SCIF4 */
  86        GPIO_FN_SCIF4_SCK, GPIO_FN_SCIF4_RXD, GPIO_FN_SCIF4_TXD,
  87
  88        /* SCIF5 */
  89        GPIO_FN_SCIF5_SCK, GPIO_FN_SCIF5_RXD, GPIO_FN_SCIF5_TXD,
  90
  91        /* LBSC */
  92        GPIO_FN_BREQ, GPIO_FN_IOIS16, GPIO_FN_CE2B, GPIO_FN_CE2A, GPIO_FN_BACK,
  93
  94        /* FLCTL */
  95        GPIO_FN_FALE, GPIO_FN_FRB, GPIO_FN_FSTATUS,
  96        GPIO_FN_FSE, GPIO_FN_FCLE,
  97
  98        /* DMAC */
  99        GPIO_FN_DACK0, GPIO_FN_DREQ0, GPIO_FN_DRAK0,
 100        GPIO_FN_DACK1, GPIO_FN_DREQ1, GPIO_FN_DRAK1,
 101        GPIO_FN_DACK2, GPIO_FN_DREQ2, GPIO_FN_DRAK2,
 102        GPIO_FN_DACK3, GPIO_FN_DREQ3, GPIO_FN_DRAK3,
 103
 104        /* USB */
 105        GPIO_FN_USB_OVC0, GPIO_FN_USB_PENC0,
 106        GPIO_FN_USB_OVC1, GPIO_FN_USB_PENC1,
 107
 108        /* HAC */
 109        GPIO_FN_HAC_RES,
 110        GPIO_FN_HAC0_SDOUT, GPIO_FN_HAC0_SDIN,
 111        GPIO_FN_HAC0_SYNC, GPIO_FN_HAC0_BITCLK,
 112        GPIO_FN_HAC1_SDOUT, GPIO_FN_HAC1_SDIN,
 113        GPIO_FN_HAC1_SYNC, GPIO_FN_HAC1_BITCLK,
 114
 115        /* SSI */
 116        GPIO_FN_SSI0_SDATA, GPIO_FN_SSI0_SCK, GPIO_FN_SSI0_WS, GPIO_FN_SSI0_CLK,
 117        GPIO_FN_SSI1_SDATA, GPIO_FN_SSI1_SCK, GPIO_FN_SSI1_WS, GPIO_FN_SSI1_CLK,
 118        GPIO_FN_SSI2_SDATA, GPIO_FN_SSI2_SCK, GPIO_FN_SSI2_WS,
 119        GPIO_FN_SSI3_SDATA, GPIO_FN_SSI3_SCK, GPIO_FN_SSI3_WS,
 120
 121        /* SDIF1 */
 122        GPIO_FN_SDIF1CMD, GPIO_FN_SDIF1CD, GPIO_FN_SDIF1WP, GPIO_FN_SDIF1CLK,
 123        GPIO_FN_SDIF1D3, GPIO_FN_SDIF1D2, GPIO_FN_SDIF1D1, GPIO_FN_SDIF1D0,
 124
 125        /* SDIF0 */
 126        GPIO_FN_SDIF0CMD, GPIO_FN_SDIF0CD, GPIO_FN_SDIF0WP, GPIO_FN_SDIF0CLK,
 127        GPIO_FN_SDIF0D3, GPIO_FN_SDIF0D2, GPIO_FN_SDIF0D1, GPIO_FN_SDIF0D0,
 128
 129        /* TMU */
 130        GPIO_FN_TCLK,
 131
 132        /* INTC */
 133        GPIO_FN_IRL7, GPIO_FN_IRL6, GPIO_FN_IRL5, GPIO_FN_IRL4,
 134};
 135
 136static inline u32 sh7786_mm_sel(void)
 137{
 138        return __raw_readl(0xFC400020) & 0x7;
 139}
 140
 141#endif /* __CPU_SH7786_H__ */
 142