summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h')
-rw-r--r--firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h461
1 files changed, 461 insertions, 0 deletions
diff --git a/firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h b/firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h
new file mode 100644
index 0000000000..d8dcb3b5cf
--- /dev/null
+++ b/firmware/target/arm/imx233/regs/stmp3700/regs-gpmi.h
@@ -0,0 +1,461 @@
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: stmp3700:3.2.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__STMP3700__GPMI__H__
24#define __HEADERGEN__STMP3700__GPMI__H__
25
26#define REGS_GPMI_BASE (0x8000c000)
27
28#define REGS_GPMI_VERSION "3.2.0"
29
30/**
31 * Register: HW_GPMI_CTRL0
32 * Address: 0
33 * SCT: yes
34*/
35#define HW_GPMI_CTRL0 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x0))
36#define HW_GPMI_CTRL0_SET (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x4))
37#define HW_GPMI_CTRL0_CLR (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0x8))
38#define HW_GPMI_CTRL0_TOG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x0 + 0xc))
39#define BP_GPMI_CTRL0_SFTRST 31
40#define BM_GPMI_CTRL0_SFTRST 0x80000000
41#define BV_GPMI_CTRL0_SFTRST__RUN 0x0
42#define BV_GPMI_CTRL0_SFTRST__RESET 0x1
43#define BF_GPMI_CTRL0_SFTRST(v) (((v) << 31) & 0x80000000)
44#define BF_GPMI_CTRL0_SFTRST_V(v) ((BV_GPMI_CTRL0_SFTRST__##v << 31) & 0x80000000)
45#define BP_GPMI_CTRL0_CLKGATE 30
46#define BM_GPMI_CTRL0_CLKGATE 0x40000000
47#define BV_GPMI_CTRL0_CLKGATE__RUN 0x0
48#define BV_GPMI_CTRL0_CLKGATE__NO_CLKS 0x1
49#define BF_GPMI_CTRL0_CLKGATE(v) (((v) << 30) & 0x40000000)
50#define BF_GPMI_CTRL0_CLKGATE_V(v) ((BV_GPMI_CTRL0_CLKGATE__##v << 30) & 0x40000000)
51#define BP_GPMI_CTRL0_RUN 29
52#define BM_GPMI_CTRL0_RUN 0x20000000
53#define BV_GPMI_CTRL0_RUN__IDLE 0x0
54#define BV_GPMI_CTRL0_RUN__BUSY 0x1
55#define BF_GPMI_CTRL0_RUN(v) (((v) << 29) & 0x20000000)
56#define BF_GPMI_CTRL0_RUN_V(v) ((BV_GPMI_CTRL0_RUN__##v << 29) & 0x20000000)
57#define BP_GPMI_CTRL0_DEV_IRQ_EN 28
58#define BM_GPMI_CTRL0_DEV_IRQ_EN 0x10000000
59#define BF_GPMI_CTRL0_DEV_IRQ_EN(v) (((v) << 28) & 0x10000000)
60#define BP_GPMI_CTRL0_TIMEOUT_IRQ_EN 27
61#define BM_GPMI_CTRL0_TIMEOUT_IRQ_EN 0x8000000
62#define BF_GPMI_CTRL0_TIMEOUT_IRQ_EN(v) (((v) << 27) & 0x8000000)
63#define BP_GPMI_CTRL0_UDMA 26
64#define BM_GPMI_CTRL0_UDMA 0x4000000
65#define BV_GPMI_CTRL0_UDMA__DISABLED 0x0
66#define BV_GPMI_CTRL0_UDMA__ENABLED 0x1
67#define BF_GPMI_CTRL0_UDMA(v) (((v) << 26) & 0x4000000)
68#define BF_GPMI_CTRL0_UDMA_V(v) ((BV_GPMI_CTRL0_UDMA__##v << 26) & 0x4000000)
69#define BP_GPMI_CTRL0_COMMAND_MODE 24
70#define BM_GPMI_CTRL0_COMMAND_MODE 0x3000000
71#define BV_GPMI_CTRL0_COMMAND_MODE__WRITE 0x0
72#define BV_GPMI_CTRL0_COMMAND_MODE__READ 0x1
73#define BV_GPMI_CTRL0_COMMAND_MODE__READ_AND_COMPARE 0x2
74#define BV_GPMI_CTRL0_COMMAND_MODE__WAIT_FOR_READY 0x3
75#define BF_GPMI_CTRL0_COMMAND_MODE(v) (((v) << 24) & 0x3000000)
76#define BF_GPMI_CTRL0_COMMAND_MODE_V(v) ((BV_GPMI_CTRL0_COMMAND_MODE__##v << 24) & 0x3000000)
77#define BP_GPMI_CTRL0_WORD_LENGTH 23
78#define BM_GPMI_CTRL0_WORD_LENGTH 0x800000
79#define BV_GPMI_CTRL0_WORD_LENGTH__16_BIT 0x0
80#define BV_GPMI_CTRL0_WORD_LENGTH__8_BIT 0x1
81#define BF_GPMI_CTRL0_WORD_LENGTH(v) (((v) << 23) & 0x800000)
82#define BF_GPMI_CTRL0_WORD_LENGTH_V(v) ((BV_GPMI_CTRL0_WORD_LENGTH__##v << 23) & 0x800000)
83#define BP_GPMI_CTRL0_LOCK_CS 22
84#define BM_GPMI_CTRL0_LOCK_CS 0x400000
85#define BV_GPMI_CTRL0_LOCK_CS__DISABLED 0x0
86#define BV_GPMI_CTRL0_LOCK_CS__ENABLED 0x1
87#define BF_GPMI_CTRL0_LOCK_CS(v) (((v) << 22) & 0x400000)
88#define BF_GPMI_CTRL0_LOCK_CS_V(v) ((BV_GPMI_CTRL0_LOCK_CS__##v << 22) & 0x400000)
89#define BP_GPMI_CTRL0_CS 20
90#define BM_GPMI_CTRL0_CS 0x300000
91#define BF_GPMI_CTRL0_CS(v) (((v) << 20) & 0x300000)
92#define BP_GPMI_CTRL0_ADDRESS 17
93#define BM_GPMI_CTRL0_ADDRESS 0xe0000
94#define BV_GPMI_CTRL0_ADDRESS__NAND_DATA 0x0
95#define BV_GPMI_CTRL0_ADDRESS__NAND_CLE 0x1
96#define BV_GPMI_CTRL0_ADDRESS__NAND_ALE 0x2
97#define BF_GPMI_CTRL0_ADDRESS(v) (((v) << 17) & 0xe0000)
98#define BF_GPMI_CTRL0_ADDRESS_V(v) ((BV_GPMI_CTRL0_ADDRESS__##v << 17) & 0xe0000)
99#define BP_GPMI_CTRL0_ADDRESS_INCREMENT 16
100#define BM_GPMI_CTRL0_ADDRESS_INCREMENT 0x10000
101#define BV_GPMI_CTRL0_ADDRESS_INCREMENT__DISABLED 0x0
102#define BV_GPMI_CTRL0_ADDRESS_INCREMENT__ENABLED 0x1
103#define BF_GPMI_CTRL0_ADDRESS_INCREMENT(v) (((v) << 16) & 0x10000)
104#define BF_GPMI_CTRL0_ADDRESS_INCREMENT_V(v) ((BV_GPMI_CTRL0_ADDRESS_INCREMENT__##v << 16) & 0x10000)
105#define BP_GPMI_CTRL0_XFER_COUNT 0
106#define BM_GPMI_CTRL0_XFER_COUNT 0xffff
107#define BF_GPMI_CTRL0_XFER_COUNT(v) (((v) << 0) & 0xffff)
108
109/**
110 * Register: HW_GPMI_COMPARE
111 * Address: 0x10
112 * SCT: no
113*/
114#define HW_GPMI_COMPARE (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x10))
115#define BP_GPMI_COMPARE_MASK 16
116#define BM_GPMI_COMPARE_MASK 0xffff0000
117#define BF_GPMI_COMPARE_MASK(v) (((v) << 16) & 0xffff0000)
118#define BP_GPMI_COMPARE_REFERENCE 0
119#define BM_GPMI_COMPARE_REFERENCE 0xffff
120#define BF_GPMI_COMPARE_REFERENCE(v) (((v) << 0) & 0xffff)
121
122/**
123 * Register: HW_GPMI_ECCCTRL
124 * Address: 0x20
125 * SCT: yes
126*/
127#define HW_GPMI_ECCCTRL (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x0))
128#define HW_GPMI_ECCCTRL_SET (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x4))
129#define HW_GPMI_ECCCTRL_CLR (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0x8))
130#define HW_GPMI_ECCCTRL_TOG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x20 + 0xc))
131#define BP_GPMI_ECCCTRL_HANDLE 16
132#define BM_GPMI_ECCCTRL_HANDLE 0xffff0000
133#define BF_GPMI_ECCCTRL_HANDLE(v) (((v) << 16) & 0xffff0000)
134#define BP_GPMI_ECCCTRL_ECC_CMD 13
135#define BM_GPMI_ECCCTRL_ECC_CMD 0x6000
136#define BV_GPMI_ECCCTRL_ECC_CMD__DECODE_4_BIT 0x0
137#define BV_GPMI_ECCCTRL_ECC_CMD__ENCODE_4_BIT 0x1
138#define BV_GPMI_ECCCTRL_ECC_CMD__DECODE_8_BIT 0x2
139#define BV_GPMI_ECCCTRL_ECC_CMD__ENCODE_8_BIT 0x3
140#define BF_GPMI_ECCCTRL_ECC_CMD(v) (((v) << 13) & 0x6000)
141#define BF_GPMI_ECCCTRL_ECC_CMD_V(v) ((BV_GPMI_ECCCTRL_ECC_CMD__##v << 13) & 0x6000)
142#define BP_GPMI_ECCCTRL_ENABLE_ECC 12
143#define BM_GPMI_ECCCTRL_ENABLE_ECC 0x1000
144#define BV_GPMI_ECCCTRL_ENABLE_ECC__ENABLE 0x1
145#define BV_GPMI_ECCCTRL_ENABLE_ECC__DISABLE 0x0
146#define BF_GPMI_ECCCTRL_ENABLE_ECC(v) (((v) << 12) & 0x1000)
147#define BF_GPMI_ECCCTRL_ENABLE_ECC_V(v) ((BV_GPMI_ECCCTRL_ENABLE_ECC__##v << 12) & 0x1000)
148#define BP_GPMI_ECCCTRL_BUFFER_MASK 0
149#define BM_GPMI_ECCCTRL_BUFFER_MASK 0x1ff
150#define BV_GPMI_ECCCTRL_BUFFER_MASK__AUXILIARY 0x100
151#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER7 0x80
152#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER6 0x40
153#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER5 0x20
154#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER4 0x10
155#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER3 0x8
156#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER2 0x4
157#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER1 0x2
158#define BV_GPMI_ECCCTRL_BUFFER_MASK__BUFFER0 0x1
159#define BF_GPMI_ECCCTRL_BUFFER_MASK(v) (((v) << 0) & 0x1ff)
160#define BF_GPMI_ECCCTRL_BUFFER_MASK_V(v) ((BV_GPMI_ECCCTRL_BUFFER_MASK__##v << 0) & 0x1ff)
161
162/**
163 * Register: HW_GPMI_ECCCOUNT
164 * Address: 0x30
165 * SCT: no
166*/
167#define HW_GPMI_ECCCOUNT (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x30))
168#define BP_GPMI_ECCCOUNT_COUNT 0
169#define BM_GPMI_ECCCOUNT_COUNT 0xffff
170#define BF_GPMI_ECCCOUNT_COUNT(v) (((v) << 0) & 0xffff)
171
172/**
173 * Register: HW_GPMI_PAYLOAD
174 * Address: 0x40
175 * SCT: no
176*/
177#define HW_GPMI_PAYLOAD (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x40))
178#define BP_GPMI_PAYLOAD_ADDRESS 2
179#define BM_GPMI_PAYLOAD_ADDRESS 0xfffffffc
180#define BF_GPMI_PAYLOAD_ADDRESS(v) (((v) << 2) & 0xfffffffc)
181
182/**
183 * Register: HW_GPMI_AUXILIARY
184 * Address: 0x50
185 * SCT: no
186*/
187#define HW_GPMI_AUXILIARY (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x50))
188#define BP_GPMI_AUXILIARY_ADDRESS 2
189#define BM_GPMI_AUXILIARY_ADDRESS 0xfffffffc
190#define BF_GPMI_AUXILIARY_ADDRESS(v) (((v) << 2) & 0xfffffffc)
191
192/**
193 * Register: HW_GPMI_CTRL1
194 * Address: 0x60
195 * SCT: yes
196*/
197#define HW_GPMI_CTRL1 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x60 + 0x0))
198#define HW_GPMI_CTRL1_SET (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x60 + 0x4))
199#define HW_GPMI_CTRL1_CLR (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x60 + 0x8))
200#define HW_GPMI_CTRL1_TOG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x60 + 0xc))
201#define BP_GPMI_CTRL1_DSAMPLE_TIME 12
202#define BM_GPMI_CTRL1_DSAMPLE_TIME 0x7000
203#define BF_GPMI_CTRL1_DSAMPLE_TIME(v) (((v) << 12) & 0x7000)
204#define BP_GPMI_CTRL1_DMA2ECC_MODE 11
205#define BM_GPMI_CTRL1_DMA2ECC_MODE 0x800
206#define BF_GPMI_CTRL1_DMA2ECC_MODE(v) (((v) << 11) & 0x800)
207#define BP_GPMI_CTRL1_DEV_IRQ 10
208#define BM_GPMI_CTRL1_DEV_IRQ 0x400
209#define BF_GPMI_CTRL1_DEV_IRQ(v) (((v) << 10) & 0x400)
210#define BP_GPMI_CTRL1_TIMEOUT_IRQ 9
211#define BM_GPMI_CTRL1_TIMEOUT_IRQ 0x200
212#define BF_GPMI_CTRL1_TIMEOUT_IRQ(v) (((v) << 9) & 0x200)
213#define BP_GPMI_CTRL1_BURST_EN 8
214#define BM_GPMI_CTRL1_BURST_EN 0x100
215#define BF_GPMI_CTRL1_BURST_EN(v) (((v) << 8) & 0x100)
216#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY3 7
217#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY3 0x80
218#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY3(v) (((v) << 7) & 0x80)
219#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY2 6
220#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY2 0x40
221#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY2(v) (((v) << 6) & 0x40)
222#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY1 5
223#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY1 0x20
224#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY1(v) (((v) << 5) & 0x20)
225#define BP_GPMI_CTRL1_ABORT_WAIT_FOR_READY0 4
226#define BM_GPMI_CTRL1_ABORT_WAIT_FOR_READY0 0x10
227#define BF_GPMI_CTRL1_ABORT_WAIT_FOR_READY0(v) (((v) << 4) & 0x10)
228#define BP_GPMI_CTRL1_DEV_RESET 3
229#define BM_GPMI_CTRL1_DEV_RESET 0x8
230#define BV_GPMI_CTRL1_DEV_RESET__ENABLED 0x0
231#define BV_GPMI_CTRL1_DEV_RESET__DISABLED 0x1
232#define BF_GPMI_CTRL1_DEV_RESET(v) (((v) << 3) & 0x8)
233#define BF_GPMI_CTRL1_DEV_RESET_V(v) ((BV_GPMI_CTRL1_DEV_RESET__##v << 3) & 0x8)
234#define BP_GPMI_CTRL1_ATA_IRQRDY_POLARITY 2
235#define BM_GPMI_CTRL1_ATA_IRQRDY_POLARITY 0x4
236#define BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__ACTIVELOW 0x0
237#define BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__ACTIVEHIGH 0x1
238#define BF_GPMI_CTRL1_ATA_IRQRDY_POLARITY(v) (((v) << 2) & 0x4)
239#define BF_GPMI_CTRL1_ATA_IRQRDY_POLARITY_V(v) ((BV_GPMI_CTRL1_ATA_IRQRDY_POLARITY__##v << 2) & 0x4)
240#define BP_GPMI_CTRL1_CAMERA_MODE 1
241#define BM_GPMI_CTRL1_CAMERA_MODE 0x2
242#define BF_GPMI_CTRL1_CAMERA_MODE(v) (((v) << 1) & 0x2)
243#define BP_GPMI_CTRL1_GPMI_MODE 0
244#define BM_GPMI_CTRL1_GPMI_MODE 0x1
245#define BV_GPMI_CTRL1_GPMI_MODE__NAND 0x0
246#define BV_GPMI_CTRL1_GPMI_MODE__ATA 0x1
247#define BF_GPMI_CTRL1_GPMI_MODE(v) (((v) << 0) & 0x1)
248#define BF_GPMI_CTRL1_GPMI_MODE_V(v) ((BV_GPMI_CTRL1_GPMI_MODE__##v << 0) & 0x1)
249
250/**
251 * Register: HW_GPMI_TIMING0
252 * Address: 0x70
253 * SCT: no
254*/
255#define HW_GPMI_TIMING0 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x70))
256#define BP_GPMI_TIMING0_ADDRESS_SETUP 16
257#define BM_GPMI_TIMING0_ADDRESS_SETUP 0xff0000
258#define BF_GPMI_TIMING0_ADDRESS_SETUP(v) (((v) << 16) & 0xff0000)
259#define BP_GPMI_TIMING0_DATA_HOLD 8
260#define BM_GPMI_TIMING0_DATA_HOLD 0xff00
261#define BF_GPMI_TIMING0_DATA_HOLD(v) (((v) << 8) & 0xff00)
262#define BP_GPMI_TIMING0_DATA_SETUP 0
263#define BM_GPMI_TIMING0_DATA_SETUP 0xff
264#define BF_GPMI_TIMING0_DATA_SETUP(v) (((v) << 0) & 0xff)
265
266/**
267 * Register: HW_GPMI_TIMING1
268 * Address: 0x80
269 * SCT: no
270*/
271#define HW_GPMI_TIMING1 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x80))
272#define BP_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT 16
273#define BM_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT 0xffff0000
274#define BF_GPMI_TIMING1_DEVICE_BUSY_TIMEOUT(v) (((v) << 16) & 0xffff0000)
275
276/**
277 * Register: HW_GPMI_TIMING2
278 * Address: 0x90
279 * SCT: no
280*/
281#define HW_GPMI_TIMING2 (*(volatile unsigned long *)(REGS_GPMI_BASE + 0x90))
282#define BP_GPMI_TIMING2_UDMA_TRP 24
283#define BM_GPMI_TIMING2_UDMA_TRP 0xff000000
284#define BF_GPMI_TIMING2_UDMA_TRP(v) (((v) << 24) & 0xff000000)
285#define BP_GPMI_TIMING2_UDMA_ENV 16
286#define BM_GPMI_TIMING2_UDMA_ENV 0xff0000
287#define BF_GPMI_TIMING2_UDMA_ENV(v) (((v) << 16) & 0xff0000)
288#define BP_GPMI_TIMING2_UDMA_HOLD 8
289#define BM_GPMI_TIMING2_UDMA_HOLD 0xff00
290#define BF_GPMI_TIMING2_UDMA_HOLD(v) (((v) << 8) & 0xff00)
291#define BP_GPMI_TIMING2_UDMA_SETUP 0
292#define BM_GPMI_TIMING2_UDMA_SETUP 0xff
293#define BF_GPMI_TIMING2_UDMA_SETUP(v) (((v) << 0) & 0xff)
294
295/**
296 * Register: HW_GPMI_DATA
297 * Address: 0xa0
298 * SCT: no
299*/
300#define HW_GPMI_DATA (*(volatile unsigned long *)(REGS_GPMI_BASE + 0xa0))
301#define BP_GPMI_DATA_DATA 0
302#define BM_GPMI_DATA_DATA 0xffffffff
303#define BF_GPMI_DATA_DATA(v) (((v) << 0) & 0xffffffff)
304
305/**
306 * Register: HW_GPMI_STAT
307 * Address: 0xb0
308 * SCT: no
309*/
310#define HW_GPMI_STAT (*(volatile unsigned long *)(REGS_GPMI_BASE + 0xb0))
311#define BP_GPMI_STAT_PRESENT 31
312#define BM_GPMI_STAT_PRESENT 0x80000000
313#define BV_GPMI_STAT_PRESENT__UNAVAILABLE 0x0
314#define BV_GPMI_STAT_PRESENT__AVAILABLE 0x1
315#define BF_GPMI_STAT_PRESENT(v) (((v) << 31) & 0x80000000)
316#define BF_GPMI_STAT_PRESENT_V(v) ((BV_GPMI_STAT_PRESENT__##v << 31) & 0x80000000)
317#define BP_GPMI_STAT_RDY_TIMEOUT 8
318#define BM_GPMI_STAT_RDY_TIMEOUT 0xf00
319#define BF_GPMI_STAT_RDY_TIMEOUT(v) (((v) << 8) & 0xf00)
320#define BP_GPMI_STAT_ATA_IRQ 7
321#define BM_GPMI_STAT_ATA_IRQ 0x80
322#define BF_GPMI_STAT_ATA_IRQ(v) (((v) << 7) & 0x80)
323#define BP_GPMI_STAT_INVALID_BUFFER_MASK 6
324#define BM_GPMI_STAT_INVALID_BUFFER_MASK 0x40
325#define BF_GPMI_STAT_INVALID_BUFFER_MASK(v) (((v) << 6) & 0x40)
326#define BP_GPMI_STAT_FIFO_EMPTY 5
327#define BM_GPMI_STAT_FIFO_EMPTY 0x20
328#define BV_GPMI_STAT_FIFO_EMPTY__NOT_EMPTY 0x0
329#define BV_GPMI_STAT_FIFO_EMPTY__EMPTY 0x1
330#define BF_GPMI_STAT_FIFO_EMPTY(v) (((v) << 5) & 0x20)
331#define BF_GPMI_STAT_FIFO_EMPTY_V(v) ((BV_GPMI_STAT_FIFO_EMPTY__##v << 5) & 0x20)
332#define BP_GPMI_STAT_FIFO_FULL 4
333#define BM_GPMI_STAT_FIFO_FULL 0x10
334#define BV_GPMI_STAT_FIFO_FULL__NOT_FULL 0x0
335#define BV_GPMI_STAT_FIFO_FULL__FULL 0x1
336#define BF_GPMI_STAT_FIFO_FULL(v) (((v) << 4) & 0x10)
337#define BF_GPMI_STAT_FIFO_FULL_V(v) ((BV_GPMI_STAT_FIFO_FULL__##v << 4) & 0x10)
338#define BP_GPMI_STAT_DEV3_ERROR 3
339#define BM_GPMI_STAT_DEV3_ERROR 0x8
340#define BF_GPMI_STAT_DEV3_ERROR(v) (((v) << 3) & 0x8)
341#define BP_GPMI_STAT_DEV2_ERROR 2
342#define BM_GPMI_STAT_DEV2_ERROR 0x4
343#define BF_GPMI_STAT_DEV2_ERROR(v) (((v) << 2) & 0x4)
344#define BP_GPMI_STAT_DEV1_ERROR 1
345#define BM_GPMI_STAT_DEV1_ERROR 0x2
346#define BF_GPMI_STAT_DEV1_ERROR(v) (((v) << 1) & 0x2)
347#define BP_GPMI_STAT_DEV0_ERROR 0
348#define BM_GPMI_STAT_DEV0_ERROR 0x1
349#define BF_GPMI_STAT_DEV0_ERROR(v) (((v) << 0) & 0x1)
350
351/**
352 * Register: HW_GPMI_DEBUG
353 * Address: 0xc0
354 * SCT: no
355*/
356#define HW_GPMI_DEBUG (*(volatile unsigned long *)(REGS_GPMI_BASE + 0xc0))
357#define BP_GPMI_DEBUG_READY3 31
358#define BM_GPMI_DEBUG_READY3 0x80000000
359#define BF_GPMI_DEBUG_READY3(v) (((v) << 31) & 0x80000000)
360#define BP_GPMI_DEBUG_READY2 30
361#define BM_GPMI_DEBUG_READY2 0x40000000
362#define BF_GPMI_DEBUG_READY2(v) (((v) << 30) & 0x40000000)
363#define BP_GPMI_DEBUG_READY1 29
364#define BM_GPMI_DEBUG_READY1 0x20000000
365#define BF_GPMI_DEBUG_READY1(v) (((v) << 29) & 0x20000000)
366#define BP_GPMI_DEBUG_READY0 28
367#define BM_GPMI_DEBUG_READY0 0x10000000
368#define BF_GPMI_DEBUG_READY0(v) (((v) << 28) & 0x10000000)
369#define BP_GPMI_DEBUG_WAIT_FOR_READY_END3 27
370#define BM_GPMI_DEBUG_WAIT_FOR_READY_END3 0x8000000
371#define BF_GPMI_DEBUG_WAIT_FOR_READY_END3(v) (((v) << 27) & 0x8000000)
372#define BP_GPMI_DEBUG_WAIT_FOR_READY_END2 26
373#define BM_GPMI_DEBUG_WAIT_FOR_READY_END2 0x4000000
374#define BF_GPMI_DEBUG_WAIT_FOR_READY_END2(v) (((v) << 26) & 0x4000000)
375#define BP_GPMI_DEBUG_WAIT_FOR_READY_END1 25
376#define BM_GPMI_DEBUG_WAIT_FOR_READY_END1 0x2000000
377#define BF_GPMI_DEBUG_WAIT_FOR_READY_END1(v) (((v) << 25) & 0x2000000)
378#define BP_GPMI_DEBUG_WAIT_FOR_READY_END0 24
379#define BM_GPMI_DEBUG_WAIT_FOR_READY_END0 0x1000000
380#define BF_GPMI_DEBUG_WAIT_FOR_READY_END0(v) (((v) << 24) & 0x1000000)
381#define BP_GPMI_DEBUG_SENSE3 23
382#define BM_GPMI_DEBUG_SENSE3 0x800000
383#define BF_GPMI_DEBUG_SENSE3(v) (((v) << 23) & 0x800000)
384#define BP_GPMI_DEBUG_SENSE2 22
385#define BM_GPMI_DEBUG_SENSE2 0x400000
386#define BF_GPMI_DEBUG_SENSE2(v) (((v) << 22) & 0x400000)
387#define BP_GPMI_DEBUG_SENSE1 21
388#define BM_GPMI_DEBUG_SENSE1 0x200000
389#define BF_GPMI_DEBUG_SENSE1(v) (((v) << 21) & 0x200000)
390#define BP_GPMI_DEBUG_SENSE0 20
391#define BM_GPMI_DEBUG_SENSE0 0x100000
392#define BF_GPMI_DEBUG_SENSE0(v) (((v) << 20) & 0x100000)
393#define BP_GPMI_DEBUG_DMAREQ3 19
394#define BM_GPMI_DEBUG_DMAREQ3 0x80000
395#define BF_GPMI_DEBUG_DMAREQ3(v) (((v) << 19) & 0x80000)
396#define BP_GPMI_DEBUG_DMAREQ2 18
397#define BM_GPMI_DEBUG_DMAREQ2 0x40000
398#define BF_GPMI_DEBUG_DMAREQ2(v) (((v) << 18) & 0x40000)
399#define BP_GPMI_DEBUG_DMAREQ1 17
400#define BM_GPMI_DEBUG_DMAREQ1 0x20000
401#define BF_GPMI_DEBUG_DMAREQ1(v) (((v) << 17) & 0x20000)
402#define BP_GPMI_DEBUG_DMAREQ0 16
403#define BM_GPMI_DEBUG_DMAREQ0 0x10000
404#define BF_GPMI_DEBUG_DMAREQ0(v) (((v) << 16) & 0x10000)
405#define BP_GPMI_DEBUG_CMD_END 12
406#define BM_GPMI_DEBUG_CMD_END 0xf000
407#define BF_GPMI_DEBUG_CMD_END(v) (((v) << 12) & 0xf000)
408#define BP_GPMI_DEBUG_UDMA_STATE 8
409#define BM_GPMI_DEBUG_UDMA_STATE 0xf00
410#define BF_GPMI_DEBUG_UDMA_STATE(v) (((v) << 8) & 0xf00)
411#define BP_GPMI_DEBUG_BUSY 7
412#define BM_GPMI_DEBUG_BUSY 0x80
413#define BV_GPMI_DEBUG_BUSY__DISABLED 0x0
414#define BV_GPMI_DEBUG_BUSY__ENABLED 0x1
415#define BF_GPMI_DEBUG_BUSY(v) (((v) << 7) & 0x80)
416#define BF_GPMI_DEBUG_BUSY_V(v) ((BV_GPMI_DEBUG_BUSY__##v << 7) & 0x80)
417#define BP_GPMI_DEBUG_PIN_STATE 4
418#define BM_GPMI_DEBUG_PIN_STATE 0x70
419#define BV_GPMI_DEBUG_PIN_STATE__PSM_IDLE 0x0
420#define BV_GPMI_DEBUG_PIN_STATE__PSM_BYTCNT 0x1
421#define BV_GPMI_DEBUG_PIN_STATE__PSM_ADDR 0x2
422#define BV_GPMI_DEBUG_PIN_STATE__PSM_STALL 0x3
423#define BV_GPMI_DEBUG_PIN_STATE__PSM_STROBE 0x4
424#define BV_GPMI_DEBUG_PIN_STATE__PSM_ATARDY 0x5
425#define BV_GPMI_DEBUG_PIN_STATE__PSM_DHOLD 0x6
426#define BV_GPMI_DEBUG_PIN_STATE__PSM_DONE 0x7
427#define BF_GPMI_DEBUG_PIN_STATE(v) (((v) << 4) & 0x70)
428#define BF_GPMI_DEBUG_PIN_STATE_V(v) ((BV_GPMI_DEBUG_PIN_STATE__##v << 4) & 0x70)
429#define BP_GPMI_DEBUG_MAIN_STATE 0
430#define BM_GPMI_DEBUG_MAIN_STATE 0xf
431#define BV_GPMI_DEBUG_MAIN_STATE__MSM_IDLE 0x0
432#define BV_GPMI_DEBUG_MAIN_STATE__MSM_BYTCNT 0x1
433#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFE 0x2
434#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFR 0x3
435#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DMAREQ 0x4
436#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DMAACK 0x5
437#define BV_GPMI_DEBUG_MAIN_STATE__MSM_WAITFF 0x6
438#define BV_GPMI_DEBUG_MAIN_STATE__MSM_LDFIFO 0x7
439#define BV_GPMI_DEBUG_MAIN_STATE__MSM_LDDMAR 0x8
440#define BV_GPMI_DEBUG_MAIN_STATE__MSM_RDCMP 0x9
441#define BV_GPMI_DEBUG_MAIN_STATE__MSM_DONE 0xa
442#define BF_GPMI_DEBUG_MAIN_STATE(v) (((v) << 0) & 0xf)
443#define BF_GPMI_DEBUG_MAIN_STATE_V(v) ((BV_GPMI_DEBUG_MAIN_STATE__##v << 0) & 0xf)
444
445/**
446 * Register: HW_GPMI_VERSION
447 * Address: 0xd0
448 * SCT: no
449*/
450#define HW_GPMI_VERSION (*(volatile unsigned long *)(REGS_GPMI_BASE + 0xd0))
451#define BP_GPMI_VERSION_MAJOR 24
452#define BM_GPMI_VERSION_MAJOR 0xff000000
453#define BF_GPMI_VERSION_MAJOR(v) (((v) << 24) & 0xff000000)
454#define BP_GPMI_VERSION_MINOR 16
455#define BM_GPMI_VERSION_MINOR 0xff0000
456#define BF_GPMI_VERSION_MINOR(v) (((v) << 16) & 0xff0000)
457#define BP_GPMI_VERSION_STEP 0
458#define BM_GPMI_VERSION_STEP 0xffff
459#define BF_GPMI_VERSION_STEP(v) (((v) << 0) & 0xffff)
460
461#endif /* __HEADERGEN__STMP3700__GPMI__H__ */