pinctrl-spear3xx.h (3368B)
1/* 2 * Header file for the ST Microelectronics SPEAr3xx pinmux 3 * 4 * Copyright (C) 2012 ST Microelectronics 5 * Viresh Kumar <vireshk@kernel.org> 6 * 7 * This file is licensed under the terms of the GNU General Public 8 * License version 2. This program is licensed "as is" without any 9 * warranty of any kind, whether express or implied. 10 */ 11 12#ifndef __PINMUX_SPEAR3XX_H__ 13#define __PINMUX_SPEAR3XX_H__ 14 15#include "pinctrl-spear.h" 16 17/* pad mux declarations */ 18#define PMX_PWM_MASK (1 << 16) 19#define PMX_FIRDA_MASK (1 << 14) 20#define PMX_I2C_MASK (1 << 13) 21#define PMX_SSP_CS_MASK (1 << 12) 22#define PMX_SSP_MASK (1 << 11) 23#define PMX_MII_MASK (1 << 10) 24#define PMX_GPIO_PIN0_MASK (1 << 9) 25#define PMX_GPIO_PIN1_MASK (1 << 8) 26#define PMX_GPIO_PIN2_MASK (1 << 7) 27#define PMX_GPIO_PIN3_MASK (1 << 6) 28#define PMX_GPIO_PIN4_MASK (1 << 5) 29#define PMX_GPIO_PIN5_MASK (1 << 4) 30#define PMX_UART0_MODEM_MASK (1 << 3) 31#define PMX_UART0_MASK (1 << 2) 32#define PMX_TIMER_2_3_MASK (1 << 1) 33#define PMX_TIMER_0_1_MASK (1 << 0) 34 35extern struct spear_pingroup spear3xx_firda_pingroup; 36extern struct spear_pingroup spear3xx_gpio0_pin0_pingroup; 37extern struct spear_pingroup spear3xx_gpio0_pin1_pingroup; 38extern struct spear_pingroup spear3xx_gpio0_pin2_pingroup; 39extern struct spear_pingroup spear3xx_gpio0_pin3_pingroup; 40extern struct spear_pingroup spear3xx_gpio0_pin4_pingroup; 41extern struct spear_pingroup spear3xx_gpio0_pin5_pingroup; 42extern struct spear_pingroup spear3xx_i2c_pingroup; 43extern struct spear_pingroup spear3xx_mii_pingroup; 44extern struct spear_pingroup spear3xx_ssp_cs_pingroup; 45extern struct spear_pingroup spear3xx_ssp_pingroup; 46extern struct spear_pingroup spear3xx_timer_0_1_pingroup; 47extern struct spear_pingroup spear3xx_timer_2_3_pingroup; 48extern struct spear_pingroup spear3xx_uart0_ext_pingroup; 49extern struct spear_pingroup spear3xx_uart0_pingroup; 50 51#define SPEAR3XX_COMMON_PINGROUPS \ 52 &spear3xx_firda_pingroup, \ 53 &spear3xx_gpio0_pin0_pingroup, \ 54 &spear3xx_gpio0_pin1_pingroup, \ 55 &spear3xx_gpio0_pin2_pingroup, \ 56 &spear3xx_gpio0_pin3_pingroup, \ 57 &spear3xx_gpio0_pin4_pingroup, \ 58 &spear3xx_gpio0_pin5_pingroup, \ 59 &spear3xx_i2c_pingroup, \ 60 &spear3xx_mii_pingroup, \ 61 &spear3xx_ssp_cs_pingroup, \ 62 &spear3xx_ssp_pingroup, \ 63 &spear3xx_timer_0_1_pingroup, \ 64 &spear3xx_timer_2_3_pingroup, \ 65 &spear3xx_uart0_ext_pingroup, \ 66 &spear3xx_uart0_pingroup 67 68extern struct spear_function spear3xx_firda_function; 69extern struct spear_function spear3xx_gpio0_function; 70extern struct spear_function spear3xx_i2c_function; 71extern struct spear_function spear3xx_mii_function; 72extern struct spear_function spear3xx_ssp_cs_function; 73extern struct spear_function spear3xx_ssp_function; 74extern struct spear_function spear3xx_timer_0_1_function; 75extern struct spear_function spear3xx_timer_2_3_function; 76extern struct spear_function spear3xx_uart0_ext_function; 77extern struct spear_function spear3xx_uart0_function; 78 79#define SPEAR3XX_COMMON_FUNCTIONS \ 80 &spear3xx_firda_function, \ 81 &spear3xx_gpio0_function, \ 82 &spear3xx_i2c_function, \ 83 &spear3xx_mii_function, \ 84 &spear3xx_ssp_cs_function, \ 85 &spear3xx_ssp_function, \ 86 &spear3xx_timer_0_1_function, \ 87 &spear3xx_timer_2_3_function, \ 88 &spear3xx_uart0_ext_function, \ 89 &spear3xx_uart0_function 90 91extern struct spear_pinctrl_machdata spear3xx_machdata; 92 93#endif /* __PINMUX_SPEAR3XX_H__ */