|
@@ -25,11 +25,6 @@
|
|
*/
|
|
*/
|
|
#undef SLOWDOWN_MASTER_CLOCK
|
|
#undef SLOWDOWN_MASTER_CLOCK
|
|
|
|
|
|
-#define MCKRDY_TIMEOUT 1000
|
|
|
|
-#define MOSCRDY_TIMEOUT 1000
|
|
|
|
-#define PLLALOCK_TIMEOUT 1000
|
|
|
|
-#define PLLBLOCK_TIMEOUT 1000
|
|
|
|
-
|
|
|
|
pmc .req r0
|
|
pmc .req r0
|
|
sdramc .req r1
|
|
sdramc .req r1
|
|
ramc1 .req r2
|
|
ramc1 .req r2
|
|
@@ -41,56 +36,36 @@ tmp2 .req r5
|
|
* Wait until master clock is ready (after switching master clock source)
|
|
* Wait until master clock is ready (after switching master clock source)
|
|
*/
|
|
*/
|
|
.macro wait_mckrdy
|
|
.macro wait_mckrdy
|
|
- mov tmp2, #MCKRDY_TIMEOUT
|
|
|
|
-1: sub tmp2, tmp2, #1
|
|
|
|
- cmp tmp2, #0
|
|
|
|
- beq 2f
|
|
|
|
- ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
|
|
|
|
+1: ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
tst tmp1, #AT91_PMC_MCKRDY
|
|
tst tmp1, #AT91_PMC_MCKRDY
|
|
beq 1b
|
|
beq 1b
|
|
-2:
|
|
|
|
.endm
|
|
.endm
|
|
|
|
|
|
/*
|
|
/*
|
|
* Wait until master oscillator has stabilized.
|
|
* Wait until master oscillator has stabilized.
|
|
*/
|
|
*/
|
|
.macro wait_moscrdy
|
|
.macro wait_moscrdy
|
|
- mov tmp2, #MOSCRDY_TIMEOUT
|
|
|
|
-1: sub tmp2, tmp2, #1
|
|
|
|
- cmp tmp2, #0
|
|
|
|
- beq 2f
|
|
|
|
- ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
|
|
|
|
+1: ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
tst tmp1, #AT91_PMC_MOSCS
|
|
tst tmp1, #AT91_PMC_MOSCS
|
|
beq 1b
|
|
beq 1b
|
|
-2:
|
|
|
|
.endm
|
|
.endm
|
|
|
|
|
|
/*
|
|
/*
|
|
* Wait until PLLA has locked.
|
|
* Wait until PLLA has locked.
|
|
*/
|
|
*/
|
|
.macro wait_pllalock
|
|
.macro wait_pllalock
|
|
- mov tmp2, #PLLALOCK_TIMEOUT
|
|
|
|
-1: sub tmp2, tmp2, #1
|
|
|
|
- cmp tmp2, #0
|
|
|
|
- beq 2f
|
|
|
|
- ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
|
|
|
|
+1: ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
tst tmp1, #AT91_PMC_LOCKA
|
|
tst tmp1, #AT91_PMC_LOCKA
|
|
beq 1b
|
|
beq 1b
|
|
-2:
|
|
|
|
.endm
|
|
.endm
|
|
|
|
|
|
/*
|
|
/*
|
|
* Wait until PLLB has locked.
|
|
* Wait until PLLB has locked.
|
|
*/
|
|
*/
|
|
.macro wait_pllblock
|
|
.macro wait_pllblock
|
|
- mov tmp2, #PLLBLOCK_TIMEOUT
|
|
|
|
-1: sub tmp2, tmp2, #1
|
|
|
|
- cmp tmp2, #0
|
|
|
|
- beq 2f
|
|
|
|
- ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
|
|
|
|
+1: ldr tmp1, [pmc, #AT91_PMC_SR]
|
|
tst tmp1, #AT91_PMC_LOCKB
|
|
tst tmp1, #AT91_PMC_LOCKB
|
|
beq 1b
|
|
beq 1b
|
|
-2:
|
|
|
|
.endm
|
|
.endm
|
|
|
|
|
|
.text
|
|
.text
|