summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-06-13 19:03:33 +0200
committerAmaury Pouly <amaury.pouly@gmail.com>2013-06-15 22:27:34 +0200
commit017667c2dc9843eb5082e991f421c773636dcf36 (patch)
tree60432008dd3bc012ac60cbfa771305f6d894dd84 /firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h
parent97b9ade63945fd8b8261fb0cf1dd0aa225c1a319 (diff)
downloadrockbox-017667c2dc9843eb5082e991f421c773636dcf36.tar.gz
rockbox-017667c2dc9843eb5082e991f421c773636dcf36.zip
imx233: generate register headers for stmp3600, stmp3700 and imx233
Change-Id: Ia87086f4f4f4ecbb844ffd869407b14ea2509934
Diffstat (limited to 'firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h')
-rw-r--r--firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h541
1 files changed, 541 insertions, 0 deletions
diff --git a/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h b/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h
new file mode 100644
index 0000000000..2c589f5256
--- /dev/null
+++ b/firmware/target/arm/imx233/regs/stmp3600/regs-ssp.h
@@ -0,0 +1,541 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * This file was automatically generated by headergen, DO NOT EDIT it.
9 * headergen version: 2.1.7
10 * XML versions: stmp3600:2.3.0
11 *
12 * Copyright (C) 2013 by Amaury Pouly
13 *
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * as published by the Free Software Foundation; either version 2
17 * of the License, or (at your option) any later version.
18 *
19 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
20 * KIND, either express or implied.
21 *
22 ****************************************************************************/
23#ifndef __HEADERGEN__STMP3600__SSP__H__
24#define __HEADERGEN__STMP3600__SSP__H__
25
26#define REGS_SSP_BASE (0x80010000)
27
28#define REGS_SSP_VERSION "2.3.0"
29
30/**
31 * Register: HW_SSP_CTRL0
32 * Address: 0
33 * SCT: yes
34*/
35#define HW_SSP_CTRL0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x0))
36#define HW_SSP_CTRL0_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x4))
37#define HW_SSP_CTRL0_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0x8))
38#define HW_SSP_CTRL0_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x0 + 0xc))
39#define BP_SSP_CTRL0_SFTRST 31
40#define BM_SSP_CTRL0_SFTRST 0x80000000
41#define BF_SSP_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000)
42#define BP_SSP_CTRL0_CLKGATE 30
43#define BM_SSP_CTRL0_CLKGATE 0x40000000
44#define BF_SSP_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000)
45#define BP_SSP_CTRL0_RUN 29
46#define BM_SSP_CTRL0_RUN 0x20000000
47#define BF_SSP_CTRL0_RUN(v) (((v) << 29) & 0x20000000)
48#define BP_SSP_CTRL0_HALF_DUPLEX 28
49#define BM_SSP_CTRL0_HALF_DUPLEX 0x10000000
50#define BF_SSP_CTRL0_HALF_DUPLEX(v) (((v) << 28) & 0x10000000)
51#define BP_SSP_CTRL0_LOCK_CS 27
52#define BM_SSP_CTRL0_LOCK_CS 0x8000000
53#define BF_SSP_CTRL0_LOCK_CS(v) (((v) << 27) & 0x8000000)
54#define BP_SSP_CTRL0_IGNORE_CRC 26
55#define BM_SSP_CTRL0_IGNORE_CRC 0x4000000
56#define BF_SSP_CTRL0_IGNORE_CRC(v) (((v) << 26) & 0x4000000)
57#define BP_SSP_CTRL0_READ 25
58#define BM_SSP_CTRL0_READ 0x2000000
59#define BF_SSP_CTRL0_READ(v) (((v) << 25) & 0x2000000)
60#define BP_SSP_CTRL0_DATA_XFER 24
61#define BM_SSP_CTRL0_DATA_XFER 0x1000000
62#define BF_SSP_CTRL0_DATA_XFER(v) (((v) << 24) & 0x1000000)
63#define BP_SSP_CTRL0_SDIO_IRQ 23
64#define BM_SSP_CTRL0_SDIO_IRQ 0x800000
65#define BF_SSP_CTRL0_SDIO_IRQ(v) (((v) << 23) & 0x800000)
66#define BP_SSP_CTRL0_BUS_WIDTH 22
67#define BM_SSP_CTRL0_BUS_WIDTH 0x400000
68#define BV_SSP_CTRL0_BUS_WIDTH__ONE_BIT 0x0
69#define BV_SSP_CTRL0_BUS_WIDTH__FOUR_BIT 0x1
70#define BF_SSP_CTRL0_BUS_WIDTH(v) (((v) << 22) & 0x400000)
71#define BF_SSP_CTRL0_BUS_WIDTH_V(v) ((BV_SSP_CTRL0_BUS_WIDTH__##v << 22) & 0x400000)
72#define BP_SSP_CTRL0_WAIT_FOR_IRQ 21
73#define BM_SSP_CTRL0_WAIT_FOR_IRQ 0x200000
74#define BF_SSP_CTRL0_WAIT_FOR_IRQ(v) (((v) << 21) & 0x200000)
75#define BP_SSP_CTRL0_WAIT_FOR_CMD 20
76#define BM_SSP_CTRL0_WAIT_FOR_CMD 0x100000
77#define BF_SSP_CTRL0_WAIT_FOR_CMD(v) (((v) << 20) & 0x100000)
78#define BP_SSP_CTRL0_LONG_RESP 19
79#define BM_SSP_CTRL0_LONG_RESP 0x80000
80#define BF_SSP_CTRL0_LONG_RESP(v) (((v) << 19) & 0x80000)
81#define BP_SSP_CTRL0_CHECK_RESP 18
82#define BM_SSP_CTRL0_CHECK_RESP 0x40000
83#define BF_SSP_CTRL0_CHECK_RESP(v) (((v) << 18) & 0x40000)
84#define BP_SSP_CTRL0_GET_RESP 17
85#define BM_SSP_CTRL0_GET_RESP 0x20000
86#define BF_SSP_CTRL0_GET_RESP(v) (((v) << 17) & 0x20000)
87#define BP_SSP_CTRL0_ENABLE 16
88#define BM_SSP_CTRL0_ENABLE 0x10000
89#define BF_SSP_CTRL0_ENABLE(v) (((v) << 16) & 0x10000)
90#define BP_SSP_CTRL0_XFER_COUNT 0
91#define BM_SSP_CTRL0_XFER_COUNT 0xffff
92#define BF_SSP_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff)
93
94/**
95 * Register: HW_SSP_CMD0
96 * Address: 0x10
97 * SCT: yes
98*/
99#define HW_SSP_CMD0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x0))
100#define HW_SSP_CMD0_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x4))
101#define HW_SSP_CMD0_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0x8))
102#define HW_SSP_CMD0_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x10 + 0xc))
103#define BP_SSP_CMD0_CMD 0
104#define BM_SSP_CMD0_CMD 0xff
105#define BV_SSP_CMD0_CMD__MMC_GO_IDLE_STATE 0x0
106#define BV_SSP_CMD0_CMD__MMC_SEND_OP_COND 0x1
107#define BV_SSP_CMD0_CMD__MMC_ALL_SEND_CID 0x2
108#define BV_SSP_CMD0_CMD__MMC_SET_RELATIVE_ADDR 0x3
109#define BV_SSP_CMD0_CMD__MMC_SET_DSR 0x4
110#define BV_SSP_CMD0_CMD__MMC_RESERVED_5 0x5
111#define BV_SSP_CMD0_CMD__MMC_SWITCH 0x6
112#define BV_SSP_CMD0_CMD__MMC_SELECT_DESELECT_CARD 0x7
113#define BV_SSP_CMD0_CMD__MMC_SEND_EXT_CSD 0x8
114#define BV_SSP_CMD0_CMD__MMC_SEND_CSD 0x9
115#define BV_SSP_CMD0_CMD__MMC_SEND_CID 0xa
116#define BV_SSP_CMD0_CMD__MMC_READ_DAT_UNTIL_STOP 0xb
117#define BV_SSP_CMD0_CMD__MMC_STOP_TRANSMISSION 0xc
118#define BV_SSP_CMD0_CMD__MMC_SEND_STATUS 0xd
119#define BV_SSP_CMD0_CMD__MMC_BUSTEST_R 0xe
120#define BV_SSP_CMD0_CMD__MMC_GO_INACTIVE_STATE 0xf
121#define BV_SSP_CMD0_CMD__MMC_SET_BLOCKLEN 0x10
122#define BV_SSP_CMD0_CMD__MMC_READ_SINGLE_BLOCK 0x11
123#define BV_SSP_CMD0_CMD__MMC_READ_MULTIPLE_BLOCK 0x12
124#define BV_SSP_CMD0_CMD__MMC_BUSTEST_W 0x13
125#define BV_SSP_CMD0_CMD__MMC_WRITE_DAT_UNTIL_STOP 0x14
126#define BV_SSP_CMD0_CMD__MMC_SET_BLOCK_COUNT 0x17
127#define BV_SSP_CMD0_CMD__MMC_WRITE_BLOCK 0x18
128#define BV_SSP_CMD0_CMD__MMC_WRITE_MULTIPLE_BLOCK 0x19
129#define BV_SSP_CMD0_CMD__MMC_PROGRAM_CID 0x1a
130#define BV_SSP_CMD0_CMD__MMC_PROGRAM_CSD 0x1b
131#define BV_SSP_CMD0_CMD__MMC_SET_WRITE_PROT 0x1c
132#define BV_SSP_CMD0_CMD__MMC_CLR_WRITE_PROT 0x1d
133#define BV_SSP_CMD0_CMD__MMC_SEND_WRITE_PROT 0x1e
134#define BV_SSP_CMD0_CMD__MMC_ERASE_GROUP_START 0x23
135#define BV_SSP_CMD0_CMD__MMC_ERASE_GROUP_END 0x24
136#define BV_SSP_CMD0_CMD__MMC_ERASE 0x26
137#define BV_SSP_CMD0_CMD__MMC_FAST_IO 0x27
138#define BV_SSP_CMD0_CMD__MMC_GO_IRQ_STATE 0x28
139#define BV_SSP_CMD0_CMD__MMC_LOCK_UNLOCK 0x2a
140#define BV_SSP_CMD0_CMD__MMC_APP_CMD 0x37
141#define BV_SSP_CMD0_CMD__MMC_GEN_CMD 0x38
142#define BV_SSP_CMD0_CMD__SD_GO_IDLE_STATE 0x0
143#define BV_SSP_CMD0_CMD__SD_ALL_SEND_CID 0x2
144#define BV_SSP_CMD0_CMD__SD_SEND_RELATIVE_ADDR 0x3
145#define BV_SSP_CMD0_CMD__SD_SET_DSR 0x4
146#define BV_SSP_CMD0_CMD__SD_IO_SEND_OP_COND 0x5
147#define BV_SSP_CMD0_CMD__SD_SELECT_DESELECT_CARD 0x7
148#define BV_SSP_CMD0_CMD__SD_SEND_CSD 0x9
149#define BV_SSP_CMD0_CMD__SD_SEND_CID 0xa
150#define BV_SSP_CMD0_CMD__SD_STOP_TRANSMISSION 0xc
151#define BV_SSP_CMD0_CMD__SD_SEND_STATUS 0xd
152#define BV_SSP_CMD0_CMD__SD_GO_INACTIVE_STATE 0xf
153#define BV_SSP_CMD0_CMD__SD_SET_BLOCKLEN 0x10
154#define BV_SSP_CMD0_CMD__SD_READ_SINGLE_BLOCK 0x11
155#define BV_SSP_CMD0_CMD__SD_READ_MULTIPLE_BLOCK 0x12
156#define BV_SSP_CMD0_CMD__SD_WRITE_BLOCK 0x18
157#define BV_SSP_CMD0_CMD__SD_WRITE_MULTIPLE_BLOCK 0x19
158#define BV_SSP_CMD0_CMD__SD_PROGRAM_CSD 0x1b
159#define BV_SSP_CMD0_CMD__SD_SET_WRITE_PROT 0x1c
160#define BV_SSP_CMD0_CMD__SD_CLR_WRITE_PROT 0x1d
161#define BV_SSP_CMD0_CMD__SD_SEND_WRITE_PROT 0x1e
162#define BV_SSP_CMD0_CMD__SD_ERASE_WR_BLK_START 0x20
163#define BV_SSP_CMD0_CMD__SD_ERASE_WR_BLK_END 0x21
164#define BV_SSP_CMD0_CMD__SD_ERASE_GROUP_START 0x23
165#define BV_SSP_CMD0_CMD__SD_ERASE_GROUP_END 0x24
166#define BV_SSP_CMD0_CMD__SD_ERASE 0x26
167#define BV_SSP_CMD0_CMD__SD_LOCK_UNLOCK 0x2a
168#define BV_SSP_CMD0_CMD__SD_IO_RW_DIRECT 0x34
169#define BV_SSP_CMD0_CMD__SD_IO_RW_EXTENDED 0x35
170#define BV_SSP_CMD0_CMD__SD_APP_CMD 0x37
171#define BV_SSP_CMD0_CMD__SD_GEN_CMD 0x38
172#define BF_SSP_CMD0_CMD(v) (((v) << 0) & 0xff)
173#define BF_SSP_CMD0_CMD_V(v) ((BV_SSP_CMD0_CMD__##v << 0) & 0xff)
174
175/**
176 * Register: HW_SSP_CMD1
177 * Address: 0x20
178 * SCT: no
179*/
180#define HW_SSP_CMD1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x20))
181#define BP_SSP_CMD1_CMD_ARG 0
182#define BM_SSP_CMD1_CMD_ARG 0xffffffff
183#define BF_SSP_CMD1_CMD_ARG(v) (((v) << 0) & 0xffffffff)
184
185/**
186 * Register: HW_SSP_COMPREF
187 * Address: 0x30
188 * SCT: no
189*/
190#define HW_SSP_COMPREF (*(volatile unsigned long *)(REGS_SSP_BASE + 0x30))
191#define BP_SSP_COMPREF_REFERENCE 0
192#define BM_SSP_COMPREF_REFERENCE 0xffffffff
193#define BF_SSP_COMPREF_REFERENCE(v) (((v) << 0) & 0xffffffff)
194
195/**
196 * Register: HW_SSP_COMPMASK
197 * Address: 0x40
198 * SCT: no
199*/
200#define HW_SSP_COMPMASK (*(volatile unsigned long *)(REGS_SSP_BASE + 0x40))
201#define BP_SSP_COMPMASK_MASK 0
202#define BM_SSP_COMPMASK_MASK 0xffffffff
203#define BF_SSP_COMPMASK_MASK(v) (((v) << 0) & 0xffffffff)
204
205/**
206 * Register: HW_SSP_TIMING
207 * Address: 0x50
208 * SCT: no
209*/
210#define HW_SSP_TIMING (*(volatile unsigned long *)(REGS_SSP_BASE + 0x50))
211#define BP_SSP_TIMING_TIMEOUT 16
212#define BM_SSP_TIMING_TIMEOUT 0xffff0000
213#define BF_SSP_TIMING_TIMEOUT(v) (((v) << 16) & 0xffff0000)
214#define BP_SSP_TIMING_CLOCK_DIVIDE 8
215#define BM_SSP_TIMING_CLOCK_DIVIDE 0xff00
216#define BF_SSP_TIMING_CLOCK_DIVIDE(v) (((v) << 8) & 0xff00)
217#define BP_SSP_TIMING_CLOCK_RATE 0
218#define BM_SSP_TIMING_CLOCK_RATE 0xff
219#define BF_SSP_TIMING_CLOCK_RATE(v) (((v) << 0) & 0xff)
220
221/**
222 * Register: HW_SSP_CTRL1
223 * Address: 0x60
224 * SCT: yes
225*/
226#define HW_SSP_CTRL1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x0))
227#define HW_SSP_CTRL1_SET (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x4))
228#define HW_SSP_CTRL1_CLR (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0x8))
229#define HW_SSP_CTRL1_TOG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x60 + 0xc))
230#define BP_SSP_CTRL1_SDIO_IRQ 31
231#define BM_SSP_CTRL1_SDIO_IRQ 0x80000000
232#define BF_SSP_CTRL1_SDIO_IRQ(v) (((v) << 31) & 0x80000000)
233#define BP_SSP_CTRL1_SDIO_IRQ_EN 30
234#define BM_SSP_CTRL1_SDIO_IRQ_EN 0x40000000
235#define BF_SSP_CTRL1_SDIO_IRQ_EN(v) (((v) << 30) & 0x40000000)
236#define BP_SSP_CTRL1_RESP_ERR_IRQ 29
237#define BM_SSP_CTRL1_RESP_ERR_IRQ 0x20000000
238#define BF_SSP_CTRL1_RESP_ERR_IRQ(v) (((v) << 29) & 0x20000000)
239#define BP_SSP_CTRL1_RESP_ERR_IRQ_EN 28
240#define BM_SSP_CTRL1_RESP_ERR_IRQ_EN 0x10000000
241#define BF_SSP_CTRL1_RESP_ERR_IRQ_EN(v) (((v) << 28) & 0x10000000)
242#define BP_SSP_CTRL1_RESP_TIMEOUT_IRQ 27
243#define BM_SSP_CTRL1_RESP_TIMEOUT_IRQ 0x8000000
244#define BF_SSP_CTRL1_RESP_TIMEOUT_IRQ(v) (((v) << 27) & 0x8000000)
245#define BP_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN 26
246#define BM_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN 0x4000000
247#define BF_SSP_CTRL1_RESP_TIMEOUT_IRQ_EN(v) (((v) << 26) & 0x4000000)
248#define BP_SSP_CTRL1_DATA_TIMEOUT_IRQ 25
249#define BM_SSP_CTRL1_DATA_TIMEOUT_IRQ 0x2000000
250#define BF_SSP_CTRL1_DATA_TIMEOUT_IRQ(v) (((v) << 25) & 0x2000000)
251#define BP_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN 24
252#define BM_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN 0x1000000
253#define BF_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN(v) (((v) << 24) & 0x1000000)
254#define BP_SSP_CTRL1_DATA_CRC_IRQ 23
255#define BM_SSP_CTRL1_DATA_CRC_IRQ 0x800000
256#define BF_SSP_CTRL1_DATA_CRC_IRQ(v) (((v) << 23) & 0x800000)
257#define BP_SSP_CTRL1_DATA_CRC_IRQ_EN 22
258#define BM_SSP_CTRL1_DATA_CRC_IRQ_EN 0x400000
259#define BF_SSP_CTRL1_DATA_CRC_IRQ_EN(v) (((v) << 22) & 0x400000)
260#define BP_SSP_CTRL1_XMIT_IRQ 21
261#define BM_SSP_CTRL1_XMIT_IRQ 0x200000
262#define BF_SSP_CTRL1_XMIT_IRQ(v) (((v) << 21) & 0x200000)
263#define BP_SSP_CTRL1_XMIT_IRQ_EN 20
264#define BM_SSP_CTRL1_XMIT_IRQ_EN 0x100000
265#define BF_SSP_CTRL1_XMIT_IRQ_EN(v) (((v) << 20) & 0x100000)
266#define BP_SSP_CTRL1_RECV_IRQ 19
267#define BM_SSP_CTRL1_RECV_IRQ 0x80000
268#define BF_SSP_CTRL1_RECV_IRQ(v) (((v) << 19) & 0x80000)
269#define BP_SSP_CTRL1_RECV_IRQ_EN 18
270#define BM_SSP_CTRL1_RECV_IRQ_EN 0x40000
271#define BF_SSP_CTRL1_RECV_IRQ_EN(v) (((v) << 18) & 0x40000)
272#define BP_SSP_CTRL1_RECV_TIMEOUT_IRQ 17
273#define BM_SSP_CTRL1_RECV_TIMEOUT_IRQ 0x20000
274#define BF_SSP_CTRL1_RECV_TIMEOUT_IRQ(v) (((v) << 17) & 0x20000)
275#define BP_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN 16
276#define BM_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN 0x10000
277#define BF_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN(v) (((v) << 16) & 0x10000)
278#define BP_SSP_CTRL1_RECV_OVRFLW_IRQ 15
279#define BM_SSP_CTRL1_RECV_OVRFLW_IRQ 0x8000
280#define BF_SSP_CTRL1_RECV_OVRFLW_IRQ(v) (((v) << 15) & 0x8000)
281#define BP_SSP_CTRL1_RECV_OVRFLW_IRQ_EN 14
282#define BM_SSP_CTRL1_RECV_OVRFLW_IRQ_EN 0x4000
283#define BF_SSP_CTRL1_RECV_OVRFLW_IRQ_EN(v) (((v) << 14) & 0x4000)
284#define BP_SSP_CTRL1_DMA_ENABLE 13
285#define BM_SSP_CTRL1_DMA_ENABLE 0x2000
286#define BF_SSP_CTRL1_DMA_ENABLE(v) (((v) << 13) & 0x2000)
287#define BP_SSP_CTRL1_LOOPBACK 12
288#define BM_SSP_CTRL1_LOOPBACK 0x1000
289#define BF_SSP_CTRL1_LOOPBACK(v) (((v) << 12) & 0x1000)
290#define BP_SSP_CTRL1_SLAVE_OUT_DISABLE 11
291#define BM_SSP_CTRL1_SLAVE_OUT_DISABLE 0x800
292#define BF_SSP_CTRL1_SLAVE_OUT_DISABLE(v) (((v) << 11) & 0x800)
293#define BP_SSP_CTRL1_PHASE 10
294#define BM_SSP_CTRL1_PHASE 0x400
295#define BF_SSP_CTRL1_PHASE(v) (((v) << 10) & 0x400)
296#define BP_SSP_CTRL1_POLARITY 9
297#define BM_SSP_CTRL1_POLARITY 0x200
298#define BF_SSP_CTRL1_POLARITY(v) (((v) << 9) & 0x200)
299#define BP_SSP_CTRL1_SLAVE_MODE 8
300#define BM_SSP_CTRL1_SLAVE_MODE 0x100
301#define BF_SSP_CTRL1_SLAVE_MODE(v) (((v) << 8) & 0x100)
302#define BP_SSP_CTRL1_WORD_LENGTH 4
303#define BM_SSP_CTRL1_WORD_LENGTH 0xf0
304#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED0 0x0
305#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED1 0x1
306#define BV_SSP_CTRL1_WORD_LENGTH__RESERVED2 0x2
307#define BV_SSP_CTRL1_WORD_LENGTH__FOUR_BITS 0x3
308#define BV_SSP_CTRL1_WORD_LENGTH__EIGHT_BITS 0x7
309#define BV_SSP_CTRL1_WORD_LENGTH__SIXTEEN_BITS 0xf
310#define BF_SSP_CTRL1_WORD_LENGTH(v) (((v) << 4) & 0xf0)
311#define BF_SSP_CTRL1_WORD_LENGTH_V(v) ((BV_SSP_CTRL1_WORD_LENGTH__##v << 4) & 0xf0)
312#define BP_SSP_CTRL1_SSP_MODE 0
313#define BM_SSP_CTRL1_SSP_MODE 0xf
314#define BV_SSP_CTRL1_SSP_MODE__SPI 0x0
315#define BV_SSP_CTRL1_SSP_MODE__SSI 0x1
316#define BV_SSP_CTRL1_SSP_MODE__MICROWIRE 0x2
317#define BV_SSP_CTRL1_SSP_MODE__SD_MMC 0x3
318#define BV_SSP_CTRL1_SSP_MODE__MS 0x4
319#define BF_SSP_CTRL1_SSP_MODE(v) (((v) << 0) & 0xf)
320#define BF_SSP_CTRL1_SSP_MODE_V(v) ((BV_SSP_CTRL1_SSP_MODE__##v << 0) & 0xf)
321
322/**
323 * Register: HW_SSP_DATA
324 * Address: 0x70
325 * SCT: no
326*/
327#define HW_SSP_DATA (*(volatile unsigned long *)(REGS_SSP_BASE + 0x70))
328#define BP_SSP_DATA_DATA 0
329#define BM_SSP_DATA_DATA 0xffffffff
330#define BF_SSP_DATA_DATA(v) (((v) << 0) & 0xffffffff)
331
332/**
333 * Register: HW_SSP_SDRESP0
334 * Address: 0x80
335 * SCT: no
336*/
337#define HW_SSP_SDRESP0 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x80))
338#define BP_SSP_SDRESP0_RESP0 0
339#define BM_SSP_SDRESP0_RESP0 0xffffffff
340#define BF_SSP_SDRESP0_RESP0(v) (((v) << 0) & 0xffffffff)
341
342/**
343 * Register: HW_SSP_SDRESP1
344 * Address: 0x90
345 * SCT: no
346*/
347#define HW_SSP_SDRESP1 (*(volatile unsigned long *)(REGS_SSP_BASE + 0x90))
348#define BP_SSP_SDRESP1_RESP1 0
349#define BM_SSP_SDRESP1_RESP1 0xffffffff
350#define BF_SSP_SDRESP1_RESP1(v) (((v) << 0) & 0xffffffff)
351
352/**
353 * Register: HW_SSP_SDRESP2
354 * Address: 0xa0
355 * SCT: no
356*/
357#define HW_SSP_SDRESP2 (*(volatile unsigned long *)(REGS_SSP_BASE + 0xa0))
358#define BP_SSP_SDRESP2_RESP2 0
359#define BM_SSP_SDRESP2_RESP2 0xffffffff
360#define BF_SSP_SDRESP2_RESP2(v) (((v) << 0) & 0xffffffff)
361
362/**
363 * Register: HW_SSP_SDRESP3
364 * Address: 0xb0
365 * SCT: no
366*/
367#define HW_SSP_SDRESP3 (*(volatile unsigned long *)(REGS_SSP_BASE + 0xb0))
368#define BP_SSP_SDRESP3_RESP3 0
369#define BM_SSP_SDRESP3_RESP3 0xffffffff
370#define BF_SSP_SDRESP3_RESP3(v) (((v) << 0) & 0xffffffff)
371
372/**
373 * Register: HW_SSP_STATUS
374 * Address: 0xc0
375 * SCT: no
376*/
377#define HW_SSP_STATUS (*(volatile unsigned long *)(REGS_SSP_BASE + 0xc0))
378#define BP_SSP_STATUS_PRESENT 31
379#define BM_SSP_STATUS_PRESENT 0x80000000
380#define BF_SSP_STATUS_PRESENT(v) (((v) << 31) & 0x80000000)
381#define BP_SSP_STATUS_MS_PRESENT 30
382#define BM_SSP_STATUS_MS_PRESENT 0x40000000
383#define BF_SSP_STATUS_MS_PRESENT(v) (((v) << 30) & 0x40000000)
384#define BP_SSP_STATUS_SD_PRESENT 29
385#define BM_SSP_STATUS_SD_PRESENT 0x20000000
386#define BF_SSP_STATUS_SD_PRESENT(v) (((v) << 29) & 0x20000000)
387#define BP_SSP_STATUS_CARD_DETECT 28
388#define BM_SSP_STATUS_CARD_DETECT 0x10000000
389#define BF_SSP_STATUS_CARD_DETECT(v) (((v) << 28) & 0x10000000)
390#define BP_SSP_STATUS_RECV_COUNT 24
391#define BM_SSP_STATUS_RECV_COUNT 0xf000000
392#define BF_SSP_STATUS_RECV_COUNT(v) (((v) << 24) & 0xf000000)
393#define BP_SSP_STATUS_XMIT_COUNT 20
394#define BM_SSP_STATUS_XMIT_COUNT 0xf00000
395#define BF_SSP_STATUS_XMIT_COUNT(v) (((v) << 20) & 0xf00000)
396#define BP_SSP_STATUS_DMAREQ 19
397#define BM_SSP_STATUS_DMAREQ 0x80000
398#define BF_SSP_STATUS_DMAREQ(v) (((v) << 19) & 0x80000)
399#define BP_SSP_STATUS_DMAEND 18
400#define BM_SSP_STATUS_DMAEND 0x40000
401#define BF_SSP_STATUS_DMAEND(v) (((v) << 18) & 0x40000)
402#define BP_SSP_STATUS_SDIO_IRQ 17
403#define BM_SSP_STATUS_SDIO_IRQ 0x20000
404#define BF_SSP_STATUS_SDIO_IRQ(v) (((v) << 17) & 0x20000)
405#define BP_SSP_STATUS_RESP_CRC_ERR 16
406#define BM_SSP_STATUS_RESP_CRC_ERR 0x10000
407#define BF_SSP_STATUS_RESP_CRC_ERR(v) (((v) << 16) & 0x10000)
408#define BP_SSP_STATUS_RESP_ERR 15
409#define BM_SSP_STATUS_RESP_ERR 0x8000
410#define BF_SSP_STATUS_RESP_ERR(v) (((v) << 15) & 0x8000)
411#define BP_SSP_STATUS_RESP_TIMEOUT 14
412#define BM_SSP_STATUS_RESP_TIMEOUT 0x4000
413#define BF_SSP_STATUS_RESP_TIMEOUT(v) (((v) << 14) & 0x4000)
414#define BP_SSP_STATUS_DATA_CRC_ERR 13
415#define BM_SSP_STATUS_DATA_CRC_ERR 0x2000
416#define BF_SSP_STATUS_DATA_CRC_ERR(v) (((v) << 13) & 0x2000)
417#define BP_SSP_STATUS_TIMEOUT 12
418#define BM_SSP_STATUS_TIMEOUT 0x1000
419#define BF_SSP_STATUS_TIMEOUT(v) (((v) << 12) & 0x1000)
420#define BP_SSP_STATUS_RECV_TIMEOUT_STAT 11
421#define BM_SSP_STATUS_RECV_TIMEOUT_STAT 0x800
422#define BF_SSP_STATUS_RECV_TIMEOUT_STAT(v) (((v) << 11) & 0x800)
423#define BP_SSP_STATUS_RECV_DATA_STAT 10
424#define BM_SSP_STATUS_RECV_DATA_STAT 0x400
425#define BF_SSP_STATUS_RECV_DATA_STAT(v) (((v) << 10) & 0x400)
426#define BP_SSP_STATUS_RECV_OVRFLW 9
427#define BM_SSP_STATUS_RECV_OVRFLW 0x200
428#define BF_SSP_STATUS_RECV_OVRFLW(v) (((v) << 9) & 0x200)
429#define BP_SSP_STATUS_RECV_FULL 8
430#define BM_SSP_STATUS_RECV_FULL 0x100
431#define BF_SSP_STATUS_RECV_FULL(v) (((v) << 8) & 0x100)
432#define BP_SSP_STATUS_RECV_NOT_EMPTY 7
433#define BM_SSP_STATUS_RECV_NOT_EMPTY 0x80
434#define BF_SSP_STATUS_RECV_NOT_EMPTY(v) (((v) << 7) & 0x80)
435#define BP_SSP_STATUS_XMIT_NOT_FULL 6
436#define BM_SSP_STATUS_XMIT_NOT_FULL 0x40
437#define BF_SSP_STATUS_XMIT_NOT_FULL(v) (((v) << 6) & 0x40)
438#define BP_SSP_STATUS_XMIT_EMPTY 5
439#define BM_SSP_STATUS_XMIT_EMPTY 0x20
440#define BF_SSP_STATUS_XMIT_EMPTY(v) (((v) << 5) & 0x20)
441#define BP_SSP_STATUS_XMIT_UNDRFLW 4
442#define BM_SSP_STATUS_XMIT_UNDRFLW 0x10
443#define BF_SSP_STATUS_XMIT_UNDRFLW(v) (((v) << 4) & 0x10)
444#define BP_SSP_STATUS_CMD_BUSY 3
445#define BM_SSP_STATUS_CMD_BUSY 0x8
446#define BF_SSP_STATUS_CMD_BUSY(v) (((v) << 3) & 0x8)
447#define BP_SSP_STATUS_DATA_BUSY 2
448#define BM_SSP_STATUS_DATA_BUSY 0x4
449#define BF_SSP_STATUS_DATA_BUSY(v) (((v) << 2) & 0x4)
450#define BP_SSP_STATUS_DATA_XFER 1
451#define BM_SSP_STATUS_DATA_XFER 0x2
452#define BF_SSP_STATUS_DATA_XFER(v) (((v) << 1) & 0x2)
453#define BP_SSP_STATUS_BUSY 0
454#define BM_SSP_STATUS_BUSY 0x1
455#define BF_SSP_STATUS_BUSY(v) (((v) << 0) & 0x1)
456
457/**
458 * Register: HW_SSP_DEBUG
459 * Address: 0x100
460 * SCT: no
461*/
462#define HW_SSP_DEBUG (*(volatile unsigned long *)(REGS_SSP_BASE + 0x100))
463#define BP_SSP_DEBUG_DATACRC_ERR 28
464#define BM_SSP_DEBUG_DATACRC_ERR 0xf0000000
465#define BF_SSP_DEBUG_DATACRC_ERR(v) (((v) << 28) & 0xf0000000)
466#define BP_SSP_DEBUG_DATA_STALL 27
467#define BM_SSP_DEBUG_DATA_STALL 0x8000000
468#define BF_SSP_DEBUG_DATA_STALL(v) (((v) << 27) & 0x8000000)
469#define BP_SSP_DEBUG_DAT_SM 24
470#define BM_SSP_DEBUG_DAT_SM 0x7000000
471#define BV_SSP_DEBUG_DAT_SM__DSM_IDLE 0x0
472#define BV_SSP_DEBUG_DAT_SM__DSM_START 0x1
473#define BV_SSP_DEBUG_DAT_SM__DSM_WORD 0x2
474#define BV_SSP_DEBUG_DAT_SM__DSM_CRC1 0x3
475#define BV_SSP_DEBUG_DAT_SM__DSM_CRC2 0x4
476#define BV_SSP_DEBUG_DAT_SM__DSM_END 0x5
477#define BV_SSP_DEBUG_DAT_SM__DSM_RXDLY 0x6
478#define BF_SSP_DEBUG_DAT_SM(v) (((v) << 24) & 0x7000000)
479#define BF_SSP_DEBUG_DAT_SM_V(v) ((BV_SSP_DEBUG_DAT_SM__##v << 24) & 0x7000000)
480#define BP_SSP_DEBUG_MSTK_SM 20
481#define BM_SSP_DEBUG_MSTK_SM 0xf00000
482#define BV_SSP_DEBUG_MSTK_SM__MSTK_IDLE 0x0
483#define BV_SSP_DEBUG_MSTK_SM__MSTK_CKON 0x1
484#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS1 0x2
485#define BV_SSP_DEBUG_MSTK_SM__MSTK_TPC 0x3
486#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS2 0x4
487#define BV_SSP_DEBUG_MSTK_SM__MSTK_HDSHK 0x5
488#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS3 0x6
489#define BV_SSP_DEBUG_MSTK_SM__MSTK_RW 0x7
490#define BV_SSP_DEBUG_MSTK_SM__MSTK_CRC1 0x8
491#define BV_SSP_DEBUG_MSTK_SM__MSTK_CRC2 0x9
492#define BV_SSP_DEBUG_MSTK_SM__MSTK_BS0 0xa
493#define BV_SSP_DEBUG_MSTK_SM__MSTK_DONE 0xb
494#define BF_SSP_DEBUG_MSTK_SM(v) (((v) << 20) & 0xf00000)
495#define BF_SSP_DEBUG_MSTK_SM_V(v) ((BV_SSP_DEBUG_MSTK_SM__##v << 20) & 0xf00000)
496#define BP_SSP_DEBUG_CMD_OE 19
497#define BM_SSP_DEBUG_CMD_OE 0x80000
498#define BF_SSP_DEBUG_CMD_OE(v) (((v) << 19) & 0x80000)
499#define BP_SSP_DEBUG_CMD_SM 16
500#define BM_SSP_DEBUG_CMD_SM 0x70000
501#define BV_SSP_DEBUG_CMD_SM__CSM_IDLE 0x0
502#define BV_SSP_DEBUG_CMD_SM__CSM_INDEX 0x1
503#define BV_SSP_DEBUG_CMD_SM__CSM_ARG 0x2
504#define BV_SSP_DEBUG_CMD_SM__CSM_CRC 0x3
505#define BF_SSP_DEBUG_CMD_SM(v) (((v) << 16) & 0x70000)
506#define BF_SSP_DEBUG_CMD_SM_V(v) ((BV_SSP_DEBUG_CMD_SM__##v << 16) & 0x70000)
507#define BP_SSP_DEBUG_CLK_OE 15
508#define BM_SSP_DEBUG_CLK_OE 0x8000
509#define BF_SSP_DEBUG_CLK_OE(v) (((v) << 15) & 0x8000)
510#define BP_SSP_DEBUG_MMC_SM 12
511#define BM_SSP_DEBUG_MMC_SM 0x7000
512#define BV_SSP_DEBUG_MMC_SM__MMC_IDLE 0x0
513#define BV_SSP_DEBUG_MMC_SM__MMC_CMD 0x1
514#define BV_SSP_DEBUG_MMC_SM__MMC_TRC 0x2
515#define BV_SSP_DEBUG_MMC_SM__MMC_RESP 0x3
516#define BV_SSP_DEBUG_MMC_SM__MMC_RPRX 0x4
517#define BV_SSP_DEBUG_MMC_SM__MMC_TX 0x5
518#define BV_SSP_DEBUG_MMC_SM__MMC_CTOK 0x6
519#define BV_SSP_DEBUG_MMC_SM__MMC_RX 0x7
520#define BF_SSP_DEBUG_MMC_SM(v) (((v) << 12) & 0x7000)
521#define BF_SSP_DEBUG_MMC_SM_V(v) ((BV_SSP_DEBUG_MMC_SM__##v << 12) & 0x7000)
522#define BP_SSP_DEBUG_DAT0_OE 11
523#define BM_SSP_DEBUG_DAT0_OE 0x800
524#define BF_SSP_DEBUG_DAT0_OE(v) (((v) << 11) & 0x800)
525#define BP_SSP_DEBUG_DAT321_OE 10
526#define BM_SSP_DEBUG_DAT321_OE 0x400
527#define BF_SSP_DEBUG_DAT321_OE(v) (((v) << 10) & 0x400)
528#define BP_SSP_DEBUG_SSP_CMD 9
529#define BM_SSP_DEBUG_SSP_CMD 0x200
530#define BF_SSP_DEBUG_SSP_CMD(v) (((v) << 9) & 0x200)
531#define BP_SSP_DEBUG_SSP_RESP 8
532#define BM_SSP_DEBUG_SSP_RESP 0x100
533#define BF_SSP_DEBUG_SSP_RESP(v) (((v) << 8) & 0x100)
534#define BP_SSP_DEBUG_SSP_TXD 4
535#define BM_SSP_DEBUG_SSP_TXD 0xf0
536#define BF_SSP_DEBUG_SSP_TXD(v) (((v) << 4) & 0xf0)
537#define BP_SSP_DEBUG_SSP_RXD 0
538#define BM_SSP_DEBUG_SSP_RXD 0xf
539#define BF_SSP_DEBUG_SSP_RXD(v) (((v) << 0) & 0xf)
540
541#endif /* __HEADERGEN__STMP3600__SSP__H__ */