18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * ALSA SoC McASP Audio Layer for TI DAVINCI processor 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * MCASP related definitions 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Author: Nirmal Pandey <n-pandey@ti.com>, 88c2ecf20Sopenharmony_ci * Suresh Rajashekara <suresh.r@ti.com> 98c2ecf20Sopenharmony_ci * Steve Chen <schen@.mvista.com> 108c2ecf20Sopenharmony_ci * 118c2ecf20Sopenharmony_ci * Copyright: (C) 2009 MontaVista Software, Inc., <source@mvista.com> 128c2ecf20Sopenharmony_ci * Copyright: (C) 2009 Texas Instruments, India 138c2ecf20Sopenharmony_ci */ 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci#ifndef DAVINCI_MCASP_H 168c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_H 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci/* 198c2ecf20Sopenharmony_ci * McASP register definitions 208c2ecf20Sopenharmony_ci */ 218c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PID_REG 0x00 228c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PWREMUMGT_REG 0x04 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PFUNC_REG 0x10 258c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PDIR_REG 0x14 268c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PDOUT_REG 0x18 278c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PDSET_REG 0x1c 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_PDCLR_REG 0x20 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TLGC_REG 0x30 328c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TLMR_REG 0x34 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_GBLCTL_REG 0x44 358c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_AMUTE_REG 0x48 368c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_LBCTL_REG 0x4c 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXDITCTL_REG 0x50 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_GBLCTLR_REG 0x60 418c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXMASK_REG 0x64 428c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXFMT_REG 0x68 438c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXFMCTL_REG 0x6c 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_ACLKRCTL_REG 0x70 468c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_AHCLKRCTL_REG 0x74 478c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXTDM_REG 0x78 488c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_EVTCTLR_REG 0x7c 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXSTAT_REG 0x80 518c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXTDMSLOT_REG 0x84 528c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXCLKCHK_REG 0x88 538c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_REVTCTL_REG 0x8c 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_GBLCTLX_REG 0xa0 568c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXMASK_REG 0xa4 578c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXFMT_REG 0xa8 588c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXFMCTL_REG 0xac 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_ACLKXCTL_REG 0xb0 618c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_AHCLKXCTL_REG 0xb4 628c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXTDM_REG 0xb8 638c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_EVTCTLX_REG 0xbc 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXSTAT_REG 0xc0 668c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXTDMSLOT_REG 0xc4 678c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXCLKCHK_REG 0xc8 688c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_XEVTCTL_REG 0xcc 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci/* Left(even TDM Slot) Channel Status Register File */ 718c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_DITCSRA_REG 0x100 728c2ecf20Sopenharmony_ci/* Right(odd TDM slot) Channel Status Register File */ 738c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_DITCSRB_REG 0x118 748c2ecf20Sopenharmony_ci/* Left(even TDM slot) User Data Register File */ 758c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_DITUDRA_REG 0x130 768c2ecf20Sopenharmony_ci/* Right(odd TDM Slot) User Data Register File */ 778c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_DITUDRB_REG 0x148 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci/* Serializer n Control Register */ 808c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_XRSRCTL_BASE_REG 0x180 818c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_XRSRCTL_REG(n) (DAVINCI_MCASP_XRSRCTL_BASE_REG + \ 828c2ecf20Sopenharmony_ci (n << 2)) 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci/* Transmit Buffer for Serializer n */ 858c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_TXBUF_REG(n) (0x200 + (n << 2)) 868c2ecf20Sopenharmony_ci/* Receive Buffer for Serializer n */ 878c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_RXBUF_REG(n) (0x280 + (n << 2)) 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci/* McASP FIFO Registers */ 908c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_V2_AFIFO_BASE (0x1010) 918c2ecf20Sopenharmony_ci#define DAVINCI_MCASP_V3_AFIFO_BASE (0x1000) 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci/* FIFO register offsets from AFIFO base */ 948c2ecf20Sopenharmony_ci#define MCASP_WFIFOCTL_OFFSET (0x0) 958c2ecf20Sopenharmony_ci#define MCASP_WFIFOSTS_OFFSET (0x4) 968c2ecf20Sopenharmony_ci#define MCASP_RFIFOCTL_OFFSET (0x8) 978c2ecf20Sopenharmony_ci#define MCASP_RFIFOSTS_OFFSET (0xc) 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci/* 1008c2ecf20Sopenharmony_ci * DAVINCI_MCASP_PWREMUMGT_REG - Power Down and Emulation Management 1018c2ecf20Sopenharmony_ci * Register Bits 1028c2ecf20Sopenharmony_ci */ 1038c2ecf20Sopenharmony_ci#define MCASP_FREE BIT(0) 1048c2ecf20Sopenharmony_ci#define MCASP_SOFT BIT(1) 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ci/* 1078c2ecf20Sopenharmony_ci * DAVINCI_MCASP_PFUNC_REG - Pin Function / GPIO Enable Register Bits 1088c2ecf20Sopenharmony_ci * DAVINCI_MCASP_PDIR_REG - Pin Direction Register Bits 1098c2ecf20Sopenharmony_ci * DAVINCI_MCASP_PDOUT_REG - Pin output in GPIO mode 1108c2ecf20Sopenharmony_ci * DAVINCI_MCASP_PDSET_REG - Pin input in GPIO mode 1118c2ecf20Sopenharmony_ci */ 1128c2ecf20Sopenharmony_ci#define PIN_BIT_AXR(n) (n) 1138c2ecf20Sopenharmony_ci#define PIN_BIT_AMUTE 25 1148c2ecf20Sopenharmony_ci#define PIN_BIT_ACLKX 26 1158c2ecf20Sopenharmony_ci#define PIN_BIT_AHCLKX 27 1168c2ecf20Sopenharmony_ci#define PIN_BIT_AFSX 28 1178c2ecf20Sopenharmony_ci#define PIN_BIT_ACLKR 29 1188c2ecf20Sopenharmony_ci#define PIN_BIT_AHCLKR 30 1198c2ecf20Sopenharmony_ci#define PIN_BIT_AFSR 31 1208c2ecf20Sopenharmony_ci 1218c2ecf20Sopenharmony_ci/* 1228c2ecf20Sopenharmony_ci * DAVINCI_MCASP_TXDITCTL_REG - Transmit DIT Control Register Bits 1238c2ecf20Sopenharmony_ci */ 1248c2ecf20Sopenharmony_ci#define DITEN BIT(0) /* Transmit DIT mode enable/disable */ 1258c2ecf20Sopenharmony_ci#define VA BIT(2) 1268c2ecf20Sopenharmony_ci#define VB BIT(3) 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_ci/* 1298c2ecf20Sopenharmony_ci * DAVINCI_MCASP_TXFMT_REG - Transmit Bitstream Format Register Bits 1308c2ecf20Sopenharmony_ci */ 1318c2ecf20Sopenharmony_ci#define TXROT(val) (val) 1328c2ecf20Sopenharmony_ci#define TXSEL BIT(3) 1338c2ecf20Sopenharmony_ci#define TXSSZ(val) (val<<4) 1348c2ecf20Sopenharmony_ci#define TXPBIT(val) (val<<8) 1358c2ecf20Sopenharmony_ci#define TXPAD(val) (val<<13) 1368c2ecf20Sopenharmony_ci#define TXORD BIT(15) 1378c2ecf20Sopenharmony_ci#define FSXDLY(val) (val<<16) 1388c2ecf20Sopenharmony_ci 1398c2ecf20Sopenharmony_ci/* 1408c2ecf20Sopenharmony_ci * DAVINCI_MCASP_RXFMT_REG - Receive Bitstream Format Register Bits 1418c2ecf20Sopenharmony_ci */ 1428c2ecf20Sopenharmony_ci#define RXROT(val) (val) 1438c2ecf20Sopenharmony_ci#define RXSEL BIT(3) 1448c2ecf20Sopenharmony_ci#define RXSSZ(val) (val<<4) 1458c2ecf20Sopenharmony_ci#define RXPBIT(val) (val<<8) 1468c2ecf20Sopenharmony_ci#define RXPAD(val) (val<<13) 1478c2ecf20Sopenharmony_ci#define RXORD BIT(15) 1488c2ecf20Sopenharmony_ci#define FSRDLY(val) (val<<16) 1498c2ecf20Sopenharmony_ci 1508c2ecf20Sopenharmony_ci/* 1518c2ecf20Sopenharmony_ci * DAVINCI_MCASP_TXFMCTL_REG - Transmit Frame Control Register Bits 1528c2ecf20Sopenharmony_ci */ 1538c2ecf20Sopenharmony_ci#define FSXPOL BIT(0) 1548c2ecf20Sopenharmony_ci#define AFSXE BIT(1) 1558c2ecf20Sopenharmony_ci#define FSXDUR BIT(4) 1568c2ecf20Sopenharmony_ci#define FSXMOD(val) (val<<7) 1578c2ecf20Sopenharmony_ci 1588c2ecf20Sopenharmony_ci/* 1598c2ecf20Sopenharmony_ci * DAVINCI_MCASP_RXFMCTL_REG - Receive Frame Control Register Bits 1608c2ecf20Sopenharmony_ci */ 1618c2ecf20Sopenharmony_ci#define FSRPOL BIT(0) 1628c2ecf20Sopenharmony_ci#define AFSRE BIT(1) 1638c2ecf20Sopenharmony_ci#define FSRDUR BIT(4) 1648c2ecf20Sopenharmony_ci#define FSRMOD(val) (val<<7) 1658c2ecf20Sopenharmony_ci 1668c2ecf20Sopenharmony_ci/* 1678c2ecf20Sopenharmony_ci * DAVINCI_MCASP_ACLKXCTL_REG - Transmit Clock Control Register Bits 1688c2ecf20Sopenharmony_ci */ 1698c2ecf20Sopenharmony_ci#define ACLKXDIV(val) (val) 1708c2ecf20Sopenharmony_ci#define ACLKXE BIT(5) 1718c2ecf20Sopenharmony_ci#define TX_ASYNC BIT(6) 1728c2ecf20Sopenharmony_ci#define ACLKXPOL BIT(7) 1738c2ecf20Sopenharmony_ci#define ACLKXDIV_MASK 0x1f 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ci/* 1768c2ecf20Sopenharmony_ci * DAVINCI_MCASP_ACLKRCTL_REG Receive Clock Control Register Bits 1778c2ecf20Sopenharmony_ci */ 1788c2ecf20Sopenharmony_ci#define ACLKRDIV(val) (val) 1798c2ecf20Sopenharmony_ci#define ACLKRE BIT(5) 1808c2ecf20Sopenharmony_ci#define RX_ASYNC BIT(6) 1818c2ecf20Sopenharmony_ci#define ACLKRPOL BIT(7) 1828c2ecf20Sopenharmony_ci#define ACLKRDIV_MASK 0x1f 1838c2ecf20Sopenharmony_ci 1848c2ecf20Sopenharmony_ci/* 1858c2ecf20Sopenharmony_ci * DAVINCI_MCASP_AHCLKXCTL_REG - High Frequency Transmit Clock Control 1868c2ecf20Sopenharmony_ci * Register Bits 1878c2ecf20Sopenharmony_ci */ 1888c2ecf20Sopenharmony_ci#define AHCLKXDIV(val) (val) 1898c2ecf20Sopenharmony_ci#define AHCLKXPOL BIT(14) 1908c2ecf20Sopenharmony_ci#define AHCLKXE BIT(15) 1918c2ecf20Sopenharmony_ci#define AHCLKXDIV_MASK 0xfff 1928c2ecf20Sopenharmony_ci 1938c2ecf20Sopenharmony_ci/* 1948c2ecf20Sopenharmony_ci * DAVINCI_MCASP_AHCLKRCTL_REG - High Frequency Receive Clock Control 1958c2ecf20Sopenharmony_ci * Register Bits 1968c2ecf20Sopenharmony_ci */ 1978c2ecf20Sopenharmony_ci#define AHCLKRDIV(val) (val) 1988c2ecf20Sopenharmony_ci#define AHCLKRPOL BIT(14) 1998c2ecf20Sopenharmony_ci#define AHCLKRE BIT(15) 2008c2ecf20Sopenharmony_ci#define AHCLKRDIV_MASK 0xfff 2018c2ecf20Sopenharmony_ci 2028c2ecf20Sopenharmony_ci/* 2038c2ecf20Sopenharmony_ci * DAVINCI_MCASP_XRSRCTL_BASE_REG - Serializer Control Register Bits 2048c2ecf20Sopenharmony_ci */ 2058c2ecf20Sopenharmony_ci#define MODE(val) (val) 2068c2ecf20Sopenharmony_ci#define DISMOD_3STATE (0x0) 2078c2ecf20Sopenharmony_ci#define DISMOD_LOW (0x2 << 2) 2088c2ecf20Sopenharmony_ci#define DISMOD_HIGH (0x3 << 2) 2098c2ecf20Sopenharmony_ci#define DISMOD_VAL(x) ((x) << 2) 2108c2ecf20Sopenharmony_ci#define DISMOD_MASK DISMOD_HIGH 2118c2ecf20Sopenharmony_ci#define TXSTATE BIT(4) 2128c2ecf20Sopenharmony_ci#define RXSTATE BIT(5) 2138c2ecf20Sopenharmony_ci#define SRMOD_MASK 3 2148c2ecf20Sopenharmony_ci#define SRMOD_INACTIVE 0 2158c2ecf20Sopenharmony_ci 2168c2ecf20Sopenharmony_ci/* 2178c2ecf20Sopenharmony_ci * DAVINCI_MCASP_LBCTL_REG - Loop Back Control Register Bits 2188c2ecf20Sopenharmony_ci */ 2198c2ecf20Sopenharmony_ci#define LBEN BIT(0) 2208c2ecf20Sopenharmony_ci#define LBORD BIT(1) 2218c2ecf20Sopenharmony_ci#define LBGENMODE(val) (val<<2) 2228c2ecf20Sopenharmony_ci 2238c2ecf20Sopenharmony_ci/* 2248c2ecf20Sopenharmony_ci * DAVINCI_MCASP_TXTDMSLOT_REG - Transmit TDM Slot Register configuration 2258c2ecf20Sopenharmony_ci */ 2268c2ecf20Sopenharmony_ci#define TXTDMS(n) (1<<n) 2278c2ecf20Sopenharmony_ci 2288c2ecf20Sopenharmony_ci/* 2298c2ecf20Sopenharmony_ci * DAVINCI_MCASP_RXTDMSLOT_REG - Receive TDM Slot Register configuration 2308c2ecf20Sopenharmony_ci */ 2318c2ecf20Sopenharmony_ci#define RXTDMS(n) (1<<n) 2328c2ecf20Sopenharmony_ci 2338c2ecf20Sopenharmony_ci/* 2348c2ecf20Sopenharmony_ci * DAVINCI_MCASP_GBLCTL_REG - Global Control Register Bits 2358c2ecf20Sopenharmony_ci */ 2368c2ecf20Sopenharmony_ci#define RXCLKRST BIT(0) /* Receiver Clock Divider Reset */ 2378c2ecf20Sopenharmony_ci#define RXHCLKRST BIT(1) /* Receiver High Frequency Clock Divider */ 2388c2ecf20Sopenharmony_ci#define RXSERCLR BIT(2) /* Receiver Serializer Clear */ 2398c2ecf20Sopenharmony_ci#define RXSMRST BIT(3) /* Receiver State Machine Reset */ 2408c2ecf20Sopenharmony_ci#define RXFSRST BIT(4) /* Frame Sync Generator Reset */ 2418c2ecf20Sopenharmony_ci#define TXCLKRST BIT(8) /* Transmitter Clock Divider Reset */ 2428c2ecf20Sopenharmony_ci#define TXHCLKRST BIT(9) /* Transmitter High Frequency Clock Divider*/ 2438c2ecf20Sopenharmony_ci#define TXSERCLR BIT(10) /* Transmit Serializer Clear */ 2448c2ecf20Sopenharmony_ci#define TXSMRST BIT(11) /* Transmitter State Machine Reset */ 2458c2ecf20Sopenharmony_ci#define TXFSRST BIT(12) /* Frame Sync Generator Reset */ 2468c2ecf20Sopenharmony_ci 2478c2ecf20Sopenharmony_ci/* 2488c2ecf20Sopenharmony_ci * DAVINCI_MCASP_TXSTAT_REG - Transmitter Status Register Bits 2498c2ecf20Sopenharmony_ci * DAVINCI_MCASP_RXSTAT_REG - Receiver Status Register Bits 2508c2ecf20Sopenharmony_ci */ 2518c2ecf20Sopenharmony_ci#define XRERR BIT(8) /* Transmit/Receive error */ 2528c2ecf20Sopenharmony_ci#define XRDATA BIT(5) /* Transmit/Receive data ready */ 2538c2ecf20Sopenharmony_ci 2548c2ecf20Sopenharmony_ci/* 2558c2ecf20Sopenharmony_ci * DAVINCI_MCASP_AMUTE_REG - Mute Control Register Bits 2568c2ecf20Sopenharmony_ci */ 2578c2ecf20Sopenharmony_ci#define MUTENA(val) (val) 2588c2ecf20Sopenharmony_ci#define MUTEINPOL BIT(2) 2598c2ecf20Sopenharmony_ci#define MUTEINENA BIT(3) 2608c2ecf20Sopenharmony_ci#define MUTEIN BIT(4) 2618c2ecf20Sopenharmony_ci#define MUTER BIT(5) 2628c2ecf20Sopenharmony_ci#define MUTEX BIT(6) 2638c2ecf20Sopenharmony_ci#define MUTEFSR BIT(7) 2648c2ecf20Sopenharmony_ci#define MUTEFSX BIT(8) 2658c2ecf20Sopenharmony_ci#define MUTEBADCLKR BIT(9) 2668c2ecf20Sopenharmony_ci#define MUTEBADCLKX BIT(10) 2678c2ecf20Sopenharmony_ci#define MUTERXDMAERR BIT(11) 2688c2ecf20Sopenharmony_ci#define MUTETXDMAERR BIT(12) 2698c2ecf20Sopenharmony_ci 2708c2ecf20Sopenharmony_ci/* 2718c2ecf20Sopenharmony_ci * DAVINCI_MCASP_REVTCTL_REG - Receiver DMA Event Control Register bits 2728c2ecf20Sopenharmony_ci */ 2738c2ecf20Sopenharmony_ci#define RXDATADMADIS BIT(0) 2748c2ecf20Sopenharmony_ci 2758c2ecf20Sopenharmony_ci/* 2768c2ecf20Sopenharmony_ci * DAVINCI_MCASP_XEVTCTL_REG - Transmitter DMA Event Control Register bits 2778c2ecf20Sopenharmony_ci */ 2788c2ecf20Sopenharmony_ci#define TXDATADMADIS BIT(0) 2798c2ecf20Sopenharmony_ci 2808c2ecf20Sopenharmony_ci/* 2818c2ecf20Sopenharmony_ci * DAVINCI_MCASP_EVTCTLR_REG - Receiver Interrupt Control Register Bits 2828c2ecf20Sopenharmony_ci */ 2838c2ecf20Sopenharmony_ci#define ROVRN BIT(0) 2848c2ecf20Sopenharmony_ci 2858c2ecf20Sopenharmony_ci/* 2868c2ecf20Sopenharmony_ci * DAVINCI_MCASP_EVTCTLX_REG - Transmitter Interrupt Control Register Bits 2878c2ecf20Sopenharmony_ci */ 2888c2ecf20Sopenharmony_ci#define XUNDRN BIT(0) 2898c2ecf20Sopenharmony_ci 2908c2ecf20Sopenharmony_ci/* 2918c2ecf20Sopenharmony_ci * DAVINCI_MCASP_W[R]FIFOCTL - Write/Read FIFO Control Register bits 2928c2ecf20Sopenharmony_ci */ 2938c2ecf20Sopenharmony_ci#define FIFO_ENABLE BIT(16) 2948c2ecf20Sopenharmony_ci#define NUMEVT_MASK (0xFF << 8) 2958c2ecf20Sopenharmony_ci#define NUMEVT(x) (((x) & 0xFF) << 8) 2968c2ecf20Sopenharmony_ci#define NUMDMA_MASK (0xFF) 2978c2ecf20Sopenharmony_ci 2988c2ecf20Sopenharmony_ci/* Source of High-frequency transmit/receive clock */ 2998c2ecf20Sopenharmony_ci#define MCASP_CLK_HCLK_AHCLK 0 /* AHCLKX/R */ 3008c2ecf20Sopenharmony_ci#define MCASP_CLK_HCLK_AUXCLK 1 /* Internal functional clock */ 3018c2ecf20Sopenharmony_ci 3028c2ecf20Sopenharmony_ci/* clock divider IDs */ 3038c2ecf20Sopenharmony_ci#define MCASP_CLKDIV_AUXCLK 0 /* HCLK divider from AUXCLK */ 3048c2ecf20Sopenharmony_ci#define MCASP_CLKDIV_BCLK 1 /* BCLK divider from HCLK */ 3058c2ecf20Sopenharmony_ci#define MCASP_CLKDIV_BCLK_FS_RATIO 2 /* to set BCLK FS ration */ 3068c2ecf20Sopenharmony_ci 3078c2ecf20Sopenharmony_ci#endif /* DAVINCI_MCASP_H */ 308