162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Pin-multiplex helper macros for TI DaVinci family devices 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Author: Vladimir Barinov, MontaVista Software, Inc. <source@mvista.com> 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * 2007 (c) MontaVista Software, Inc. 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci * Copyright (C) 2008 Texas Instruments. 1062306a36Sopenharmony_ci */ 1162306a36Sopenharmony_ci#ifndef _MACH_DAVINCI_MUX_H_ 1262306a36Sopenharmony_ci#define _MACH_DAVINCI_MUX_H_ 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_cistruct mux_config { 1562306a36Sopenharmony_ci const char *name; 1662306a36Sopenharmony_ci const char *mux_reg_name; 1762306a36Sopenharmony_ci const unsigned char mux_reg; 1862306a36Sopenharmony_ci const unsigned char mask_offset; 1962306a36Sopenharmony_ci const unsigned char mask; 2062306a36Sopenharmony_ci const unsigned char mode; 2162306a36Sopenharmony_ci bool debug; 2262306a36Sopenharmony_ci}; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_cienum da830_index { 2562306a36Sopenharmony_ci DA830_GPIO7_14, 2662306a36Sopenharmony_ci DA830_RTCK, 2762306a36Sopenharmony_ci DA830_GPIO7_15, 2862306a36Sopenharmony_ci DA830_EMU_0, 2962306a36Sopenharmony_ci DA830_EMB_SDCKE, 3062306a36Sopenharmony_ci DA830_EMB_CLK_GLUE, 3162306a36Sopenharmony_ci DA830_EMB_CLK, 3262306a36Sopenharmony_ci DA830_NEMB_CS_0, 3362306a36Sopenharmony_ci DA830_NEMB_CAS, 3462306a36Sopenharmony_ci DA830_NEMB_RAS, 3562306a36Sopenharmony_ci DA830_NEMB_WE, 3662306a36Sopenharmony_ci DA830_EMB_BA_1, 3762306a36Sopenharmony_ci DA830_EMB_BA_0, 3862306a36Sopenharmony_ci DA830_EMB_A_0, 3962306a36Sopenharmony_ci DA830_EMB_A_1, 4062306a36Sopenharmony_ci DA830_EMB_A_2, 4162306a36Sopenharmony_ci DA830_EMB_A_3, 4262306a36Sopenharmony_ci DA830_EMB_A_4, 4362306a36Sopenharmony_ci DA830_EMB_A_5, 4462306a36Sopenharmony_ci DA830_GPIO7_0, 4562306a36Sopenharmony_ci DA830_GPIO7_1, 4662306a36Sopenharmony_ci DA830_GPIO7_2, 4762306a36Sopenharmony_ci DA830_GPIO7_3, 4862306a36Sopenharmony_ci DA830_GPIO7_4, 4962306a36Sopenharmony_ci DA830_GPIO7_5, 5062306a36Sopenharmony_ci DA830_GPIO7_6, 5162306a36Sopenharmony_ci DA830_GPIO7_7, 5262306a36Sopenharmony_ci DA830_EMB_A_6, 5362306a36Sopenharmony_ci DA830_EMB_A_7, 5462306a36Sopenharmony_ci DA830_EMB_A_8, 5562306a36Sopenharmony_ci DA830_EMB_A_9, 5662306a36Sopenharmony_ci DA830_EMB_A_10, 5762306a36Sopenharmony_ci DA830_EMB_A_11, 5862306a36Sopenharmony_ci DA830_EMB_A_12, 5962306a36Sopenharmony_ci DA830_EMB_D_31, 6062306a36Sopenharmony_ci DA830_GPIO7_8, 6162306a36Sopenharmony_ci DA830_GPIO7_9, 6262306a36Sopenharmony_ci DA830_GPIO7_10, 6362306a36Sopenharmony_ci DA830_GPIO7_11, 6462306a36Sopenharmony_ci DA830_GPIO7_12, 6562306a36Sopenharmony_ci DA830_GPIO7_13, 6662306a36Sopenharmony_ci DA830_GPIO3_13, 6762306a36Sopenharmony_ci DA830_EMB_D_30, 6862306a36Sopenharmony_ci DA830_EMB_D_29, 6962306a36Sopenharmony_ci DA830_EMB_D_28, 7062306a36Sopenharmony_ci DA830_EMB_D_27, 7162306a36Sopenharmony_ci DA830_EMB_D_26, 7262306a36Sopenharmony_ci DA830_EMB_D_25, 7362306a36Sopenharmony_ci DA830_EMB_D_24, 7462306a36Sopenharmony_ci DA830_EMB_D_23, 7562306a36Sopenharmony_ci DA830_EMB_D_22, 7662306a36Sopenharmony_ci DA830_EMB_D_21, 7762306a36Sopenharmony_ci DA830_EMB_D_20, 7862306a36Sopenharmony_ci DA830_EMB_D_19, 7962306a36Sopenharmony_ci DA830_EMB_D_18, 8062306a36Sopenharmony_ci DA830_EMB_D_17, 8162306a36Sopenharmony_ci DA830_EMB_D_16, 8262306a36Sopenharmony_ci DA830_NEMB_WE_DQM_3, 8362306a36Sopenharmony_ci DA830_NEMB_WE_DQM_2, 8462306a36Sopenharmony_ci DA830_EMB_D_0, 8562306a36Sopenharmony_ci DA830_EMB_D_1, 8662306a36Sopenharmony_ci DA830_EMB_D_2, 8762306a36Sopenharmony_ci DA830_EMB_D_3, 8862306a36Sopenharmony_ci DA830_EMB_D_4, 8962306a36Sopenharmony_ci DA830_EMB_D_5, 9062306a36Sopenharmony_ci DA830_EMB_D_6, 9162306a36Sopenharmony_ci DA830_GPIO6_0, 9262306a36Sopenharmony_ci DA830_GPIO6_1, 9362306a36Sopenharmony_ci DA830_GPIO6_2, 9462306a36Sopenharmony_ci DA830_GPIO6_3, 9562306a36Sopenharmony_ci DA830_GPIO6_4, 9662306a36Sopenharmony_ci DA830_GPIO6_5, 9762306a36Sopenharmony_ci DA830_GPIO6_6, 9862306a36Sopenharmony_ci DA830_EMB_D_7, 9962306a36Sopenharmony_ci DA830_EMB_D_8, 10062306a36Sopenharmony_ci DA830_EMB_D_9, 10162306a36Sopenharmony_ci DA830_EMB_D_10, 10262306a36Sopenharmony_ci DA830_EMB_D_11, 10362306a36Sopenharmony_ci DA830_EMB_D_12, 10462306a36Sopenharmony_ci DA830_EMB_D_13, 10562306a36Sopenharmony_ci DA830_EMB_D_14, 10662306a36Sopenharmony_ci DA830_GPIO6_7, 10762306a36Sopenharmony_ci DA830_GPIO6_8, 10862306a36Sopenharmony_ci DA830_GPIO6_9, 10962306a36Sopenharmony_ci DA830_GPIO6_10, 11062306a36Sopenharmony_ci DA830_GPIO6_11, 11162306a36Sopenharmony_ci DA830_GPIO6_12, 11262306a36Sopenharmony_ci DA830_GPIO6_13, 11362306a36Sopenharmony_ci DA830_GPIO6_14, 11462306a36Sopenharmony_ci DA830_EMB_D_15, 11562306a36Sopenharmony_ci DA830_NEMB_WE_DQM_1, 11662306a36Sopenharmony_ci DA830_NEMB_WE_DQM_0, 11762306a36Sopenharmony_ci DA830_SPI0_SOMI_0, 11862306a36Sopenharmony_ci DA830_SPI0_SIMO_0, 11962306a36Sopenharmony_ci DA830_SPI0_CLK, 12062306a36Sopenharmony_ci DA830_NSPI0_ENA, 12162306a36Sopenharmony_ci DA830_NSPI0_SCS_0, 12262306a36Sopenharmony_ci DA830_EQEP0I, 12362306a36Sopenharmony_ci DA830_EQEP0S, 12462306a36Sopenharmony_ci DA830_EQEP1I, 12562306a36Sopenharmony_ci DA830_NUART0_CTS, 12662306a36Sopenharmony_ci DA830_NUART0_RTS, 12762306a36Sopenharmony_ci DA830_EQEP0A, 12862306a36Sopenharmony_ci DA830_EQEP0B, 12962306a36Sopenharmony_ci DA830_GPIO6_15, 13062306a36Sopenharmony_ci DA830_GPIO5_14, 13162306a36Sopenharmony_ci DA830_GPIO5_15, 13262306a36Sopenharmony_ci DA830_GPIO5_0, 13362306a36Sopenharmony_ci DA830_GPIO5_1, 13462306a36Sopenharmony_ci DA830_GPIO5_2, 13562306a36Sopenharmony_ci DA830_GPIO5_3, 13662306a36Sopenharmony_ci DA830_GPIO5_4, 13762306a36Sopenharmony_ci DA830_SPI1_SOMI_0, 13862306a36Sopenharmony_ci DA830_SPI1_SIMO_0, 13962306a36Sopenharmony_ci DA830_SPI1_CLK, 14062306a36Sopenharmony_ci DA830_UART0_RXD, 14162306a36Sopenharmony_ci DA830_UART0_TXD, 14262306a36Sopenharmony_ci DA830_AXR1_10, 14362306a36Sopenharmony_ci DA830_AXR1_11, 14462306a36Sopenharmony_ci DA830_NSPI1_ENA, 14562306a36Sopenharmony_ci DA830_I2C1_SCL, 14662306a36Sopenharmony_ci DA830_I2C1_SDA, 14762306a36Sopenharmony_ci DA830_EQEP1S, 14862306a36Sopenharmony_ci DA830_I2C0_SDA, 14962306a36Sopenharmony_ci DA830_I2C0_SCL, 15062306a36Sopenharmony_ci DA830_UART2_RXD, 15162306a36Sopenharmony_ci DA830_TM64P0_IN12, 15262306a36Sopenharmony_ci DA830_TM64P0_OUT12, 15362306a36Sopenharmony_ci DA830_GPIO5_5, 15462306a36Sopenharmony_ci DA830_GPIO5_6, 15562306a36Sopenharmony_ci DA830_GPIO5_7, 15662306a36Sopenharmony_ci DA830_GPIO5_8, 15762306a36Sopenharmony_ci DA830_GPIO5_9, 15862306a36Sopenharmony_ci DA830_GPIO5_10, 15962306a36Sopenharmony_ci DA830_GPIO5_11, 16062306a36Sopenharmony_ci DA830_GPIO5_12, 16162306a36Sopenharmony_ci DA830_NSPI1_SCS_0, 16262306a36Sopenharmony_ci DA830_USB0_DRVVBUS, 16362306a36Sopenharmony_ci DA830_AHCLKX0, 16462306a36Sopenharmony_ci DA830_ACLKX0, 16562306a36Sopenharmony_ci DA830_AFSX0, 16662306a36Sopenharmony_ci DA830_AHCLKR0, 16762306a36Sopenharmony_ci DA830_ACLKR0, 16862306a36Sopenharmony_ci DA830_AFSR0, 16962306a36Sopenharmony_ci DA830_UART2_TXD, 17062306a36Sopenharmony_ci DA830_AHCLKX2, 17162306a36Sopenharmony_ci DA830_ECAP0_APWM0, 17262306a36Sopenharmony_ci DA830_RMII_MHZ_50_CLK, 17362306a36Sopenharmony_ci DA830_ECAP1_APWM1, 17462306a36Sopenharmony_ci DA830_USB_REFCLKIN, 17562306a36Sopenharmony_ci DA830_GPIO5_13, 17662306a36Sopenharmony_ci DA830_GPIO4_15, 17762306a36Sopenharmony_ci DA830_GPIO2_11, 17862306a36Sopenharmony_ci DA830_GPIO2_12, 17962306a36Sopenharmony_ci DA830_GPIO2_13, 18062306a36Sopenharmony_ci DA830_GPIO2_14, 18162306a36Sopenharmony_ci DA830_GPIO2_15, 18262306a36Sopenharmony_ci DA830_GPIO3_12, 18362306a36Sopenharmony_ci DA830_AMUTE0, 18462306a36Sopenharmony_ci DA830_AXR0_0, 18562306a36Sopenharmony_ci DA830_AXR0_1, 18662306a36Sopenharmony_ci DA830_AXR0_2, 18762306a36Sopenharmony_ci DA830_AXR0_3, 18862306a36Sopenharmony_ci DA830_AXR0_4, 18962306a36Sopenharmony_ci DA830_AXR0_5, 19062306a36Sopenharmony_ci DA830_AXR0_6, 19162306a36Sopenharmony_ci DA830_RMII_TXD_0, 19262306a36Sopenharmony_ci DA830_RMII_TXD_1, 19362306a36Sopenharmony_ci DA830_RMII_TXEN, 19462306a36Sopenharmony_ci DA830_RMII_CRS_DV, 19562306a36Sopenharmony_ci DA830_RMII_RXD_0, 19662306a36Sopenharmony_ci DA830_RMII_RXD_1, 19762306a36Sopenharmony_ci DA830_RMII_RXER, 19862306a36Sopenharmony_ci DA830_AFSR2, 19962306a36Sopenharmony_ci DA830_ACLKX2, 20062306a36Sopenharmony_ci DA830_AXR2_3, 20162306a36Sopenharmony_ci DA830_AXR2_2, 20262306a36Sopenharmony_ci DA830_AXR2_1, 20362306a36Sopenharmony_ci DA830_AFSX2, 20462306a36Sopenharmony_ci DA830_ACLKR2, 20562306a36Sopenharmony_ci DA830_NRESETOUT, 20662306a36Sopenharmony_ci DA830_GPIO3_0, 20762306a36Sopenharmony_ci DA830_GPIO3_1, 20862306a36Sopenharmony_ci DA830_GPIO3_2, 20962306a36Sopenharmony_ci DA830_GPIO3_3, 21062306a36Sopenharmony_ci DA830_GPIO3_4, 21162306a36Sopenharmony_ci DA830_GPIO3_5, 21262306a36Sopenharmony_ci DA830_GPIO3_6, 21362306a36Sopenharmony_ci DA830_AXR0_7, 21462306a36Sopenharmony_ci DA830_AXR0_8, 21562306a36Sopenharmony_ci DA830_UART1_RXD, 21662306a36Sopenharmony_ci DA830_UART1_TXD, 21762306a36Sopenharmony_ci DA830_AXR0_11, 21862306a36Sopenharmony_ci DA830_AHCLKX1, 21962306a36Sopenharmony_ci DA830_ACLKX1, 22062306a36Sopenharmony_ci DA830_AFSX1, 22162306a36Sopenharmony_ci DA830_MDIO_CLK, 22262306a36Sopenharmony_ci DA830_MDIO_D, 22362306a36Sopenharmony_ci DA830_AXR0_9, 22462306a36Sopenharmony_ci DA830_AXR0_10, 22562306a36Sopenharmony_ci DA830_EPWM0B, 22662306a36Sopenharmony_ci DA830_EPWM0A, 22762306a36Sopenharmony_ci DA830_EPWMSYNCI, 22862306a36Sopenharmony_ci DA830_AXR2_0, 22962306a36Sopenharmony_ci DA830_EPWMSYNC0, 23062306a36Sopenharmony_ci DA830_GPIO3_7, 23162306a36Sopenharmony_ci DA830_GPIO3_8, 23262306a36Sopenharmony_ci DA830_GPIO3_9, 23362306a36Sopenharmony_ci DA830_GPIO3_10, 23462306a36Sopenharmony_ci DA830_GPIO3_11, 23562306a36Sopenharmony_ci DA830_GPIO3_14, 23662306a36Sopenharmony_ci DA830_GPIO3_15, 23762306a36Sopenharmony_ci DA830_GPIO4_10, 23862306a36Sopenharmony_ci DA830_AHCLKR1, 23962306a36Sopenharmony_ci DA830_ACLKR1, 24062306a36Sopenharmony_ci DA830_AFSR1, 24162306a36Sopenharmony_ci DA830_AMUTE1, 24262306a36Sopenharmony_ci DA830_AXR1_0, 24362306a36Sopenharmony_ci DA830_AXR1_1, 24462306a36Sopenharmony_ci DA830_AXR1_2, 24562306a36Sopenharmony_ci DA830_AXR1_3, 24662306a36Sopenharmony_ci DA830_ECAP2_APWM2, 24762306a36Sopenharmony_ci DA830_EHRPWMGLUETZ, 24862306a36Sopenharmony_ci DA830_EQEP1A, 24962306a36Sopenharmony_ci DA830_GPIO4_11, 25062306a36Sopenharmony_ci DA830_GPIO4_12, 25162306a36Sopenharmony_ci DA830_GPIO4_13, 25262306a36Sopenharmony_ci DA830_GPIO4_14, 25362306a36Sopenharmony_ci DA830_GPIO4_0, 25462306a36Sopenharmony_ci DA830_GPIO4_1, 25562306a36Sopenharmony_ci DA830_GPIO4_2, 25662306a36Sopenharmony_ci DA830_GPIO4_3, 25762306a36Sopenharmony_ci DA830_AXR1_4, 25862306a36Sopenharmony_ci DA830_AXR1_5, 25962306a36Sopenharmony_ci DA830_AXR1_6, 26062306a36Sopenharmony_ci DA830_AXR1_7, 26162306a36Sopenharmony_ci DA830_AXR1_8, 26262306a36Sopenharmony_ci DA830_AXR1_9, 26362306a36Sopenharmony_ci DA830_EMA_D_0, 26462306a36Sopenharmony_ci DA830_EMA_D_1, 26562306a36Sopenharmony_ci DA830_EQEP1B, 26662306a36Sopenharmony_ci DA830_EPWM2B, 26762306a36Sopenharmony_ci DA830_EPWM2A, 26862306a36Sopenharmony_ci DA830_EPWM1B, 26962306a36Sopenharmony_ci DA830_EPWM1A, 27062306a36Sopenharmony_ci DA830_MMCSD_DAT_0, 27162306a36Sopenharmony_ci DA830_MMCSD_DAT_1, 27262306a36Sopenharmony_ci DA830_UHPI_HD_0, 27362306a36Sopenharmony_ci DA830_UHPI_HD_1, 27462306a36Sopenharmony_ci DA830_GPIO4_4, 27562306a36Sopenharmony_ci DA830_GPIO4_5, 27662306a36Sopenharmony_ci DA830_GPIO4_6, 27762306a36Sopenharmony_ci DA830_GPIO4_7, 27862306a36Sopenharmony_ci DA830_GPIO4_8, 27962306a36Sopenharmony_ci DA830_GPIO4_9, 28062306a36Sopenharmony_ci DA830_GPIO0_0, 28162306a36Sopenharmony_ci DA830_GPIO0_1, 28262306a36Sopenharmony_ci DA830_EMA_D_2, 28362306a36Sopenharmony_ci DA830_EMA_D_3, 28462306a36Sopenharmony_ci DA830_EMA_D_4, 28562306a36Sopenharmony_ci DA830_EMA_D_5, 28662306a36Sopenharmony_ci DA830_EMA_D_6, 28762306a36Sopenharmony_ci DA830_EMA_D_7, 28862306a36Sopenharmony_ci DA830_EMA_D_8, 28962306a36Sopenharmony_ci DA830_EMA_D_9, 29062306a36Sopenharmony_ci DA830_MMCSD_DAT_2, 29162306a36Sopenharmony_ci DA830_MMCSD_DAT_3, 29262306a36Sopenharmony_ci DA830_MMCSD_DAT_4, 29362306a36Sopenharmony_ci DA830_MMCSD_DAT_5, 29462306a36Sopenharmony_ci DA830_MMCSD_DAT_6, 29562306a36Sopenharmony_ci DA830_MMCSD_DAT_7, 29662306a36Sopenharmony_ci DA830_UHPI_HD_8, 29762306a36Sopenharmony_ci DA830_UHPI_HD_9, 29862306a36Sopenharmony_ci DA830_UHPI_HD_2, 29962306a36Sopenharmony_ci DA830_UHPI_HD_3, 30062306a36Sopenharmony_ci DA830_UHPI_HD_4, 30162306a36Sopenharmony_ci DA830_UHPI_HD_5, 30262306a36Sopenharmony_ci DA830_UHPI_HD_6, 30362306a36Sopenharmony_ci DA830_UHPI_HD_7, 30462306a36Sopenharmony_ci DA830_LCD_D_8, 30562306a36Sopenharmony_ci DA830_LCD_D_9, 30662306a36Sopenharmony_ci DA830_GPIO0_2, 30762306a36Sopenharmony_ci DA830_GPIO0_3, 30862306a36Sopenharmony_ci DA830_GPIO0_4, 30962306a36Sopenharmony_ci DA830_GPIO0_5, 31062306a36Sopenharmony_ci DA830_GPIO0_6, 31162306a36Sopenharmony_ci DA830_GPIO0_7, 31262306a36Sopenharmony_ci DA830_GPIO0_8, 31362306a36Sopenharmony_ci DA830_GPIO0_9, 31462306a36Sopenharmony_ci DA830_EMA_D_10, 31562306a36Sopenharmony_ci DA830_EMA_D_11, 31662306a36Sopenharmony_ci DA830_EMA_D_12, 31762306a36Sopenharmony_ci DA830_EMA_D_13, 31862306a36Sopenharmony_ci DA830_EMA_D_14, 31962306a36Sopenharmony_ci DA830_EMA_D_15, 32062306a36Sopenharmony_ci DA830_EMA_A_0, 32162306a36Sopenharmony_ci DA830_EMA_A_1, 32262306a36Sopenharmony_ci DA830_UHPI_HD_10, 32362306a36Sopenharmony_ci DA830_UHPI_HD_11, 32462306a36Sopenharmony_ci DA830_UHPI_HD_12, 32562306a36Sopenharmony_ci DA830_UHPI_HD_13, 32662306a36Sopenharmony_ci DA830_UHPI_HD_14, 32762306a36Sopenharmony_ci DA830_UHPI_HD_15, 32862306a36Sopenharmony_ci DA830_LCD_D_7, 32962306a36Sopenharmony_ci DA830_MMCSD_CLK, 33062306a36Sopenharmony_ci DA830_LCD_D_10, 33162306a36Sopenharmony_ci DA830_LCD_D_11, 33262306a36Sopenharmony_ci DA830_LCD_D_12, 33362306a36Sopenharmony_ci DA830_LCD_D_13, 33462306a36Sopenharmony_ci DA830_LCD_D_14, 33562306a36Sopenharmony_ci DA830_LCD_D_15, 33662306a36Sopenharmony_ci DA830_UHPI_HCNTL0, 33762306a36Sopenharmony_ci DA830_GPIO0_10, 33862306a36Sopenharmony_ci DA830_GPIO0_11, 33962306a36Sopenharmony_ci DA830_GPIO0_12, 34062306a36Sopenharmony_ci DA830_GPIO0_13, 34162306a36Sopenharmony_ci DA830_GPIO0_14, 34262306a36Sopenharmony_ci DA830_GPIO0_15, 34362306a36Sopenharmony_ci DA830_GPIO1_0, 34462306a36Sopenharmony_ci DA830_GPIO1_1, 34562306a36Sopenharmony_ci DA830_EMA_A_2, 34662306a36Sopenharmony_ci DA830_EMA_A_3, 34762306a36Sopenharmony_ci DA830_EMA_A_4, 34862306a36Sopenharmony_ci DA830_EMA_A_5, 34962306a36Sopenharmony_ci DA830_EMA_A_6, 35062306a36Sopenharmony_ci DA830_EMA_A_7, 35162306a36Sopenharmony_ci DA830_EMA_A_8, 35262306a36Sopenharmony_ci DA830_EMA_A_9, 35362306a36Sopenharmony_ci DA830_MMCSD_CMD, 35462306a36Sopenharmony_ci DA830_LCD_D_6, 35562306a36Sopenharmony_ci DA830_LCD_D_3, 35662306a36Sopenharmony_ci DA830_LCD_D_2, 35762306a36Sopenharmony_ci DA830_LCD_D_1, 35862306a36Sopenharmony_ci DA830_LCD_D_0, 35962306a36Sopenharmony_ci DA830_LCD_PCLK, 36062306a36Sopenharmony_ci DA830_LCD_HSYNC, 36162306a36Sopenharmony_ci DA830_UHPI_HCNTL1, 36262306a36Sopenharmony_ci DA830_GPIO1_2, 36362306a36Sopenharmony_ci DA830_GPIO1_3, 36462306a36Sopenharmony_ci DA830_GPIO1_4, 36562306a36Sopenharmony_ci DA830_GPIO1_5, 36662306a36Sopenharmony_ci DA830_GPIO1_6, 36762306a36Sopenharmony_ci DA830_GPIO1_7, 36862306a36Sopenharmony_ci DA830_GPIO1_8, 36962306a36Sopenharmony_ci DA830_GPIO1_9, 37062306a36Sopenharmony_ci DA830_EMA_A_10, 37162306a36Sopenharmony_ci DA830_EMA_A_11, 37262306a36Sopenharmony_ci DA830_EMA_A_12, 37362306a36Sopenharmony_ci DA830_EMA_BA_1, 37462306a36Sopenharmony_ci DA830_EMA_BA_0, 37562306a36Sopenharmony_ci DA830_EMA_CLK, 37662306a36Sopenharmony_ci DA830_EMA_SDCKE, 37762306a36Sopenharmony_ci DA830_NEMA_CAS, 37862306a36Sopenharmony_ci DA830_LCD_VSYNC, 37962306a36Sopenharmony_ci DA830_NLCD_AC_ENB_CS, 38062306a36Sopenharmony_ci DA830_LCD_MCLK, 38162306a36Sopenharmony_ci DA830_LCD_D_5, 38262306a36Sopenharmony_ci DA830_LCD_D_4, 38362306a36Sopenharmony_ci DA830_OBSCLK, 38462306a36Sopenharmony_ci DA830_NEMA_CS_4, 38562306a36Sopenharmony_ci DA830_UHPI_HHWIL, 38662306a36Sopenharmony_ci DA830_AHCLKR2, 38762306a36Sopenharmony_ci DA830_GPIO1_10, 38862306a36Sopenharmony_ci DA830_GPIO1_11, 38962306a36Sopenharmony_ci DA830_GPIO1_12, 39062306a36Sopenharmony_ci DA830_GPIO1_13, 39162306a36Sopenharmony_ci DA830_GPIO1_14, 39262306a36Sopenharmony_ci DA830_GPIO1_15, 39362306a36Sopenharmony_ci DA830_GPIO2_0, 39462306a36Sopenharmony_ci DA830_GPIO2_1, 39562306a36Sopenharmony_ci DA830_NEMA_RAS, 39662306a36Sopenharmony_ci DA830_NEMA_WE, 39762306a36Sopenharmony_ci DA830_NEMA_CS_0, 39862306a36Sopenharmony_ci DA830_NEMA_CS_2, 39962306a36Sopenharmony_ci DA830_NEMA_CS_3, 40062306a36Sopenharmony_ci DA830_NEMA_OE, 40162306a36Sopenharmony_ci DA830_NEMA_WE_DQM_1, 40262306a36Sopenharmony_ci DA830_NEMA_WE_DQM_0, 40362306a36Sopenharmony_ci DA830_NEMA_CS_5, 40462306a36Sopenharmony_ci DA830_UHPI_HRNW, 40562306a36Sopenharmony_ci DA830_NUHPI_HAS, 40662306a36Sopenharmony_ci DA830_NUHPI_HCS, 40762306a36Sopenharmony_ci DA830_NUHPI_HDS1, 40862306a36Sopenharmony_ci DA830_NUHPI_HDS2, 40962306a36Sopenharmony_ci DA830_NUHPI_HINT, 41062306a36Sopenharmony_ci DA830_AXR0_12, 41162306a36Sopenharmony_ci DA830_AMUTE2, 41262306a36Sopenharmony_ci DA830_AXR0_13, 41362306a36Sopenharmony_ci DA830_AXR0_14, 41462306a36Sopenharmony_ci DA830_AXR0_15, 41562306a36Sopenharmony_ci DA830_GPIO2_2, 41662306a36Sopenharmony_ci DA830_GPIO2_3, 41762306a36Sopenharmony_ci DA830_GPIO2_4, 41862306a36Sopenharmony_ci DA830_GPIO2_5, 41962306a36Sopenharmony_ci DA830_GPIO2_6, 42062306a36Sopenharmony_ci DA830_GPIO2_7, 42162306a36Sopenharmony_ci DA830_GPIO2_8, 42262306a36Sopenharmony_ci DA830_GPIO2_9, 42362306a36Sopenharmony_ci DA830_EMA_WAIT_0, 42462306a36Sopenharmony_ci DA830_NUHPI_HRDY, 42562306a36Sopenharmony_ci DA830_GPIO2_10, 42662306a36Sopenharmony_ci}; 42762306a36Sopenharmony_ci 42862306a36Sopenharmony_cienum davinci_da850_index { 42962306a36Sopenharmony_ci /* UART0 function */ 43062306a36Sopenharmony_ci DA850_NUART0_CTS, 43162306a36Sopenharmony_ci DA850_NUART0_RTS, 43262306a36Sopenharmony_ci DA850_UART0_RXD, 43362306a36Sopenharmony_ci DA850_UART0_TXD, 43462306a36Sopenharmony_ci 43562306a36Sopenharmony_ci /* UART1 function */ 43662306a36Sopenharmony_ci DA850_NUART1_CTS, 43762306a36Sopenharmony_ci DA850_NUART1_RTS, 43862306a36Sopenharmony_ci DA850_UART1_RXD, 43962306a36Sopenharmony_ci DA850_UART1_TXD, 44062306a36Sopenharmony_ci 44162306a36Sopenharmony_ci /* UART2 function */ 44262306a36Sopenharmony_ci DA850_NUART2_CTS, 44362306a36Sopenharmony_ci DA850_NUART2_RTS, 44462306a36Sopenharmony_ci DA850_UART2_RXD, 44562306a36Sopenharmony_ci DA850_UART2_TXD, 44662306a36Sopenharmony_ci 44762306a36Sopenharmony_ci /* I2C1 function */ 44862306a36Sopenharmony_ci DA850_I2C1_SCL, 44962306a36Sopenharmony_ci DA850_I2C1_SDA, 45062306a36Sopenharmony_ci 45162306a36Sopenharmony_ci /* I2C0 function */ 45262306a36Sopenharmony_ci DA850_I2C0_SDA, 45362306a36Sopenharmony_ci DA850_I2C0_SCL, 45462306a36Sopenharmony_ci 45562306a36Sopenharmony_ci /* EMAC function */ 45662306a36Sopenharmony_ci DA850_MII_TXEN, 45762306a36Sopenharmony_ci DA850_MII_TXCLK, 45862306a36Sopenharmony_ci DA850_MII_COL, 45962306a36Sopenharmony_ci DA850_MII_TXD_3, 46062306a36Sopenharmony_ci DA850_MII_TXD_2, 46162306a36Sopenharmony_ci DA850_MII_TXD_1, 46262306a36Sopenharmony_ci DA850_MII_TXD_0, 46362306a36Sopenharmony_ci DA850_MII_RXER, 46462306a36Sopenharmony_ci DA850_MII_CRS, 46562306a36Sopenharmony_ci DA850_MII_RXCLK, 46662306a36Sopenharmony_ci DA850_MII_RXDV, 46762306a36Sopenharmony_ci DA850_MII_RXD_3, 46862306a36Sopenharmony_ci DA850_MII_RXD_2, 46962306a36Sopenharmony_ci DA850_MII_RXD_1, 47062306a36Sopenharmony_ci DA850_MII_RXD_0, 47162306a36Sopenharmony_ci DA850_MDIO_CLK, 47262306a36Sopenharmony_ci DA850_MDIO_D, 47362306a36Sopenharmony_ci DA850_RMII_TXD_0, 47462306a36Sopenharmony_ci DA850_RMII_TXD_1, 47562306a36Sopenharmony_ci DA850_RMII_TXEN, 47662306a36Sopenharmony_ci DA850_RMII_CRS_DV, 47762306a36Sopenharmony_ci DA850_RMII_RXD_0, 47862306a36Sopenharmony_ci DA850_RMII_RXD_1, 47962306a36Sopenharmony_ci DA850_RMII_RXER, 48062306a36Sopenharmony_ci DA850_RMII_MHZ_50_CLK, 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_ci /* McASP function */ 48362306a36Sopenharmony_ci DA850_ACLKR, 48462306a36Sopenharmony_ci DA850_ACLKX, 48562306a36Sopenharmony_ci DA850_AFSR, 48662306a36Sopenharmony_ci DA850_AFSX, 48762306a36Sopenharmony_ci DA850_AHCLKR, 48862306a36Sopenharmony_ci DA850_AHCLKX, 48962306a36Sopenharmony_ci DA850_AMUTE, 49062306a36Sopenharmony_ci DA850_AXR_15, 49162306a36Sopenharmony_ci DA850_AXR_14, 49262306a36Sopenharmony_ci DA850_AXR_13, 49362306a36Sopenharmony_ci DA850_AXR_12, 49462306a36Sopenharmony_ci DA850_AXR_11, 49562306a36Sopenharmony_ci DA850_AXR_10, 49662306a36Sopenharmony_ci DA850_AXR_9, 49762306a36Sopenharmony_ci DA850_AXR_8, 49862306a36Sopenharmony_ci DA850_AXR_7, 49962306a36Sopenharmony_ci DA850_AXR_6, 50062306a36Sopenharmony_ci DA850_AXR_5, 50162306a36Sopenharmony_ci DA850_AXR_4, 50262306a36Sopenharmony_ci DA850_AXR_3, 50362306a36Sopenharmony_ci DA850_AXR_2, 50462306a36Sopenharmony_ci DA850_AXR_1, 50562306a36Sopenharmony_ci DA850_AXR_0, 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci /* LCD function */ 50862306a36Sopenharmony_ci DA850_LCD_D_7, 50962306a36Sopenharmony_ci DA850_LCD_D_6, 51062306a36Sopenharmony_ci DA850_LCD_D_5, 51162306a36Sopenharmony_ci DA850_LCD_D_4, 51262306a36Sopenharmony_ci DA850_LCD_D_3, 51362306a36Sopenharmony_ci DA850_LCD_D_2, 51462306a36Sopenharmony_ci DA850_LCD_D_1, 51562306a36Sopenharmony_ci DA850_LCD_D_0, 51662306a36Sopenharmony_ci DA850_LCD_D_15, 51762306a36Sopenharmony_ci DA850_LCD_D_14, 51862306a36Sopenharmony_ci DA850_LCD_D_13, 51962306a36Sopenharmony_ci DA850_LCD_D_12, 52062306a36Sopenharmony_ci DA850_LCD_D_11, 52162306a36Sopenharmony_ci DA850_LCD_D_10, 52262306a36Sopenharmony_ci DA850_LCD_D_9, 52362306a36Sopenharmony_ci DA850_LCD_D_8, 52462306a36Sopenharmony_ci DA850_LCD_PCLK, 52562306a36Sopenharmony_ci DA850_LCD_HSYNC, 52662306a36Sopenharmony_ci DA850_LCD_VSYNC, 52762306a36Sopenharmony_ci DA850_NLCD_AC_ENB_CS, 52862306a36Sopenharmony_ci 52962306a36Sopenharmony_ci /* MMC/SD0 function */ 53062306a36Sopenharmony_ci DA850_MMCSD0_DAT_0, 53162306a36Sopenharmony_ci DA850_MMCSD0_DAT_1, 53262306a36Sopenharmony_ci DA850_MMCSD0_DAT_2, 53362306a36Sopenharmony_ci DA850_MMCSD0_DAT_3, 53462306a36Sopenharmony_ci DA850_MMCSD0_CLK, 53562306a36Sopenharmony_ci DA850_MMCSD0_CMD, 53662306a36Sopenharmony_ci 53762306a36Sopenharmony_ci /* MMC/SD1 function */ 53862306a36Sopenharmony_ci DA850_MMCSD1_DAT_0, 53962306a36Sopenharmony_ci DA850_MMCSD1_DAT_1, 54062306a36Sopenharmony_ci DA850_MMCSD1_DAT_2, 54162306a36Sopenharmony_ci DA850_MMCSD1_DAT_3, 54262306a36Sopenharmony_ci DA850_MMCSD1_CLK, 54362306a36Sopenharmony_ci DA850_MMCSD1_CMD, 54462306a36Sopenharmony_ci 54562306a36Sopenharmony_ci /* EMIF2.5/EMIFA function */ 54662306a36Sopenharmony_ci DA850_EMA_D_7, 54762306a36Sopenharmony_ci DA850_EMA_D_6, 54862306a36Sopenharmony_ci DA850_EMA_D_5, 54962306a36Sopenharmony_ci DA850_EMA_D_4, 55062306a36Sopenharmony_ci DA850_EMA_D_3, 55162306a36Sopenharmony_ci DA850_EMA_D_2, 55262306a36Sopenharmony_ci DA850_EMA_D_1, 55362306a36Sopenharmony_ci DA850_EMA_D_0, 55462306a36Sopenharmony_ci DA850_EMA_A_1, 55562306a36Sopenharmony_ci DA850_EMA_A_2, 55662306a36Sopenharmony_ci DA850_NEMA_CS_3, 55762306a36Sopenharmony_ci DA850_NEMA_CS_4, 55862306a36Sopenharmony_ci DA850_NEMA_WE, 55962306a36Sopenharmony_ci DA850_NEMA_OE, 56062306a36Sopenharmony_ci DA850_EMA_D_15, 56162306a36Sopenharmony_ci DA850_EMA_D_14, 56262306a36Sopenharmony_ci DA850_EMA_D_13, 56362306a36Sopenharmony_ci DA850_EMA_D_12, 56462306a36Sopenharmony_ci DA850_EMA_D_11, 56562306a36Sopenharmony_ci DA850_EMA_D_10, 56662306a36Sopenharmony_ci DA850_EMA_D_9, 56762306a36Sopenharmony_ci DA850_EMA_D_8, 56862306a36Sopenharmony_ci DA850_EMA_A_0, 56962306a36Sopenharmony_ci DA850_EMA_A_3, 57062306a36Sopenharmony_ci DA850_EMA_A_4, 57162306a36Sopenharmony_ci DA850_EMA_A_5, 57262306a36Sopenharmony_ci DA850_EMA_A_6, 57362306a36Sopenharmony_ci DA850_EMA_A_7, 57462306a36Sopenharmony_ci DA850_EMA_A_8, 57562306a36Sopenharmony_ci DA850_EMA_A_9, 57662306a36Sopenharmony_ci DA850_EMA_A_10, 57762306a36Sopenharmony_ci DA850_EMA_A_11, 57862306a36Sopenharmony_ci DA850_EMA_A_12, 57962306a36Sopenharmony_ci DA850_EMA_A_13, 58062306a36Sopenharmony_ci DA850_EMA_A_14, 58162306a36Sopenharmony_ci DA850_EMA_A_15, 58262306a36Sopenharmony_ci DA850_EMA_A_16, 58362306a36Sopenharmony_ci DA850_EMA_A_17, 58462306a36Sopenharmony_ci DA850_EMA_A_18, 58562306a36Sopenharmony_ci DA850_EMA_A_19, 58662306a36Sopenharmony_ci DA850_EMA_A_20, 58762306a36Sopenharmony_ci DA850_EMA_A_21, 58862306a36Sopenharmony_ci DA850_EMA_A_22, 58962306a36Sopenharmony_ci DA850_EMA_A_23, 59062306a36Sopenharmony_ci DA850_EMA_BA_1, 59162306a36Sopenharmony_ci DA850_EMA_CLK, 59262306a36Sopenharmony_ci DA850_EMA_WAIT_1, 59362306a36Sopenharmony_ci DA850_NEMA_CS_2, 59462306a36Sopenharmony_ci 59562306a36Sopenharmony_ci /* GPIO function */ 59662306a36Sopenharmony_ci DA850_GPIO2_4, 59762306a36Sopenharmony_ci DA850_GPIO2_6, 59862306a36Sopenharmony_ci DA850_GPIO2_8, 59962306a36Sopenharmony_ci DA850_GPIO2_15, 60062306a36Sopenharmony_ci DA850_GPIO3_12, 60162306a36Sopenharmony_ci DA850_GPIO3_13, 60262306a36Sopenharmony_ci DA850_GPIO4_0, 60362306a36Sopenharmony_ci DA850_GPIO4_1, 60462306a36Sopenharmony_ci DA850_GPIO6_9, 60562306a36Sopenharmony_ci DA850_GPIO6_10, 60662306a36Sopenharmony_ci DA850_GPIO6_13, 60762306a36Sopenharmony_ci DA850_RTC_ALARM, 60862306a36Sopenharmony_ci 60962306a36Sopenharmony_ci /* VPIF Capture */ 61062306a36Sopenharmony_ci DA850_VPIF_DIN0, 61162306a36Sopenharmony_ci DA850_VPIF_DIN1, 61262306a36Sopenharmony_ci DA850_VPIF_DIN2, 61362306a36Sopenharmony_ci DA850_VPIF_DIN3, 61462306a36Sopenharmony_ci DA850_VPIF_DIN4, 61562306a36Sopenharmony_ci DA850_VPIF_DIN5, 61662306a36Sopenharmony_ci DA850_VPIF_DIN6, 61762306a36Sopenharmony_ci DA850_VPIF_DIN7, 61862306a36Sopenharmony_ci DA850_VPIF_DIN8, 61962306a36Sopenharmony_ci DA850_VPIF_DIN9, 62062306a36Sopenharmony_ci DA850_VPIF_DIN10, 62162306a36Sopenharmony_ci DA850_VPIF_DIN11, 62262306a36Sopenharmony_ci DA850_VPIF_DIN12, 62362306a36Sopenharmony_ci DA850_VPIF_DIN13, 62462306a36Sopenharmony_ci DA850_VPIF_DIN14, 62562306a36Sopenharmony_ci DA850_VPIF_DIN15, 62662306a36Sopenharmony_ci DA850_VPIF_CLKIN0, 62762306a36Sopenharmony_ci DA850_VPIF_CLKIN1, 62862306a36Sopenharmony_ci DA850_VPIF_CLKIN2, 62962306a36Sopenharmony_ci DA850_VPIF_CLKIN3, 63062306a36Sopenharmony_ci 63162306a36Sopenharmony_ci /* VPIF Display */ 63262306a36Sopenharmony_ci DA850_VPIF_DOUT0, 63362306a36Sopenharmony_ci DA850_VPIF_DOUT1, 63462306a36Sopenharmony_ci DA850_VPIF_DOUT2, 63562306a36Sopenharmony_ci DA850_VPIF_DOUT3, 63662306a36Sopenharmony_ci DA850_VPIF_DOUT4, 63762306a36Sopenharmony_ci DA850_VPIF_DOUT5, 63862306a36Sopenharmony_ci DA850_VPIF_DOUT6, 63962306a36Sopenharmony_ci DA850_VPIF_DOUT7, 64062306a36Sopenharmony_ci DA850_VPIF_DOUT8, 64162306a36Sopenharmony_ci DA850_VPIF_DOUT9, 64262306a36Sopenharmony_ci DA850_VPIF_DOUT10, 64362306a36Sopenharmony_ci DA850_VPIF_DOUT11, 64462306a36Sopenharmony_ci DA850_VPIF_DOUT12, 64562306a36Sopenharmony_ci DA850_VPIF_DOUT13, 64662306a36Sopenharmony_ci DA850_VPIF_DOUT14, 64762306a36Sopenharmony_ci DA850_VPIF_DOUT15, 64862306a36Sopenharmony_ci DA850_VPIF_CLKO2, 64962306a36Sopenharmony_ci DA850_VPIF_CLKO3, 65062306a36Sopenharmony_ci}; 65162306a36Sopenharmony_ci 65262306a36Sopenharmony_ci#define PINMUX(x) (4 * (x)) 65362306a36Sopenharmony_ci 65462306a36Sopenharmony_ci#ifdef CONFIG_DAVINCI_MUX 65562306a36Sopenharmony_ci/* setup pin muxing */ 65662306a36Sopenharmony_ciextern int davinci_cfg_reg(unsigned long reg_cfg); 65762306a36Sopenharmony_ciextern int davinci_cfg_reg_list(const short pins[]); 65862306a36Sopenharmony_ci#else 65962306a36Sopenharmony_ci/* boot loader does it all (no warnings from CONFIG_DAVINCI_MUX_WARNINGS) */ 66062306a36Sopenharmony_cistatic inline int davinci_cfg_reg(unsigned long reg_cfg) { return 0; } 66162306a36Sopenharmony_cistatic inline int davinci_cfg_reg_list(const short pins[]) 66262306a36Sopenharmony_ci{ 66362306a36Sopenharmony_ci return 0; 66462306a36Sopenharmony_ci} 66562306a36Sopenharmony_ci#endif 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ci 66862306a36Sopenharmony_ci#define MUX_CFG(soc, desc, muxreg, mode_offset, mode_mask, mux_mode, dbg)\ 66962306a36Sopenharmony_ci[soc##_##desc] = { \ 67062306a36Sopenharmony_ci .name = #desc, \ 67162306a36Sopenharmony_ci .debug = dbg, \ 67262306a36Sopenharmony_ci .mux_reg_name = "PINMUX"#muxreg, \ 67362306a36Sopenharmony_ci .mux_reg = PINMUX(muxreg), \ 67462306a36Sopenharmony_ci .mask_offset = mode_offset, \ 67562306a36Sopenharmony_ci .mask = mode_mask, \ 67662306a36Sopenharmony_ci .mode = mux_mode, \ 67762306a36Sopenharmony_ci }, 67862306a36Sopenharmony_ci 67962306a36Sopenharmony_ci#define INT_CFG(soc, desc, mode_offset, mode_mask, mux_mode, dbg) \ 68062306a36Sopenharmony_ci[soc##_##desc] = { \ 68162306a36Sopenharmony_ci .name = #desc, \ 68262306a36Sopenharmony_ci .debug = dbg, \ 68362306a36Sopenharmony_ci .mux_reg_name = "INTMUX", \ 68462306a36Sopenharmony_ci .mux_reg = INTMUX, \ 68562306a36Sopenharmony_ci .mask_offset = mode_offset, \ 68662306a36Sopenharmony_ci .mask = mode_mask, \ 68762306a36Sopenharmony_ci .mode = mux_mode, \ 68862306a36Sopenharmony_ci }, 68962306a36Sopenharmony_ci 69062306a36Sopenharmony_ci#define EVT_CFG(soc, desc, mode_offset, mode_mask, mux_mode, dbg) \ 69162306a36Sopenharmony_ci[soc##_##desc] = { \ 69262306a36Sopenharmony_ci .name = #desc, \ 69362306a36Sopenharmony_ci .debug = dbg, \ 69462306a36Sopenharmony_ci .mux_reg_name = "EVTMUX", \ 69562306a36Sopenharmony_ci .mux_reg = EVTMUX, \ 69662306a36Sopenharmony_ci .mask_offset = mode_offset, \ 69762306a36Sopenharmony_ci .mask = mode_mask, \ 69862306a36Sopenharmony_ci .mode = mux_mode, \ 69962306a36Sopenharmony_ci }, 70062306a36Sopenharmony_ci 70162306a36Sopenharmony_ci#endif /* _MACH_DAVINCI_MUX_H */ 702