Blame view

arch/arm/mach-omap2/sram34xx.S 10.7 KB
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
1
2
3
4
5
  /*
   * linux/arch/arm/mach-omap3/sram.S
   *
   * Omap3 specific functions that need to be run in internal SRAM
   *
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
6
7
   * Copyright (C) 2004, 2007, 2008 Texas Instruments, Inc.
   * Copyright (C) 2008 Nokia Corporation
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
8
   *
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
9
   * Rajendra Nayak <rnayak@ti.com>
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
10
   * Richard Woodruff <r-woodruff2@ti.com>
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
11
   * Paul Walmsley
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
   *
   * This program is free software; you can redistribute it and/or
   * modify it under the terms of the GNU General Public License as
   * published by the Free Software Foundation; either version 2 of
   * the License, or (at your option) any later version.
   *
   * This program is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR /PURPOSE. See the
   * GNU General Public License for more details.
   *
   * You should have received a copy of the GNU General Public License
   * along with this program; if not, write to the Free Software
   * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
   * MA 02111-1307 USA
   */
  #include <linux/linkage.h>
  #include <asm/assembler.h>
  #include <mach/hardware.h>
  
  #include <mach/io.h>
  
  #include "sdrc.h"
59fb659b0   Paul Walmsley   OMAP2/3: PRCM: sp...
35
  #include "cm2xxx_3xxx.h"
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
36

ef7a87d34   Dave Martin   ARM: omap3: Thumb...
37
38
39
40
41
  /*
   * This file needs be built unconditionally as ARM to interoperate correctly
   * with non-Thumb-2-capable firmware.
   */
  	.arm
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
42
  	.text
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
43
  /* r1 parameters */
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
44
45
46
47
  #define SDRC_NO_UNLOCK_DLL		0x0
  #define SDRC_UNLOCK_DLL			0x1
  
  /* SDRC_DLLA_CTRL bit settings */
7b7bcefa3   Paul Walmsley   OMAP3 SDRC: set F...
48
49
  #define FIXEDDELAY_SHIFT		24
  #define FIXEDDELAY_MASK			(0xff << FIXEDDELAY_SHIFT)
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
50
  #define DLLIDLE_MASK			0x4
7b7bcefa3   Paul Walmsley   OMAP3 SDRC: set F...
51
52
53
54
55
56
57
  /*
   * SDRC_DLLA_CTRL default values: TI hardware team indicates that
   * FIXEDDELAY should be initialized to 0xf.  This apparently was
   * empirically determined during process testing, so no derivation
   * was provided.
   */
  #define FIXEDDELAY_DEFAULT		(0x0f << FIXEDDELAY_SHIFT)
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
58
59
60
61
62
  /* SDRC_DLLA_STATUS bit settings */
  #define LOCKSTATUS_MASK			0x4
  
  /* SDRC_POWER bit settings */
  #define SRFRONIDLEREQ_MASK		0x40
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
63
64
65
66
67
68
69
70
71
  
  /* CM_IDLEST1_CORE bit settings */
  #define ST_SDRC_MASK			0x2
  
  /* CM_ICLKEN1_CORE bit settings */
  #define EN_SDRC_MASK			0x2
  
  /* CM_CLKSEL1_PLL bit settings */
  #define CORE_DPLL_CLKOUT_DIV_SHIFT	0x1b
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
72
  /*
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
73
   * omap3_sram_configure_core_dpll - change DPLL3 M2 divider
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
74
75
76
77
   *
   * Params passed in registers:
   *  r0 = new M2 divider setting (only 1 and 2 supported right now)
   *  r1 = unlock SDRC DLL? (1 = yes, 0 = no).  Only unlock DLL for
4519c2bf4   Paul Walmsley   OMAP3 clock: only...
78
   *      SDRC rates < 83MHz
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
79
   *  r2 = number of MPU cycles to wait for SDRC to stabilize after
c9812d042   Paul Walmsley   OMAP3 clock: add ...
80
   *      reprogramming the SDRC when switching to a slower MPU speed
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
81
82
83
84
85
86
87
88
89
90
91
92
93
   *  r3 = increasing SDRC rate? (1 = yes, 0 = no)
   *
   * Params passed via the stack. The needed params will be copied in SRAM
   *  before use by the code in SRAM (SDRAM is not accessible during SDRC
   *  reconfiguration):
   *  new SDRC_RFR_CTRL_0 register contents
   *  new SDRC_ACTIM_CTRL_A_0 register contents
   *  new SDRC_ACTIM_CTRL_B_0 register contents
   *  new SDRC_MR_0 register value
   *  new SDRC_RFR_CTRL_1 register contents
   *  new SDRC_ACTIM_CTRL_A_1 register contents
   *  new SDRC_ACTIM_CTRL_B_1 register contents
   *  new SDRC_MR_1 register value
c9812d042   Paul Walmsley   OMAP3 clock: add ...
94
   *
18862cbe4   Paul Walmsley   OMAP3: SDRC: Plac...
95
96
97
98
99
100
101
102
103
104
105
106
107
   * If the param SDRC_RFR_CTRL_1 is 0, the parameters are not programmed into
   * the SDRC CS1 registers
   *
   * NOTE: This code no longer attempts to program the SDRC AC timing and MR
   * registers.  This is because the code currently cannot ensure that all
   * L3 initiators (e.g., sDMA, IVA, DSS DISPC, etc.) are not accessing the
   * SDRAM when the registers are written.  If the registers are changed while
   * an initiator is accessing SDRAM, memory can be corrupted and/or the SDRC
   * may enter an unpredictable state.  In the future, the intent is to
   * re-enable this code in cases where we can ensure that no initiators are
   * touching the SDRAM.  Until that time, users who know that their use case
   * can satisfy the above requirement can enable the CONFIG_OMAP3_SDRC_AC_TIMING
   * option.
1124d2f91   Paul Walmsley   OMAP2/3: SRAM: ad...
108
109
110
111
112
113
   *
   * Richard Woodruff notes that any changes to this code must be carefully
   * audited and tested to ensure that they don't cause a TLB miss while
   * the SDRAM is inaccessible.  Such a situation will crash the system
   * since it will cause the ARM MMU to attempt to walk the page tables.
   * These crashes may be intermittent.
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
114
   */
b6338bdc8   Jean Pihet   ARM: 6649/1: omap...
115
  	.align	3
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
116
117
  ENTRY(omap3_sram_configure_core_dpll)
  	stmfd	sp!, {r1-r12, lr}	@ store regs to stack
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
118
119
120
  
  					@ pull the extra args off the stack
  					@  and store them in SRAM
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
121
122
123
124
125
126
127
128
129
130
131
  
  /*
   * PC-relative stores are deprecated in ARMv7 and lead to undefined behaviour
   * in Thumb-2: use a r7 as a base instead.
   * Be careful not to clobber r7 when maintaing this file.
   */
   THUMB(	adr	r7, omap3_sram_configure_core_dpll			)
  	.macro strtext Rt:req, label:req
   ARM(	str	\Rt, \label						)
   THUMB(	str	\Rt, [r7, \label - omap3_sram_configure_core_dpll]	)
  	.endm
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
132
  	ldr	r4, [sp, #52]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
133
  	strtext	r4, omap_sdrc_rfr_ctrl_0_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
134
  	ldr	r4, [sp, #56]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
135
  	strtext	r4, omap_sdrc_actim_ctrl_a_0_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
136
  	ldr	r4, [sp, #60]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
137
  	strtext	r4, omap_sdrc_actim_ctrl_b_0_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
138
  	ldr	r4, [sp, #64]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
139
  	strtext	r4, omap_sdrc_mr_0_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
140
  	ldr	r4, [sp, #68]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
141
  	strtext	r4, omap_sdrc_rfr_ctrl_1_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
142
143
144
  	cmp	r4, #0			@ if SDRC_RFR_CTRL_1 is 0,
  	beq	skip_cs1_params		@  do not use cs1 params
  	ldr	r4, [sp, #72]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
145
  	strtext	r4, omap_sdrc_actim_ctrl_a_1_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
146
  	ldr	r4, [sp, #76]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
147
  	strtext	r4, omap_sdrc_actim_ctrl_b_1_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
148
  	ldr	r4, [sp, #80]
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
149
  	strtext	r4, omap_sdrc_mr_1_val
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
150
  skip_cs1_params:
a3fed9bc1   Jon Hunter   omap3: Prevent SD...
151
152
153
  	mrc	p15, 0, r8, c1, c0, 0	@ read ctrl register
  	bic	r10, r8, #0x800		@ clear Z-bit, disable branch prediction
  	mcr	p15, 0, r10, c1, c0, 0	@ write ctrl register
69d4255b1   Paul Walmsley   OMAP3 SRAM: add A...
154
  	dsb				@ flush buffered writes to interconnect
a3fed9bc1   Jon Hunter   omap3: Prevent SD...
155
  	isb				@ prevent speculative exec past here
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
156
  	cmp	r3, #1			@ if increasing SDRC clk rate,
3afec6332   Tero Kristo   OMAP3: Add suppor...
157
  	bleq	configure_sdrc		@ program the SDRC regs early (for RFR)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
158
  	cmp	r1, #SDRC_UNLOCK_DLL	@ set the intended DLL state
4519c2bf4   Paul Walmsley   OMAP3 clock: only...
159
  	bleq	unlock_dll
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
160
  	blne	lock_dll
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
161
162
  	bl	sdram_in_selfrefresh	@ put SDRAM in self refresh, idle SDRC
  	bl 	configure_core_dpll	@ change the DPLL3 M2 divider
df56556e5   Rajendra Nayak   OMAP3 SDRC: Move ...
163
164
  	mov	r12, r2
  	bl	wait_clk_stable		@ wait for SDRC to stabilize
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
165
  	bl	enable_sdrc		@ take SDRC out of idle
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
166
  	cmp	r1, #SDRC_UNLOCK_DLL	@ wait for DLL status to change
4519c2bf4   Paul Walmsley   OMAP3 clock: only...
167
  	bleq	wait_dll_unlock
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
168
  	blne	wait_dll_lock
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
169
  	cmp	r3, #1			@ if increasing SDRC clk rate,
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
170
171
  	beq	return_to_sdram		@ return to SDRAM code, otherwise,
  	bl	configure_sdrc		@ reprogram SDRC regs now
c9812d042   Paul Walmsley   OMAP3 clock: add ...
172
  return_to_sdram:
a3fed9bc1   Jon Hunter   omap3: Prevent SD...
173
  	mcr	p15, 0, r8, c1, c0, 0	@ restore ctrl register
69d4255b1   Paul Walmsley   OMAP3 SRAM: add A...
174
  	isb				@ prevent speculative exec past here
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
175
176
177
  	mov 	r0, #0 			@ return value
  	ldmfd	sp!, {r1-r12, pc}	@ restore regs and return
  unlock_dll:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
178
179
  	ldr	r11, omap3_sdrc_dlla_ctrl
  	ldr	r12, [r11]
8ff120e53   Rajendra Nayak   OMAP3 SDRC: Fix f...
180
  	bic	r12, r12, #FIXEDDELAY_MASK
7b7bcefa3   Paul Walmsley   OMAP3 SDRC: set F...
181
  	orr	r12, r12, #FIXEDDELAY_DEFAULT
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
182
  	orr	r12, r12, #DLLIDLE_MASK
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
183
  	str	r12, [r11]		@ (no OCP barrier needed)
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
184
185
  	bx	lr
  lock_dll:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
186
187
  	ldr	r11, omap3_sdrc_dlla_ctrl
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
188
  	bic	r12, r12, #DLLIDLE_MASK
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
189
  	str	r12, [r11]		@ (no OCP barrier needed)
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
190
191
  	bx	lr
  sdram_in_selfrefresh:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
192
193
194
  	ldr	r11, omap3_sdrc_power	@ read the SDRC_POWER register
  	ldr	r12, [r11]		@ read the contents of SDRC_POWER
  	mov	r9, r12			@ keep a copy of SDRC_POWER bits
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
195
  	orr 	r12, r12, #SRFRONIDLEREQ_MASK	@ enable self refresh on idle
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
196
197
  	str 	r12, [r11]		@ write back to SDRC_POWER register
  	ldr	r12, [r11]		@ posted-write barrier for SDRC
4267b5d15   Paul Walmsley   OMAP3 SRAM: add m...
198
  idle_sdrc:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
199
200
  	ldr	r11, omap3_cm_iclken1_core	@ read the CM_ICLKEN1_CORE reg
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
201
  	bic	r12, r12, #EN_SDRC_MASK		@ disable iclk bit for SDRC
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
202
  	str 	r12, [r11]
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
203
  wait_sdrc_idle:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
204
205
  	ldr 	r11, omap3_cm_idlest1_core
  	ldr 	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
206
207
  	and 	r12, r12, #ST_SDRC_MASK		@ check for SDRC idle
  	cmp 	r12, #ST_SDRC_MASK
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
208
209
210
  	bne 	wait_sdrc_idle
  	bx 	lr
  configure_core_dpll:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
211
212
213
214
  	ldr 	r11, omap3_cm_clksel1_pll
  	ldr	r12, [r11]
  	ldr	r10, core_m2_mask_val	@ modify m2 for core dpll
  	and	r12, r12, r10
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
215
  	orr	r12, r12, r0, lsl #CORE_DPLL_CLKOUT_DIV_SHIFT
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
216
217
  	str	r12, [r11]
  	ldr	r12, [r11]		@ posted-write barrier for CM
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
218
219
  	bx	lr
  wait_clk_stable:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
220
  	subs 	r12, r12, #1
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
221
  	bne	wait_clk_stable
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
222
223
  	bx	lr
  enable_sdrc:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
224
225
  	ldr 	r11, omap3_cm_iclken1_core
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
226
  	orr 	r12, r12, #EN_SDRC_MASK		@ enable iclk bit for SDRC
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
227
  	str 	r12, [r11]
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
228
  wait_sdrc_idle1:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
229
230
  	ldr 	r11, omap3_cm_idlest1_core
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
231
  	and 	r12, r12, #ST_SDRC_MASK
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
232
  	cmp	r12, #0
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
233
  	bne	wait_sdrc_idle1
fa0406a8d   Paul Walmsley   OMAP3 SRAM: clear...
234
  restore_sdrc_power_val:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
235
236
  	ldr	r11, omap3_sdrc_power
  	str	r9, [r11]		@ restore SDRC_POWER, no barrier needed
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
237
238
  	bx	lr
  wait_dll_lock:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
239
240
  	ldr	r11, omap3_sdrc_dlla_status
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
241
242
  	and 	r12, r12, #LOCKSTATUS_MASK
  	cmp	r12, #LOCKSTATUS_MASK
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
243
244
245
  	bne	wait_dll_lock
  	bx	lr
  wait_dll_unlock:
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
246
247
  	ldr	r11, omap3_sdrc_dlla_status
  	ldr	r12, [r11]
df14e4747   Paul Walmsley   OMAP3 SRAM: conve...
248
  	and	r12, r12, #LOCKSTATUS_MASK
b2abb271a   Paul Walmsley   OMAP3 SRAM: renum...
249
  	cmp	r12, #0x0
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
250
251
252
  	bne	wait_dll_unlock
  	bx	lr
  configure_sdrc:
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
253
254
255
  	ldr	r12, omap_sdrc_rfr_ctrl_0_val	@ fetch value from SRAM
  	ldr	r11, omap3_sdrc_rfr_ctrl_0	@ fetch addr from SRAM
  	str	r12, [r11]			@ store
18862cbe4   Paul Walmsley   OMAP3: SDRC: Plac...
256
  #ifdef CONFIG_OMAP3_SDRC_AC_TIMING
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
257
258
259
260
261
262
263
  	ldr	r12, omap_sdrc_actim_ctrl_a_0_val
  	ldr	r11, omap3_sdrc_actim_ctrl_a_0
  	str	r12, [r11]
  	ldr	r12, omap_sdrc_actim_ctrl_b_0_val
  	ldr	r11, omap3_sdrc_actim_ctrl_b_0
  	str	r12, [r11]
  	ldr	r12, omap_sdrc_mr_0_val
d0ba3922a   Paul Walmsley   OMAP3 clock/SDRC:...
264
  	ldr	r11, omap3_sdrc_mr_0
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
265
  	str	r12, [r11]
18862cbe4   Paul Walmsley   OMAP3: SDRC: Plac...
266
  #endif
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
267
268
269
270
271
  	ldr	r12, omap_sdrc_rfr_ctrl_1_val
  	cmp	r12, #0			@ if SDRC_RFR_CTRL_1 is 0,
  	beq	skip_cs1_prog		@  do not program cs1 params
  	ldr	r11, omap3_sdrc_rfr_ctrl_1
  	str	r12, [r11]
18862cbe4   Paul Walmsley   OMAP3: SDRC: Plac...
272
  #ifdef CONFIG_OMAP3_SDRC_AC_TIMING
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
273
274
275
276
277
278
279
280
281
  	ldr	r12, omap_sdrc_actim_ctrl_a_1_val
  	ldr	r11, omap3_sdrc_actim_ctrl_a_1
  	str	r12, [r11]
  	ldr	r12, omap_sdrc_actim_ctrl_b_1_val
  	ldr	r11, omap3_sdrc_actim_ctrl_b_1
  	str	r12, [r11]
  	ldr	r12, omap_sdrc_mr_1_val
  	ldr	r11, omap3_sdrc_mr_1
  	str	r12, [r11]
18862cbe4   Paul Walmsley   OMAP3: SDRC: Plac...
282
  #endif
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
283
284
  skip_cs1_prog:
  	ldr	r12, [r11]		@ posted-write barrier for SDRC
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
285
  	bx	lr
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
286
  	.align
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
287
288
289
290
291
292
293
294
  omap3_sdrc_power:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_POWER)
  omap3_cm_clksel1_pll:
  	.word OMAP34XX_CM_REGADDR(PLL_MOD, CM_CLKSEL1)
  omap3_cm_idlest1_core:
  	.word OMAP34XX_CM_REGADDR(CORE_MOD, CM_IDLEST)
  omap3_cm_iclken1_core:
  	.word OMAP34XX_CM_REGADDR(CORE_MOD, CM_ICLKEN1)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
295
296
  
  omap3_sdrc_rfr_ctrl_0:
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
297
  	.word OMAP34XX_SDRC_REGADDR(SDRC_RFR_CTRL_0)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
298
299
300
  omap3_sdrc_rfr_ctrl_1:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_RFR_CTRL_1)
  omap3_sdrc_actim_ctrl_a_0:
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
301
  	.word OMAP34XX_SDRC_REGADDR(SDRC_ACTIM_CTRL_A_0)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
302
303
304
  omap3_sdrc_actim_ctrl_a_1:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_ACTIM_CTRL_A_1)
  omap3_sdrc_actim_ctrl_b_0:
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
305
  	.word OMAP34XX_SDRC_REGADDR(SDRC_ACTIM_CTRL_B_0)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
306
307
  omap3_sdrc_actim_ctrl_b_1:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_ACTIM_CTRL_B_1)
d0ba3922a   Paul Walmsley   OMAP3 clock/SDRC:...
308
309
  omap3_sdrc_mr_0:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_MR_0)
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
  omap3_sdrc_mr_1:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_MR_1)
  omap_sdrc_rfr_ctrl_0_val:
  	.word 0xDEADBEEF
  omap_sdrc_rfr_ctrl_1_val:
  	.word 0xDEADBEEF
  omap_sdrc_actim_ctrl_a_0_val:
  	.word 0xDEADBEEF
  omap_sdrc_actim_ctrl_a_1_val:
  	.word 0xDEADBEEF
  omap_sdrc_actim_ctrl_b_0_val:
  	.word 0xDEADBEEF
  omap_sdrc_actim_ctrl_b_1_val:
  	.word 0xDEADBEEF
  omap_sdrc_mr_0_val:
  	.word 0xDEADBEEF
  omap_sdrc_mr_1_val:
  	.word 0xDEADBEEF
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
328
329
330
331
332
333
  omap3_sdrc_dlla_status:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_DLLA_STATUS)
  omap3_sdrc_dlla_ctrl:
  	.word OMAP34XX_SDRC_REGADDR(SDRC_DLLA_CTRL)
  core_m2_mask_val:
  	.word 0x07FFFFFF
ef7a87d34   Dave Martin   ARM: omap3: Thumb...
334
  ENDPROC(omap3_sram_configure_core_dpll)
cc26b3b01   Syed Mohammed, Khasim   ARM: OMAP3: Add m...
335
336
337
  
  ENTRY(omap3_sram_configure_core_dpll_sz)
  	.word	. - omap3_sram_configure_core_dpll
58cda884e   Jean Pihet   OMAP3 SDRC: add s...
338