Lines Matching +full:24 +full:- +full:9

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * linux/arch/arm/mach-omap1/mux.c
7 * Copyright (C) 2003 - 2008 Nokia Corporation
15 #include <linux/soc/ti/omap1-io.h>
27 MUX_CFG_7XX("J7_7XX_KBR1", 12, 25, 0, 24, 1, 0)
31 MUX_CFG_7XX("C2_7XX_KBC0", 13, 9, 0, 8, 1, 0)
35 MUX_CFG_7XX("E3_7XX_KBC4", 13, 25, 0, 24, 1, 0)
38 MUX_CFG_7XX("W16_7XX_USB_PU_EN", 2, 25, 0, 24, 0, 0)
44 MUX_CFG_7XX("MMC_7XX_CMD", 2, 9, 0, 8, 1, 0)
54 MUX_CFG_7XX("SPI_7XX_2", 6, 9, 4, 8, 1, 0)
57 MUX_CFG_7XX("SPI_7XX_5", 8, 25, 0, 24, 0, 0)
58 MUX_CFG_7XX("SPI_7XX_6", 9, 5, 0, 4, 0, 0)
76 MUX_CFG("UART1_TX", 9, 21, 1, 2, 3, 0, NA, 0, 0)
77 MUX_CFG("UART1_RTS", 9, 12, 1, 2, 0, 0, NA, 0, 0)
83 MUX_CFG("UART2_RTS", C, 24, 1, 3, 2, 0, NA, 0, 0)
88 MUX_CFG("UART3_CTS", 5, 12, 2, 0, 24, 0, NA, 0, 0)
90 MUX_CFG("UART3_CLKREQ", 9, 27, 0, 2, 5, 0, NA, 0, 0)
99 MUX_CFG("R18_USB_VBUS", 7, 9, 2, 1, 11, 0, NA, 0, 1)
100 MUX_CFG("R18_1510_USB_GPIO0", 7, 9, 0, 1, 11, 1, NA, 0, 1)
109 MUX_CFG("USB1_SE0", 9, 0, 2, 1, 28, 0, NA, 0, 1)
110 MUX_CFG("W13_1610_USB1_SE0", 9, 0, 4, 1, 28, 0, NA, 0, 1)
111 MUX_CFG("USB1_TXEN", 9, 3, 2, 1, 29, 0, NA, 0, 1)
112 MUX_CFG("USB1_TXD", 9, 24, 1, 2, 4, 0, NA, 0, 1)
115 MUX_CFG("USB1_RCV", A, 9, 1, 2, 9, 0, NA, 0, 1)
123 MUX_CFG("USB2_TXEN", B, 9, 1, 2, 19, 0, NA, 0, 1)
126 MUX_CFG("USB2_SE0", C, 24, 2, 3, 2, 0, NA, 0, 1)
129 /* OMAP-1510 GPIO */
130 MUX_CFG("R18_1510_GPIO0", 7, 9, 0, 1, 11, 1, 0, 0, 1)
132 MUX_CFG("M14_1510_GPIO2", 7, 3, 0, 1, 9, 1, 0, 0, 1)
138 /* OMAP-1710 GPIO */
139 MUX_CFG("R18_1710_GPIO0", 7, 9, 0, 1, 11, 1, 1, 1, 1)
141 MUX_CFG("N21_1710_GPIO14", 6, 9, 0, 1, 1, 1, 1, 1, 1)
142 MUX_CFG("W15_1710_GPIO40", 9, 27, 7, 2, 5, 1, 2, 1, 1)
152 MUX_CFG("V10_1610_MPUIO7", A, 24, 2, 2, 14, 0, 2, 0, 1)
154 MUX_CFG("V10_1610_MPUIO10", A, 24, 1, 2, 14, 0, 2, 0, 1)
157 MUX_CFG("U20_1610_MPUIO14", 9, 6, 6, 0, 30, 0, 0, 0, 1)
162 MUX_CFG("MCBSP2_CLKX", C, 9, 0, 2, 29, 1, NA, 0, 1)
169 MUX_CFG("MCBSP3_CLKX", 9, 3, 1, 1, 29, 0, NA, 0, 1)
175 /* OMAP-1610 MMC2 */
178 MUX_CFG("W15_1610_MMC2_DAT2", 9, 12, 6, 2, 5, 1, 2, 1, 1)
181 MUX_CFG("Y8_1610_MMC2_CMD", B, 24, 6, 2, 24, 1, 2, 1, 1)
185 MUX_CFG("R18_1610_MMC2_CLKIN", 7, 9, 6, 1, 11, 0, 1, 11, 1)
187 /* OMAP-1610 External Trace Interface */
189 MUX_CFG("L15_1610_ETM_PSTAT1", 5, 24, 1, 0, 28, 0, 0, 0, 1)
203 MUX_CFG("AA20_1610_GPIO_41", 9, 9, 7, 1, 31, 0, 1, 1, 1)
205 MUX_CFG("M7_1610_GPIO62", 10, 0, 0, 4, 24, 0, 4, 0, 1)
206 MUX_CFG("V14_16XX_GPIO37", 9, 18, 7, 2, 2, 0, 2, 2, 0)
210 /* OMAP-1610 uWire */
214 MUX_CFG("N14_1610_UWIRE_CS0", 8, 9, 1, 1, 21, 0, 1, 1, 1)
218 /* OMAP-1610 SPI */
223 MUX_CFG("R18_1610_SPIF_DOUT", 7, 9, 3, 1, 11, 0, 1, 0, 1)
224 MUX_CFG("N14_1610_SPIF_CS0", 8, 9, 6, 1, 21, 0, 1, 1, 1)
229 /* OMAP-1610 Flash */
235 MUX_CFG("MMC_DAT1", A, 24, 0, 2, 14, 1, 2, 1, 1)
241 MUX_CFG("P19_1710_MMC_CMDDIR", 6, 24, 6, 0, 0, 0, NA, 0, 1)
244 /* OMAP-1610 USB0 alternate configuration */
245 MUX_CFG("W9_USB0_TXEN", B, 9, 5, 2, 19, 0, 2, 0, 1)
250 MUX_CFG("W5_USB0_SE0", C, 24, 5, 3, 2, 0, 3, 0, 1)
255 MUX_CFG("W9_USB2_TXEN", B, 9, 1, NA, 0, 0, NA, 0, 1)
260 MUX_CFG("W5_USB2_SE0", C, 24, 2, NA, 0, 0, NA, 0, 1)
264 MUX_CFG("V14_16XX_UART1_RX", 9, 18, 0, 2, 2, 0, 2, 2, 1)
265 MUX_CFG("R14_1610_UART1_CTS", 9, 15, 0, 2, 1, 0, 2, 1, 1)
266 MUX_CFG("AA15_1610_UART1_RTS", 9, 12, 1, 2, 0, 0, 2, 0, 1)
271 MUX_CFG("I2C_SCL", 7, 24, 0, NA, 0, 0, NA, 0, 0)
277 MUX_CFG("D19_1610_KBC2", 3, 9, 0, 0, 3, 1, 0, 0, 0)
281 MUX_CFG("F19_1610_KBR1", 3, 27, 0, 0, 9, 1, 0, 1, 0)
282 MUX_CFG("H14_1610_KBR2", 3, 24, 0, 0, 8, 1, 0, 1, 0)
299 MUX_CFG("V10_1610_CF_IREQ", A, 24, 3, 2, 14, 0, 2, 0, 1)
304 MUX_CFG("J15_1610_CAM_LCLK", 4, 24, 0, 0, 18, 1, 0, 0, 0)
309 MUX_CFG("K19_1610_CAM_D3", 5, 9, 0, 0, 23, 1, 0, 0, 0)
310 MUX_CFG("K15_1610_CAM_D2", 5, 12, 0, 0, 24, 1, 0, 0, 0)
314 MUX_CFG("L15_1610_CAM_HS", 5, 24, 0, 0, 28, 1, 0, 0, 0)
321 MUX_CFG("Y12_1610_CCP_CLKP", 8, 18, 6, 1, 24, 1, 1, 0, 0)
322 MUX_CFG("W13_1610_CCP_CLKM", 9, 0, 6, 1, 28, 1, 1, 0, 0)
323 MUX_CFG("W14_1610_CCP_DATAP", 9, 24, 6, 2, 4, 1, 2, 0, 0)
324 MUX_CFG("Y14_1610_CCP_DATAM", 9, 21, 6, 2, 3, 1, 2, 0, 0)
341 if (cfg->mux_reg) { in omap1_cfg_reg()
345 reg_orig = omap_readl(cfg->mux_reg); in omap1_cfg_reg()
348 mask = (0x7 << cfg->mask_offset); in omap1_cfg_reg()
352 tmp2 = (cfg->mask << cfg->mask_offset); in omap1_cfg_reg()
358 omap_writel(reg, cfg->mux_reg); in omap1_cfg_reg()
364 if (cfg->pu_pd_reg && cfg->pull_val) { in omap1_cfg_reg()
366 pu_pd_orig = omap_readl(cfg->pu_pd_reg); in omap1_cfg_reg()
367 mask = 1 << cfg->pull_bit; in omap1_cfg_reg()
369 if (cfg->pu_pd_val) { in omap1_cfg_reg()
380 omap_writel(pu_pd, cfg->pu_pd_reg); in omap1_cfg_reg()
386 if (cfg->pull_reg) { in omap1_cfg_reg()
388 pull_orig = omap_readl(cfg->pull_reg); in omap1_cfg_reg()
389 mask = 1 << cfg->pull_bit; in omap1_cfg_reg()
391 if (cfg->pull_val) { in omap1_cfg_reg()
403 omap_writel(pull, cfg->pull_reg); in omap1_cfg_reg()
409 printk(KERN_WARNING "MUX: initialized %s\n", cfg->name); in omap1_cfg_reg()
414 if (cfg->debug || warn) { in omap1_cfg_reg()
415 printk("MUX: Setting register %s\n", cfg->name); in omap1_cfg_reg()
416 printk(" %s (0x%08x) = 0x%08x -> 0x%08x\n", in omap1_cfg_reg()
417 cfg->mux_reg_name, cfg->mux_reg, reg_orig, reg); in omap1_cfg_reg()
420 if (cfg->pu_pd_reg && cfg->pull_val) { in omap1_cfg_reg()
421 printk(" %s (0x%08x) = 0x%08x -> 0x%08x\n", in omap1_cfg_reg()
422 cfg->pu_pd_name, cfg->pu_pd_reg, in omap1_cfg_reg()
427 if (cfg->pull_reg) in omap1_cfg_reg()
428 printk(" %s (0x%08x) = 0x%08x -> 0x%08x\n", in omap1_cfg_reg()
429 cfg->pull_name, cfg->pull_reg, pull_orig, pull); in omap1_cfg_reg()
434 return warn ? -ETXTBSY : 0; in omap1_cfg_reg()
444 if (!arch_mux_cfg || !arch_mux_cfg->pins || arch_mux_cfg->size == 0 in omap_mux_register()
445 || !arch_mux_cfg->cfg_reg) { in omap_mux_register()
447 return -EINVAL; in omap_mux_register()
466 return -EINVAL; in omap_cfg_reg()
471 return -ENODEV; in omap_cfg_reg()
474 if (index >= mux_cfg->size) { in omap_cfg_reg()
476 index, mux_cfg->size); in omap_cfg_reg()
478 return -ENODEV; in omap_cfg_reg()
481 reg = &mux_cfg->pins[index]; in omap_cfg_reg()
483 if (!mux_cfg->cfg_reg) in omap_cfg_reg()
484 return -ENODEV; in omap_cfg_reg()
486 return mux_cfg->cfg_reg(reg); in omap_cfg_reg()