xref: /openbmc/u-boot/arch/m68k/include/asm/coldfire/ssi.h (revision e8f80a5a)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
2819833afSPeter Tyser /*
3819833afSPeter Tyser  * SSI Internal Memory Map
4819833afSPeter Tyser  *
5819833afSPeter Tyser  * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
6819833afSPeter Tyser  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
7819833afSPeter Tyser  */
8819833afSPeter Tyser 
9819833afSPeter Tyser #ifndef __SSI_H__
10819833afSPeter Tyser #define __SSI_H__
11819833afSPeter Tyser 
12819833afSPeter Tyser typedef struct ssi {
13819833afSPeter Tyser 	u32 tx0;
14819833afSPeter Tyser 	u32 tx1;
15819833afSPeter Tyser 	u32 rx0;
16819833afSPeter Tyser 	u32 rx1;
17819833afSPeter Tyser 	u32 cr;
18819833afSPeter Tyser 	u32 isr;
19819833afSPeter Tyser 	u32 ier;
20819833afSPeter Tyser 	u32 tcr;
21819833afSPeter Tyser 	u32 rcr;
22819833afSPeter Tyser 	u32 ccr;
23819833afSPeter Tyser 	u8 resv0[0x4];
24819833afSPeter Tyser 	u32 fcsr;
25819833afSPeter Tyser 	u8 resv1[0x8];
26819833afSPeter Tyser 	u32 acr;
27819833afSPeter Tyser 	u32 acadd;
28819833afSPeter Tyser 	u32 acdat;
29819833afSPeter Tyser 	u32 atag;
30819833afSPeter Tyser 	u32 tmask;
31819833afSPeter Tyser 	u32 rmask;
32819833afSPeter Tyser } ssi_t;
33819833afSPeter Tyser 
34819833afSPeter Tyser #define SSI_CR_CIS			(0x00000200)
35819833afSPeter Tyser #define SSI_CR_TCH			(0x00000100)
36819833afSPeter Tyser #define SSI_CR_MCE			(0x00000080)
37819833afSPeter Tyser #define SSI_CR_I2S_MASK			(0xFFFFFF9F)
38819833afSPeter Tyser #define SSI_CR_I2S_SLAVE		(0x00000040)
39819833afSPeter Tyser #define SSI_CR_I2S_MASTER		(0x00000020)
40819833afSPeter Tyser #define SSI_CR_I2S_NORMAL		(0x00000000)
41819833afSPeter Tyser #define SSI_CR_SYN			(0x00000010)
42819833afSPeter Tyser #define SSI_CR_NET			(0x00000008)
43819833afSPeter Tyser #define SSI_CR_RE			(0x00000004)
44819833afSPeter Tyser #define SSI_CR_TE			(0x00000002)
45819833afSPeter Tyser #define SSI_CR_SSI_EN			(0x00000001)
46819833afSPeter Tyser 
47819833afSPeter Tyser #define SSI_ISR_CMDAU			(0x00040000)
48819833afSPeter Tyser #define SSI_ISR_CMDDU			(0x00020000)
49819833afSPeter Tyser #define SSI_ISR_RXT			(0x00010000)
50819833afSPeter Tyser #define SSI_ISR_RDR1			(0x00008000)
51819833afSPeter Tyser #define SSI_ISR_RDR0			(0x00004000)
52819833afSPeter Tyser #define SSI_ISR_TDE1			(0x00002000)
53819833afSPeter Tyser #define SSI_ISR_TDE0			(0x00001000)
54819833afSPeter Tyser #define SSI_ISR_ROE1			(0x00000800)
55819833afSPeter Tyser #define SSI_ISR_ROE0			(0x00000400)
56819833afSPeter Tyser #define SSI_ISR_TUE1			(0x00000200)
57819833afSPeter Tyser #define SSI_ISR_TUE0			(0x00000100)
58819833afSPeter Tyser #define SSI_ISR_TFS			(0x00000080)
59819833afSPeter Tyser #define SSI_ISR_RFS			(0x00000040)
60819833afSPeter Tyser #define SSI_ISR_TLS			(0x00000020)
61819833afSPeter Tyser #define SSI_ISR_RLS			(0x00000010)
62819833afSPeter Tyser #define SSI_ISR_RFF1			(0x00000008)
63819833afSPeter Tyser #define SSI_ISR_RFF0			(0x00000004)
64819833afSPeter Tyser #define SSI_ISR_TFE1			(0x00000002)
65819833afSPeter Tyser #define SSI_ISR_TFE0			(0x00000001)
66819833afSPeter Tyser 
67819833afSPeter Tyser #define SSI_IER_RDMAE			(0x00400000)
68819833afSPeter Tyser #define SSI_IER_RIE			(0x00200000)
69819833afSPeter Tyser #define SSI_IER_TDMAE			(0x00100000)
70819833afSPeter Tyser #define SSI_IER_TIE			(0x00080000)
71819833afSPeter Tyser #define SSI_IER_CMDAU			(0x00040000)
72819833afSPeter Tyser #define SSI_IER_CMDU			(0x00020000)
73819833afSPeter Tyser #define SSI_IER_RXT			(0x00010000)
74819833afSPeter Tyser #define SSI_IER_RDR1			(0x00008000)
75819833afSPeter Tyser #define SSI_IER_RDR0			(0x00004000)
76819833afSPeter Tyser #define SSI_IER_TDE1			(0x00002000)
77819833afSPeter Tyser #define SSI_IER_TDE0			(0x00001000)
78819833afSPeter Tyser #define SSI_IER_ROE1			(0x00000800)
79819833afSPeter Tyser #define SSI_IER_ROE0			(0x00000400)
80819833afSPeter Tyser #define SSI_IER_TUE1			(0x00000200)
81819833afSPeter Tyser #define SSI_IER_TUE0			(0x00000100)
82819833afSPeter Tyser #define SSI_IER_TFS			(0x00000080)
83819833afSPeter Tyser #define SSI_IER_RFS			(0x00000040)
84819833afSPeter Tyser #define SSI_IER_TLS			(0x00000020)
85819833afSPeter Tyser #define SSI_IER_RLS			(0x00000010)
86819833afSPeter Tyser #define SSI_IER_RFF1			(0x00000008)
87819833afSPeter Tyser #define SSI_IER_RFF0			(0x00000004)
88819833afSPeter Tyser #define SSI_IER_TFE1			(0x00000002)
89819833afSPeter Tyser #define SSI_IER_TFE0			(0x00000001)
90819833afSPeter Tyser 
91819833afSPeter Tyser #define SSI_TCR_TXBIT0			(0x00000200)
92819833afSPeter Tyser #define SSI_TCR_TFEN1			(0x00000100)
93819833afSPeter Tyser #define SSI_TCR_TFEN0			(0x00000080)
94819833afSPeter Tyser #define SSI_TCR_TFDIR			(0x00000040)
95819833afSPeter Tyser #define SSI_TCR_TXDIR			(0x00000020)
96819833afSPeter Tyser #define SSI_TCR_TSHFD			(0x00000010)
97819833afSPeter Tyser #define SSI_TCR_TSCKP			(0x00000008)
98819833afSPeter Tyser #define SSI_TCR_TFSI			(0x00000004)
99819833afSPeter Tyser #define SSI_TCR_TFSL			(0x00000002)
100819833afSPeter Tyser #define SSI_TCR_TEFS			(0x00000001)
101819833afSPeter Tyser 
102819833afSPeter Tyser #define SSI_RCR_RXEXT			(0x00000400)
103819833afSPeter Tyser #define SSI_RCR_RXBIT0			(0x00000200)
104819833afSPeter Tyser #define SSI_RCR_RFEN1			(0x00000100)
105819833afSPeter Tyser #define SSI_RCR_RFEN0			(0x00000080)
106819833afSPeter Tyser #define SSI_RCR_RSHFD			(0x00000010)
107819833afSPeter Tyser #define SSI_RCR_RSCKP			(0x00000008)
108819833afSPeter Tyser #define SSI_RCR_RFSI			(0x00000004)
109819833afSPeter Tyser #define SSI_RCR_RFSL			(0x00000002)
110819833afSPeter Tyser #define SSI_RCR_REFS			(0x00000001)
111819833afSPeter Tyser 
112819833afSPeter Tyser #define SSI_CCR_DIV2			(0x00040000)
113819833afSPeter Tyser #define SSI_CCR_PSR			(0x00020000)
114819833afSPeter Tyser #define SSI_CCR_WL(x)			(((x) & 0x0F) << 13)
115819833afSPeter Tyser #define SSI_CCR_WL_MASK			(0xFFFE1FFF)
116819833afSPeter Tyser #define SSI_CCR_DC(x)			(((x)& 0x1F) << 8)
117819833afSPeter Tyser #define SSI_CCR_DC_MASK			(0xFFFFE0FF)
118819833afSPeter Tyser #define SSI_CCR_PM(x)			((x) & 0xFF)
119819833afSPeter Tyser #define SSI_CCR_PM_MASK			(0xFFFFFF00)
120819833afSPeter Tyser 
121819833afSPeter Tyser #define SSI_FCSR_RFCNT1(x)		(((x) & 0x0F) << 28)
122819833afSPeter Tyser #define SSI_FCSR_RFCNT1_MASK		(0x0FFFFFFF)
123819833afSPeter Tyser #define SSI_FCSR_TFCNT1(x)		(((x) & 0x0F) << 24)
124819833afSPeter Tyser #define SSI_FCSR_TFCNT1_MASK		(0xF0FFFFFF)
125819833afSPeter Tyser #define SSI_FCSR_RFWM1(x)		(((x) & 0x0F) << 20)
126819833afSPeter Tyser #define SSI_FCSR_RFWM1_MASK		(0xFF0FFFFF)
127819833afSPeter Tyser #define SSI_FCSR_TFWM1(x)		(((x) & 0x0F) << 16)
128819833afSPeter Tyser #define SSI_FCSR_TFWM1_MASK		(0xFFF0FFFF)
129819833afSPeter Tyser #define SSI_FCSR_RFCNT0(x)		(((x) & 0x0F) << 12)
130819833afSPeter Tyser #define SSI_FCSR_RFCNT0_MASK		(0xFFFF0FFF)
131819833afSPeter Tyser #define SSI_FCSR_TFCNT0(x)		(((x) & 0x0F) << 8)
132819833afSPeter Tyser #define SSI_FCSR_TFCNT0_MASK		(0xFFFFF0FF)
133819833afSPeter Tyser #define SSI_FCSR_RFWM0(x)		(((x) & 0x0F) << 4)
134819833afSPeter Tyser #define SSI_FCSR_RFWM0_MASK		(0xFFFFFF0F)
135819833afSPeter Tyser #define SSI_FCSR_TFWM0(x)		((x) & 0x0F)
136819833afSPeter Tyser #define SSI_FCSR_TFWM0_MASK		(0xFFFFFFF0)
137819833afSPeter Tyser 
138819833afSPeter Tyser #define SSI_ACR_FRDIV(x)		(((x) & 0x3F) << 5)
139819833afSPeter Tyser #define SSI_ACR_FRDIV_MASK		(0xFFFFF81F)
140819833afSPeter Tyser #define SSI_ACR_WR			(0x00000010)
141819833afSPeter Tyser #define SSI_ACR_RD			(0x00000008)
142819833afSPeter Tyser #define SSI_ACR_TIF			(0x00000004)
143819833afSPeter Tyser #define SSI_ACR_FV			(0x00000002)
144819833afSPeter Tyser #define SSI_ACR_AC97EN			(0x00000001)
145819833afSPeter Tyser 
146819833afSPeter Tyser #define SSI_ACADD_SSI_ACADD(x)		((x) & 0x0007FFFF)
147819833afSPeter Tyser 
148819833afSPeter Tyser #define SSI_ACDAT_SSI_ACDAT(x)		((x) & 0x0007FFFF)
149819833afSPeter Tyser 
150819833afSPeter Tyser #define SSI_ATAG_DDI_ATAG(x)		((x) & 0x0000FFFF)
151819833afSPeter Tyser 
152819833afSPeter Tyser #endif					/* __SSI_H__ */
153