aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-bf537
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin/mach-bf537')
-rw-r--r--arch/blackfin/mach-bf537/head.S39
1 files changed, 1 insertions, 38 deletions
diff --git a/arch/blackfin/mach-bf537/head.S b/arch/blackfin/mach-bf537/head.S
index 6b019eaee0b6..5bc89bbb89d0 100644
--- a/arch/blackfin/mach-bf537/head.S
+++ b/arch/blackfin/mach-bf537/head.S
@@ -105,17 +105,8 @@ ENTRY(__start)
105 R1 = [p0]; 105 R1 = [p0];
106 R0 = ~ENICPLB; 106 R0 = ~ENICPLB;
107 R0 = R0 & R1; 107 R0 = R0 & R1;
108
109 /* Anomaly 05000125 */
110#if ANOMALY_05000125
111 CLI R2;
112 SSYNC;
113#endif
114 [p0] = R0; 108 [p0] = R0;
115 SSYNC; 109 SSYNC;
116#if ANOMALY_05000125
117 STI R2;
118#endif
119 110
120 /* Turn off the dcache */ 111 /* Turn off the dcache */
121 p0.l = LO(DMEM_CONTROL); 112 p0.l = LO(DMEM_CONTROL);
@@ -123,48 +114,20 @@ ENTRY(__start)
123 R1 = [p0]; 114 R1 = [p0];
124 R0 = ~ENDCPLB; 115 R0 = ~ENDCPLB;
125 R0 = R0 & R1; 116 R0 = R0 & R1;
126
127 /* Anomaly 05000125 */
128#if ANOMALY_05000125
129 CLI R2;
130 SSYNC;
131#endif
132 [p0] = R0; 117 [p0] = R0;
133 SSYNC; 118 SSYNC;
134#if ANOMALY_05000125
135 STI R2;
136#endif
137 119
138 /* Initialise General-Purpose I/O Modules on BF537 */ 120 /* Initialise General-Purpose I/O Modules on BF537 */
139 /* Rev 0.0 Anomaly 05000212 - PORTx_FER,
140 * PORT_MUX Registers Do Not accept "writes" correctly:
141 */
142 p0.h = hi(BFIN_PORT_MUX); 121 p0.h = hi(BFIN_PORT_MUX);
143 p0.l = lo(BFIN_PORT_MUX); 122 p0.l = lo(BFIN_PORT_MUX);
144#if ANOMALY_05000212
145 R0.L = W[P0]; /* Read */
146 SSYNC;
147#endif
148 R0 = (PGDE_UART | PFTE_UART)(Z); 123 R0 = (PGDE_UART | PFTE_UART)(Z);
149#if ANOMALY_05000212
150 W[P0] = R0.L; /* Write */
151 SSYNC;
152#endif
153 W[P0] = R0.L; /* Enable both UARTS */ 124 W[P0] = R0.L; /* Enable both UARTS */
154 SSYNC; 125 SSYNC;
155 126
127 /* Enable peripheral function of PORTF for UART0 and UART1 */
156 p0.h = hi(PORTF_FER); 128 p0.h = hi(PORTF_FER);
157 p0.l = lo(PORTF_FER); 129 p0.l = lo(PORTF_FER);
158#if ANOMALY_05000212
159 R0.L = W[P0]; /* Read */
160 SSYNC;
161#endif
162 R0 = 0x000F(Z); 130 R0 = 0x000F(Z);
163#if ANOMALY_05000212
164 W[P0] = R0.L; /* Write */
165 SSYNC;
166#endif
167 /* Enable peripheral function of PORTF for UART0 and UART1 */
168 W[P0] = R0.L; 131 W[P0] = R0.L;
169 SSYNC; 132 SSYNC;
170 133