2 * Table of the DAVINCI register configurations for the PINMUX combinations
4 * Author: Vladimir Barinov, MontaVista Software, Inc. <source@mvista.com>
6 * Based on linux/include/asm-arm/arch-omap/mux.h:
7 * Copyright (C) 2003 - 2005 Nokia Corporation
9 * Written by Tony Lindgren
11 * 2007 (c) MontaVista Software, Inc. This file is licensed under
12 * the terms of the GNU General Public License version 2. This program
13 * is licensed "as is" without any warranty of any kind, whether express
16 * Copyright (C) 2008 Texas Instruments.
19 #ifndef __INC_MACH_MUX_H
20 #define __INC_MACH_MUX_H
22 /* System module registers */
34 const char *mux_reg_name;
35 const unsigned char mux_reg;
36 const unsigned char mask_offset;
37 const unsigned char mask;
38 const unsigned char mode;
42 enum davinci_dm644x_index {
43 /* ATA and HDDIR functions */
83 /* EMAC and MDIO function */
86 /* GPIO3V[0:16] pins */
103 enum davinci_dm646x_index {
115 DM646X_STSOMUX_DISABLE,
116 DM646X_STSIMUX_DISABLE,
117 DM646X_PTSOMUX_DISABLE,
118 DM646X_PTSIMUX_DISABLE,
123 DM646X_PTSOMUX_PARALLEL,
124 DM646X_PTSIMUX_PARALLEL,
125 DM646X_PTSOMUX_SERIAL,
126 DM646X_PTSIMUX_SERIAL,
129 enum davinci_dm355_index {
160 DM355_INT_EDMA_TC0_ERR,
161 DM355_INT_EDMA_TC1_ERR,
163 /* EDMA event muxing */
169 #ifdef CONFIG_DAVINCI_MUX
170 /* setup pin muxing */
171 extern void davinci_mux_init(void);
172 extern int davinci_mux_register(const struct mux_config *pins,
174 extern int davinci_cfg_reg(unsigned long reg_cfg);
176 /* boot loader does it all (no warnings from CONFIG_DAVINCI_MUX_WARNINGS) */
177 static inline void davinci_mux_init(void) {}
178 static inline int davinci_mux_register(const struct mux_config *pins,
179 unsigned long size) { return 0; }
180 static inline int davinci_cfg_reg(unsigned long reg_cfg) { return 0; }
183 #endif /* __INC_MACH_MUX_H */