@@ -35,10 +35,10 @@ int EFlash_IdCheck()
35
35
{
36
36
unsigned int eflash_id ;
37
37
38
- eflash_id = readl (SYS_EFLASH_PIDR2 ) & (EFLASH_DES_1 | EFLASH_JEDEC );
38
+ eflash_id = EFlash_Readl (SYS_EFLASH_PIDR2 ) & (EFLASH_DES_1 | EFLASH_JEDEC );
39
39
40
- if (readl (SYS_EFLASH_PIDR0 ) != FLS_PID0
41
- || readl (SYS_EFLASH_PIDR1 ) != FLS_PID1
40
+ if (EFlash_Readl (SYS_EFLASH_PIDR0 ) != FLS_PID0
41
+ || EFlash_Readl (SYS_EFLASH_PIDR1 ) != FLS_PID1
42
42
|| eflash_id != FLS_PID2 )
43
43
/* port ID and ARM ID does not match */
44
44
return 1 ;
@@ -52,7 +52,7 @@ int EFlash_ReturnBank1BaseAddress()
52
52
unsigned int hwparams0 ;
53
53
int baseaddr ;
54
54
55
- hwparams0 = readl (SYS_EFLASH_HWPARAMS0 ) & EFLASH_FLASHSIZE ;
55
+ hwparams0 = EFlash_Readl (SYS_EFLASH_HWPARAMS0 ) & EFLASH_FLASHSIZE ;
56
56
57
57
switch (hwparams0 )
58
58
{
@@ -73,31 +73,35 @@ int EFlash_ReturnBank1BaseAddress()
73
73
return baseaddr ;
74
74
}
75
75
76
- /* EFlash_Initialize : eFlash Initialize function */
77
- void EFlash_Initialize ()
76
+ /* EFlash_DriverInitialize : eFlash Driver Initialize function */
77
+ void EFlash_DriverInitialize ()
78
78
{
79
79
/* Find the start address of banks */
80
80
eflash .basebank0 = 0x0 ;
81
81
eflash .basebank0_me = 0x40000000 ;
82
82
eflash .basebank1 = EFlash_ReturnBank1BaseAddress ();
83
83
eflash .basebank1_me = 0x80000000 ;
84
+ }
84
85
86
+ /* EFlash_ClockConfig: eFlash Clock Configuration */
87
+ void EFlash_ClockConfig ()
88
+ {
85
89
/* Wait until eFlash controller gets unlocked */
86
- while ((readl (SYS_EFLASH_STATUS ) & EFLASH_LOCK_MASK ) == EFLASH_LOCK );
90
+ while ((EFlash_Readl (SYS_EFLASH_STATUS ) & EFLASH_LOCK_MASK ) == EFLASH_LOCK );
87
91
88
92
/*
89
- * Configure to use external clock
90
- * EXTCL = 31250 ns ->
91
- * 1 ms = 32 clock count 32khz ext_clk -> ER_CLK_COUNT = 32
92
- * 1 us = 84 clock count system_clk -> WR_CLK_COUNT = 84
93
- * EXT_CLK_CONF = 0x1 [Erase] External clock used for erase counters (>1ms)
94
- * HCLK used for write counters
95
- * RD_CLK_COUNT = 0x3
96
- */
97
- writel (SYS_EFLASH_CONFIG0 , 0x00200B43 );
93
+ * Configure to use external clock
94
+ * EXTCL = 31250 ns ->
95
+ * 1 ms = 32 clock count 32khz ext_clk -> ER_CLK_COUNT = 32
96
+ * 1 us = 84 clock count system_clk -> WR_CLK_COUNT = 84
97
+ * EXT_CLK_CONF = 0x1 [Erase] External clock used for erase counters (>1ms)
98
+ * HCLK used for write counters
99
+ * RD_CLK_COUNT = 0x3
100
+ */
101
+ EFlash_Writel (SYS_EFLASH_CONFIG0 , 0x00200B43 );
98
102
99
103
/* Wait until eFlash controller gets unlocked */
100
- while ((readl (SYS_EFLASH_STATUS ) & EFLASH_BUSY_MASK ) == EFLASH_BUSY );
104
+ while ((EFlash_Readl (SYS_EFLASH_STATUS ) & EFLASH_BUSY_MASK ) == EFLASH_BUSY );
101
105
}
102
106
103
107
/*
@@ -116,87 +120,87 @@ void EFlash_Erase(int mode)
116
120
{
117
121
case 0 :
118
122
/* Wait until eFlash controller gets unlocked */
119
- while ((readl (SYS_EFLASH_STATUS )
123
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
120
124
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
121
125
/* Erase Block #0 */
122
- writel (SYS_EFLASH_WADDR , eflash .basebank0 );
123
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
126
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank0 );
127
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
124
128
/* Wait until eFlash controller is not busy */
125
- while ((readl (SYS_EFLASH_STATUS )
129
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
126
130
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
127
131
break ;
128
132
case 1 :
129
133
/* Wait until eFlash controller gets unlocked */
130
- while ((readl (SYS_EFLASH_STATUS )
134
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
131
135
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
132
136
/* Erase Block #1 */
133
- writel (SYS_EFLASH_WADDR , eflash .basebank1 );
134
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
137
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank1 );
138
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
135
139
/* Wait until eFlash controller is not busy */
136
- while ((readl (SYS_EFLASH_STATUS )
140
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
137
141
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
138
142
break ;
139
143
case 2 :
140
144
/* Wait until eFlash controller gets unlocked */
141
- while ((readl (SYS_EFLASH_STATUS )
145
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
142
146
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
143
147
/* Erase Block #0 + info pages */
144
- writel (SYS_EFLASH_WADDR , eflash .basebank0_me );
145
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
148
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank0_me );
149
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
146
150
/* Wait until eFlash controller is not busy */
147
- while ((readl (SYS_EFLASH_STATUS )
151
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
148
152
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
149
153
break ;
150
154
case 3 :
151
155
/* Wait until eFlash controller gets unlocked */
152
- while ((readl (SYS_EFLASH_STATUS )
156
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
153
157
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
154
158
/* Erase Block #1 + info pages */
155
- writel (SYS_EFLASH_WADDR , eflash .basebank1_me );
156
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
159
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank1_me );
160
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
157
161
/* Wait until eFlash controller is not busy */
158
- while ((readl (SYS_EFLASH_STATUS )
162
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
159
163
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
160
164
break ;
161
165
case 4 :
162
166
/* Wait until eFlash controller gets unlocked */
163
- while ((readl (SYS_EFLASH_STATUS )
167
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
164
168
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
165
169
/* Erase Block #0 */
166
- writel (SYS_EFLASH_WADDR , eflash .basebank0 );
167
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
170
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank0 );
171
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
168
172
/* Wait until eFlash controller is not busy */
169
- while ((readl (SYS_EFLASH_STATUS )
173
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
170
174
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
171
175
/* Wait until eFlash controller gets unlocked */
172
- while ((readl (SYS_EFLASH_STATUS )
176
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
173
177
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
174
178
/* Erase Block #1 */
175
- writel (SYS_EFLASH_WADDR , eflash .basebank1 );
176
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
179
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank1 );
180
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
177
181
/* Wait until eFlash controller gets unlocked */
178
182
/* Wait until eFlash controller is not busy */
179
- while ((readl (SYS_EFLASH_STATUS )
183
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
180
184
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
181
185
break ;
182
186
case 5 :
183
187
/* Wait until eFlash controller gets unlocked */
184
- while ((readl (SYS_EFLASH_STATUS )
188
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
185
189
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
186
190
/* Erase Block #0 + info pages */
187
- writel (SYS_EFLASH_WADDR , eflash .basebank0_me );
188
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
191
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank0_me );
192
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
189
193
/* Wait until eFlash controller is not busy */
190
- while ((readl (SYS_EFLASH_STATUS )
194
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
191
195
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
192
196
/* Wait until eFlash controller gets unlocked */
193
- while ((readl (SYS_EFLASH_STATUS )
197
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
194
198
& EFLASH_LOCK_MASK ) == EFLASH_LOCK );
195
199
/* Erase Block #1 + info pages */
196
- writel (SYS_EFLASH_WADDR , eflash .basebank1_me );
197
- writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
200
+ EFlash_Writel (SYS_EFLASH_WADDR , eflash .basebank1_me );
201
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_MASS_ERASE );
198
202
/* Wait until eFlash controller is not busy */
199
- while ((readl (SYS_EFLASH_STATUS )
203
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
200
204
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
201
205
break ;
202
206
default :
@@ -208,10 +212,10 @@ void EFlash_Erase(int mode)
208
212
void EFlash_ErasePage (unsigned int waddr )
209
213
{
210
214
/* Erase the page starting a waddr */
211
- writel (SYS_EFLASH_WADDR , waddr );
212
- writel (SYS_EFLASH_CTRL , EFLASH_ERASE );
215
+ EFlash_Writel (SYS_EFLASH_WADDR , waddr );
216
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_ERASE );
213
217
/* Wait until eFlash controller gets unlocked */
214
- while ((readl (SYS_EFLASH_STATUS )
218
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
215
219
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
216
220
}
217
221
@@ -224,13 +228,13 @@ void EFlash_ErasePage(unsigned int waddr)
224
228
void EFlash_Write (unsigned int waddr , unsigned int data )
225
229
{
226
230
/* Set Write Data Register */
227
- writel (SYS_EFLASH_WDATA , data );
231
+ EFlash_Writel (SYS_EFLASH_WDATA , data );
228
232
/* Set Write Address Register */
229
- writel (SYS_EFLASH_WADDR , waddr );
233
+ EFlash_Writel (SYS_EFLASH_WADDR , waddr );
230
234
/* Start Write Operation through CTRL register */
231
- writel (SYS_EFLASH_CTRL , EFLASH_WRITE );
235
+ EFlash_Writel (SYS_EFLASH_CTRL , EFLASH_WRITE );
232
236
/* Wait until eFlash controller gets unlocked */
233
- while ((readl (SYS_EFLASH_STATUS )
237
+ while ((EFlash_Readl (SYS_EFLASH_STATUS )
234
238
& EFLASH_BUSY_MASK ) == EFLASH_BUSY );
235
239
236
240
/* Flash Cache invalidate if FCache enabled */
@@ -275,7 +279,7 @@ int EFlash_WritePage(unsigned int waddr, unsigned int page_size,
275
279
*/
276
280
unsigned int EFlash_Read (unsigned int waddr )
277
281
{
278
- unsigned int eflash_read = readl (waddr );
282
+ unsigned int eflash_read = EFlash_Readl (waddr );
279
283
return eflash_read ;
280
284
}
281
285
0 commit comments