cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

sh7786.h (3687B)


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