-
Notifications
You must be signed in to change notification settings - Fork 0
/
LPC2300.lst
2813 lines (2421 loc) · 93.5 KB
/
LPC2300.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
ARM Macro Assembler Page 1
1 00000000 ;/******************************************************
***********************/
2 00000000 ;/* LPC2300.S: Startup file for Philips LPC2300 device s
eries */
3 00000000 ;/******************************************************
***********************/
4 00000000 ;/* <<< Use Configuration Wizard in Context Menu >>>
*/
5 00000000 ;/******************************************************
***********************/
6 00000000 ;/* This file is part of the uVision/ARM development too
ls. */
7 00000000 ;/* Copyright (c) 2007 Keil - An ARM Company. All rights
reserved. */
8 00000000 ;/* This software may only be used under the terms of a
valid, current, */
9 00000000 ;/* end user licence from KEIL for a compatible version
of KEIL software */
10 00000000 ;/* development tools. Nothing else gives you the right
to use this software. */
11 00000000 ;/******************************************************
***********************/
12 00000000
13 00000000
14 00000000 ;/*
15 00000000 ; * The LPC2300.S code is executed after CPU Reset. Thi
s file may be
16 00000000 ; * translated with the following SET symbols. In uVisi
on these SET
17 00000000 ; * symbols are entered under Options - ASM - Define.
18 00000000 ; *
19 00000000 ; * NO_CLOCK_SETUP: when set the startup code will not
initialize Clock
20 00000000 ; * (used mostly when clock is already initialized from
script .ini
21 00000000 ; * file).
22 00000000 ; *
23 00000000 ; * NO_EMC_SETUP: when set the startup code will not in
itializes External
24 00000000 ; * Memory Controller (used mostly when external memory
is already initialized
25 00000000 ; * and loaded from script .ini file).
26 00000000 ; *
27 00000000 ; * RAM_INTVEC: when set the startup code copies except
ion vectors
28 00000000 ; * from on-chip Flash to on-chip RAM.
29 00000000 ; *
30 00000000 ; * REMAP: when set the startup code initializes the re
gister MEMMAP
31 00000000 ; * which overwrites the settings of the CPU configurat
ion pins. The
32 00000000 ; * startup and interrupt vectors are remapped from:
33 00000000 ; * 0x00000000 default setting (not remapped)
34 00000000 ; * 0x40000000 when RAM_MODE is used
35 00000000 ; * 0x80000000 when EXTMEM_MODE is used
36 00000000 ; *
37 00000000 ; * EXTMEM_MODE: when set the device is configured for
code execution
38 00000000 ; * from external memory starting at address 0x80000000
ARM Macro Assembler Page 2
.
39 00000000 ; *
40 00000000 ; * RAM_MODE: when set the device is configured for cod
e execution
41 00000000 ; * from on-chip RAM starting at address 0x40000000.
42 00000000 ; */
43 00000000
44 00000000
45 00000000 ; Standard definitions of Mode bits and Interrupt (I & F
) flags in PSRs
46 00000000
47 00000000 00000010
Mode_USR
EQU 0x10
48 00000000 00000011
Mode_FIQ
EQU 0x11
49 00000000 00000012
Mode_IRQ
EQU 0x12
50 00000000 00000013
Mode_SVC
EQU 0x13
51 00000000 00000017
Mode_ABT
EQU 0x17
52 00000000 0000001B
Mode_UND
EQU 0x1B
53 00000000 0000001F
Mode_SYS
EQU 0x1F
54 00000000
55 00000000 00000080
I_Bit EQU 0x80 ; when I bit is set
, IRQ is disabled
56 00000000 00000040
F_Bit EQU 0x40 ; when F bit is set
, FIQ is disabled
57 00000000
58 00000000
59 00000000 ;----------------------- Memory Definitions ------------
------------------------
60 00000000
61 00000000 ; Internal Memory Base Addresses
62 00000000 00000000
FLASH_BASE
EQU 0x00000000
63 00000000 40000000
RAM_BASE
EQU 0x40000000
64 00000000 80000000
EXTMEM_BASE
EQU 0x80000000
65 00000000
66 00000000 ; External Memory Base Addresses
67 00000000 80000000
STA_MEM0_BASE
EQU 0x80000000
ARM Macro Assembler Page 3
68 00000000 81000000
STA_MEM1_BASE
EQU 0x81000000
69 00000000
70 00000000
71 00000000 ;----------------------- Stack and Heap Definitions ----
------------------------
72 00000000
73 00000000 ;// <h> Stack Configuration (Stack Sizes in Bytes)
74 00000000 ;// <o0> Undefined Mode <0x0-0xFFFFFFFF:8>
75 00000000 ;// <o1> Supervisor Mode <0x0-0xFFFFFFFF:8>
76 00000000 ;// <o2> Abort Mode <0x0-0xFFFFFFFF:8>
77 00000000 ;// <o3> Fast Interrupt Mode <0x0-0xFFFFFFFF:8>
78 00000000 ;// <o4> Interrupt Mode <0x0-0xFFFFFFFF:8>
79 00000000 ;// <o5> User/System Mode <0x0-0xFFFFFFFF:8>
80 00000000 ;// </h>
81 00000000
82 00000000 00000000
UND_Stack_Size
EQU 0x00000000
83 00000000 00000008
SVC_Stack_Size
EQU 0x00000008
84 00000000 00000000
ABT_Stack_Size
EQU 0x00000000
85 00000000 00000000
FIQ_Stack_Size
EQU 0x00000000
86 00000000 00000100
IRQ_Stack_Size
EQU 0x00000100
87 00000000 00000400
USR_Stack_Size
EQU 0x00000400
88 00000000
90 00000000 00000108
ISR_Stack_Size
EQU (UND_Stack_Size + SVC_Stack_Siz
e + ABT_Stack_Size + FIQ_Stack_Size + IRQ_Stack_Size
)
91 00000000
92 00000000 AREA STACK, NOINIT, READWRITE, ALIGN
=3
93 00000000
94 00000000 Stack_Mem
SPACE USR_Stack_Size
95 00000400 __initial_sp
SPACE ISR_Stack_Size
96 00000508
97 00000508 Stack_Top
98 00000508
99 00000508
100 00000508 ;// <h> Heap Configuration
101 00000508 ;// <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF>
102 00000508 ;// </h>
103 00000508
104 00000508 00000000
Heap_Size
ARM Macro Assembler Page 4
EQU 0x00000000
105 00000508
106 00000508 AREA HEAP, NOINIT, READWRITE, ALIGN=
3
107 00000000 __heap_base
108 00000000 Heap_Mem
SPACE Heap_Size
109 00000000 __heap_limit
110 00000000
111 00000000
112 00000000 ;----------------------- System Control Block (SCB) Modu
le Definitions ---------
113 00000000
114 00000000 E01FC000
SCB_BASE
EQU 0xE01FC000 ; SCB Base Address
115 00000000 00000080
PLLCON_OFS
EQU 0x80 ; PLL Control Offse
t
116 00000000 00000084
PLLCFG_OFS
EQU 0x84 ; PLL Configuration
Offset
117 00000000 00000088
PLLSTAT_OFS
EQU 0x88 ; PLL Status Offset
118 00000000 0000008C
PLLFEED_OFS
EQU 0x8C ; PLL Feed Offset
119 00000000 00000104
CCLKCFG_OFS
EQU 0x104 ; CPU Clock Divider
Reg Offset
120 00000000 00000108
USBCLKCFG_OFS
EQU 0x108 ; USB Clock Divider
Reg Offset
121 00000000 0000010C
CLKSRCSEL_OFS
EQU 0x10C ; Clock Source Sele
ct Reg Offset
122 00000000 000001A0
SCS_OFS EQU 0x1A0 ; System Control an
d Status Reg Offset
123 00000000 000001A8
PCLKSEL0_OFS
EQU 0x1A8 ; Peripheral Clock
Select Reg 0 Offset
124 00000000 000001AC
PCLKSEL1_OFS
EQU 0x1AC ; Peripheral Clock
Select Reg 1 Offset
125 00000000
126 00000000 000000C0
ARM Macro Assembler Page 5
PCON_OFS
EQU 0x0C0 ; Power Mode Contro
l Reg Offset
127 00000000 000000C4
PCONP_OFS
EQU 0x0C4 ; Power Control for
Periphs Reg Offset
128 00000000
129 00000000 ; Constants
130 00000000 00000010
OSCRANGE
EQU (1<<4) ; Oscillator Range
Select
131 00000000 00000020
OSCEN EQU (1<<5) ; Main oscillator E
nable
132 00000000 00000040
OSCSTAT EQU (1<<6) ; Main Oscillator S
tatus
133 00000000 00000001
PLLCON_PLLE
EQU (1<<0) ; PLL Enable
134 00000000 00000002
PLLCON_PLLC
EQU (1<<1) ; PLL Connect
135 00000000 00007FFF
PLLSTAT_M
EQU (0x7FFF<<0) ; PLL M Value
136 00000000 00FF0000
PLLSTAT_N
EQU (0xFF<<16) ; PLL N Value
137 00000000 04000000
PLLSTAT_PLOCK
EQU (1<<26) ; PLL Lock Status
138 00000000
139 00000000 ;// <e> Clock Setup
140 00000000 ;// <h> System Controls and Status Register (SCS)
141 00000000 ;// <o1.4> OSCRANGE: Main Oscillator Range Select
142 00000000 ;// <0=> 1 MHz to 20 MHz
143 00000000 ;// <1=> 15 MHz to 24 MHz
144 00000000 ;// <e1.5> OSCEN: Main Oscillator Enable
145 00000000 ;// </e>
146 00000000 ;// </h>
147 00000000 ;//
148 00000000 ;// <h> Clock Source Select Register (CLKSRCSEL)
149 00000000 ;// <o2.0..1> CLKSRC: PLL Clock Source Selection
150 00000000 ;// <0=> Internal RC oscillator
151 00000000 ;// <1=> Main oscillator
152 00000000 ;// <2=> RTC oscillator
153 00000000 ;// </h>
154 00000000 ;//
155 00000000 ;// <h> PLL Configuration Register (PLLCFG)
156 00000000 ;// <i> PLL_clk = (2* M * PLL_clk_sr
c) / N
157 00000000 ;// <o3.0..14> MSEL: PLL Multiplier Selection
158 00000000 ;// <1-32768><#-1>
159 00000000 ;// <i> M Value
ARM Macro Assembler Page 6
160 00000000 ;// <o3.16..23> NSEL: PLL Divider Selection
161 00000000 ;// <1-256><#-1>
162 00000000 ;// <i> N Value
163 00000000 ;// </h>
164 00000000 ;//
165 00000000 ;// <h> CPU Clock Configuration Register (CCLKCFG)
166 00000000 ;// <o4.0..7> CCLKSEL: Divide Value for CPU Clock f
rom PLL
167 00000000 ;// <2-256:2><#-1>
168 00000000 ;// </h>
169 00000000 ;//
170 00000000 ;// <h> USB Clock Configuration Register (USBCLKCFG)
171 00000000 ;// <o5.0..3> USBSEL: Divide Value for USB Clock f
rom PLL
172 00000000 ;// <1-16><#-1>
173 00000000 ;// </h>
174 00000000 ;//
175 00000000 ;// <h> Peripheral Clock Selection Register 0 (PCLKSEL
0)
176 00000000 ;// <o6.0..1> PCLK_WDT: Peripheral Clock Select
ion for WDT
177 00000000 ;// <0=> Pclk = Cclk / 4
178 00000000 ;// <1=> Pclk = Cclk
179 00000000 ;// <2=> Pclk = Cclk / 2
180 00000000 ;// <3=> Pclk = Hclk / 8
181 00000000 ;// <o6.2..3> PCLK_TIMER0: Peripheral Clock Select
ion for TIMER0
182 00000000 ;// <0=> Pclk = Cclk / 4
183 00000000 ;// <1=> Pclk = Cclk
184 00000000 ;// <2=> Pclk = Cclk / 2
185 00000000 ;// <3=> Pclk = Hclk / 8
186 00000000 ;// <o6.4..5> PCLK_TIMER1: Peripheral Clock Select
ion for TIMER1
187 00000000 ;// <0=> Pclk = Cclk / 4
188 00000000 ;// <1=> Pclk = Cclk
189 00000000 ;// <2=> Pclk = Cclk / 2
190 00000000 ;// <3=> Pclk = Hclk / 8
191 00000000 ;// <o6.6..7> PCLK_UART0: Peripheral Clock Select
ion for UART0
192 00000000 ;// <0=> Pclk = Cclk / 4
193 00000000 ;// <1=> Pclk = Cclk
194 00000000 ;// <2=> Pclk = Cclk / 2
195 00000000 ;// <3=> Pclk = Hclk / 8
196 00000000 ;// <o6.8..9> PCLK_UART1: Peripheral Clock Select
ion for UART1
197 00000000 ;// <0=> Pclk = Cclk / 4
198 00000000 ;// <1=> Pclk = Cclk
199 00000000 ;// <2=> Pclk = Cclk / 2
200 00000000 ;// <3=> Pclk = Hclk / 8
201 00000000 ;// <o6.10..11> PCLK_PWM0: Peripheral Clock Select
ion for PWM0
202 00000000 ;// <0=> Pclk = Cclk / 4
203 00000000 ;// <1=> Pclk = Cclk
204 00000000 ;// <2=> Pclk = Cclk / 2
205 00000000 ;// <3=> Pclk = Hclk / 8
206 00000000 ;// <o6.12..13> PCLK_PWM1: Peripheral Clock Select
ion for PWM1
207 00000000 ;// <0=> Pclk = Cclk / 4
208 00000000 ;// <1=> Pclk = Cclk
ARM Macro Assembler Page 7
209 00000000 ;// <2=> Pclk = Cclk / 2
210 00000000 ;// <3=> Pclk = Hclk / 8
211 00000000 ;// <o6.14..15> PCLK_I2C0: Peripheral Clock Select
ion for I2C0
212 00000000 ;// <0=> Pclk = Cclk / 4
213 00000000 ;// <1=> Pclk = Cclk
214 00000000 ;// <2=> Pclk = Cclk / 2
215 00000000 ;// <3=> Pclk = Hclk / 8
216 00000000 ;// <o6.16..17> PCLK_SPI: Peripheral Clock Select
ion for SPI
217 00000000 ;// <0=> Pclk = Cclk / 4
218 00000000 ;// <1=> Pclk = Cclk
219 00000000 ;// <2=> Pclk = Cclk / 2
220 00000000 ;// <3=> Pclk = Hclk / 8
221 00000000 ;// <o6.18..19> PCLK_RTC: Peripheral Clock Select
ion for RTC
222 00000000 ;// <0=> Pclk = Cclk / 4
223 00000000 ;// <1=> Pclk = Cclk
224 00000000 ;// <2=> Pclk = Cclk / 2
225 00000000 ;// <3=> Pclk = Hclk / 8
226 00000000 ;// <o6.20..21> PCLK_SSP1: Peripheral Clock Select
ion for SSP1
227 00000000 ;// <0=> Pclk = Cclk / 4
228 00000000 ;// <1=> Pclk = Cclk
229 00000000 ;// <2=> Pclk = Cclk / 2
230 00000000 ;// <3=> Pclk = Hclk / 8
231 00000000 ;// <o6.22..23> PCLK_DAC: Peripheral Clock Select
ion for DAC
232 00000000 ;// <0=> Pclk = Cclk / 4
233 00000000 ;// <1=> Pclk = Cclk
234 00000000 ;// <2=> Pclk = Cclk / 2
235 00000000 ;// <3=> Pclk = Hclk / 8
236 00000000 ;// <o6.24..25> PCLK_ADC: Peripheral Clock Select
ion for ADC
237 00000000 ;// <0=> Pclk = Cclk / 4
238 00000000 ;// <1=> Pclk = Cclk
239 00000000 ;// <2=> Pclk = Cclk / 2
240 00000000 ;// <3=> Pclk = Hclk / 8
241 00000000 ;// <o6.26..27> PCLK_CAN1: Peripheral Clock Select
ion for CAN1
242 00000000 ;// <0=> Pclk = Cclk / 4
243 00000000 ;// <1=> Pclk = Cclk
244 00000000 ;// <2=> Pclk = Cclk / 2
245 00000000 ;// <3=> Pclk = Hclk / 6
246 00000000 ;// <o6.28..29> PCLK_CAN2: Peripheral Clock Select
ion for CAN2
247 00000000 ;// <0=> Pclk = Cclk / 4
248 00000000 ;// <1=> Pclk = Cclk
249 00000000 ;// <2=> Pclk = Cclk / 2
250 00000000 ;// <3=> Pclk = Hclk / 6
251 00000000 ;// <o6.30..31> PCLK_ACF: Peripheral Clock Select
ion for ACF
252 00000000 ;// <0=> Pclk = Cclk / 4
253 00000000 ;// <1=> Pclk = Cclk
254 00000000 ;// <2=> Pclk = Cclk / 2
255 00000000 ;// <3=> Pclk = Hclk / 6
256 00000000 ;// </h>
257 00000000 ;//
258 00000000 ;// <h> Peripheral Clock Selection Register 1 (PCLKSEL
ARM Macro Assembler Page 8
1)
259 00000000 ;// <o7.0..1> PCLK_BAT_RAM: Peripheral Clock Select
ion for the Battery Supported RAM
260 00000000 ;// <0=> Pclk = Cclk / 4
261 00000000 ;// <1=> Pclk = Cclk
262 00000000 ;// <2=> Pclk = Cclk / 2
263 00000000 ;// <3=> Pclk = Hclk / 8
264 00000000 ;// <o7.2..3> PCLK_GPIO: Peripheral Clock Select
ion for GPIOs
265 00000000 ;// <0=> Pclk = Cclk / 4
266 00000000 ;// <1=> Pclk = Cclk
267 00000000 ;// <2=> Pclk = Cclk / 2
268 00000000 ;// <3=> Pclk = Hclk / 8
269 00000000 ;// <o7.4..5> PCLK_PCB: Peripheral Clock Select
ion for Pin Connect Block
270 00000000 ;// <0=> Pclk = Cclk / 4
271 00000000 ;// <1=> Pclk = Cclk
272 00000000 ;// <2=> Pclk = Cclk / 2
273 00000000 ;// <3=> Pclk = Hclk / 8
274 00000000 ;// <o7.6..7> PCLK_I2C1: Peripheral Clock Select
ion for I2C1
275 00000000 ;// <0=> Pclk = Cclk / 4
276 00000000 ;// <1=> Pclk = Cclk
277 00000000 ;// <2=> Pclk = Cclk / 2
278 00000000 ;// <3=> Pclk = Hclk / 8
279 00000000 ;// <o7.10..11> PCLK_SSP0: Peripheral Clock Select
ion for SSP0
280 00000000 ;// <0=> Pclk = Cclk / 4
281 00000000 ;// <1=> Pclk = Cclk
282 00000000 ;// <2=> Pclk = Cclk / 2
283 00000000 ;// <3=> Pclk = Hclk / 8
284 00000000 ;// <o7.12..13> PCLK_TIMER2: Peripheral Clock Select
ion for TIMER2
285 00000000 ;// <0=> Pclk = Cclk / 4
286 00000000 ;// <1=> Pclk = Cclk
287 00000000 ;// <2=> Pclk = Cclk / 2
288 00000000 ;// <3=> Pclk = Hclk / 8
289 00000000 ;// <o7.14..15> PCLK_TIMER3: Peripheral Clock Select
ion for TIMER3
290 00000000 ;// <0=> Pclk = Cclk / 4
291 00000000 ;// <1=> Pclk = Cclk
292 00000000 ;// <2=> Pclk = Cclk / 2
293 00000000 ;// <3=> Pclk = Hclk / 8
294 00000000 ;// <o7.16..17> PCLK_UART2: Peripheral Clock Select
ion for UART2
295 00000000 ;// <0=> Pclk = Cclk / 4
296 00000000 ;// <1=> Pclk = Cclk
297 00000000 ;// <2=> Pclk = Cclk / 2
298 00000000 ;// <3=> Pclk = Hclk / 8
299 00000000 ;// <o7.18..19> PCLK_UART3: Peripheral Clock Select
ion for UART3
300 00000000 ;// <0=> Pclk = Cclk / 4
301 00000000 ;// <1=> Pclk = Cclk
302 00000000 ;// <2=> Pclk = Cclk / 2
303 00000000 ;// <3=> Pclk = Hclk / 8
304 00000000 ;// <o7.20..21> PCLK_I2C2: Peripheral Clock Select
ion for I2C2
305 00000000 ;// <0=> Pclk = Cclk / 4
306 00000000 ;// <1=> Pclk = Cclk
ARM Macro Assembler Page 9
307 00000000 ;// <2=> Pclk = Cclk / 2
308 00000000 ;// <3=> Pclk = Hclk / 8
309 00000000 ;// <o7.22..23> PCLK_I2S: Peripheral Clock Select
ion for I2S
310 00000000 ;// <0=> Pclk = Cclk / 4
311 00000000 ;// <1=> Pclk = Cclk
312 00000000 ;// <2=> Pclk = Cclk / 2
313 00000000 ;// <3=> Pclk = Hclk / 8
314 00000000 ;// <o7.24..25> PCLK_MCI: Peripheral Clock Select
ion for MCI
315 00000000 ;// <0=> Pclk = Cclk / 4
316 00000000 ;// <1=> Pclk = Cclk
317 00000000 ;// <2=> Pclk = Cclk / 2
318 00000000 ;// <3=> Pclk = Hclk / 8
319 00000000 ;// <o7.28..29> PCLK_SYSCON: Peripheral Clock Select
ion for System Control Block
320 00000000 ;// <0=> Pclk = Cclk / 4
321 00000000 ;// <1=> Pclk = Cclk
322 00000000 ;// <2=> Pclk = Cclk / 2
323 00000000 ;// <3=> Pclk = Hclk / 8
324 00000000 ;// </h>
325 00000000 ;// <h> Power Control for Peripherals Register (PCONP)
326 00000000 ;// <o8.31> PCUSB: USB interface power/clock ena
ble
327 00000000 ;// <o8.30> PCENET: Ethernet block power/clock e
nable
328 00000000 ;// <o8.29> PCGPDMA: GP DMA function power/clock
enable
329 00000000 ;// <o8.28> PCSDC: SD card interface power/clock
enable
330 00000000 ;// <o8.27> PCI2S: I2S interface power/clock ena
ble
331 00000000 ;// <o8.26> PCI2C2: I2C interface 2 power/clock
enable
332 00000000 ;// <o8.25> PCUART3: UART 3 power/clock enable
333 00000000 ;// <o8.24> PCUART2: UART 2 power/clock enable
334 00000000 ;// <o8.23> PCTIM3: Timer 3 power/clock enable
335 00000000 ;// <o8.22> PCTIM2: Timer 2 power/clock enable
336 00000000 ;// <o8.21> PCSSP0: SSP interface 0 power/clock
enable
337 00000000 ;// <o8.19> PCI2C1: I2C interface 1 power/clock
enable
338 00000000 ;// <o8.14> PCAN2: CAN controller 2 power/clock
enable
339 00000000 ;// <o8.13> PCAN1: CAN controller 1 power/clock
enable
340 00000000 ;// <o8.12> PCAD: A/D converter power/clock enab
le
341 00000000 ;// <o8.11> PCEMC: External memory controller po
wer/clock enable
342 00000000 ;// <o8.10> PCSSP1: SSP interface 1 power/clock
enable
343 00000000 ;// <o8.9> PCRTC: RTC power/clock enable
344 00000000 ;// <o8.8> PCSPI: SPI interface power/clock ena
ble
345 00000000 ;// <o8.7> PCI2C0: I2C interface 0 power/clock
enable
346 00000000 ;// <o8.6> PCPWM1: PWM 1 power/clock enable
ARM Macro Assembler Page 10
347 00000000 ;// <o8.4> PCUART1: UART 1 power/clock enable
348 00000000 ;// <o8.3> PCUART0: UART 0 power/clock enable
349 00000000 ;// <o8.2> PCTIM1: Timer/Counter 1 power/clock
enable
350 00000000 ;// <o8.1> PCTIM0: Timer/Counter 0 power/clock
enable
351 00000000 ;// </h>
352 00000000 ;// </e>
353 00000000 00000001
CLOCK_SETUP
EQU 1
354 00000000 00000020
SCS_Val EQU 0x00000020
355 00000000 00000001
CLKSRCSEL_Val
EQU 0x00000001
356 00000000 0000000B
PLLCFG_Val
EQU 0x0000000B
357 00000000 00000005
CCLKCFG_Val
EQU 0x00000005
358 00000000 00000005
USBCLKCFG_Val
EQU 0x00000005
359 00000000 00000000
PCLKSEL0_Val
EQU 0x00000000
360 00000000 00000000
PCLKSEL1_Val
EQU 0x00000000
361 00000000 04280FDE
PCONP_Val
EQU 0x04280FDE
362 00000000
363 00000000 ;----------------------- Memory Accelerator Module (MAM)
Definitions -----------
364 00000000
365 00000000 E01FC000
MAM_BASE
EQU 0xE01FC000 ; MAM Base Address
366 00000000 00000000
MAMCR_OFS
EQU 0x00 ; MAM Control Offse
t
367 00000000 00000004
MAMTIM_OFS
EQU 0x04 ; MAM Timing Offset
368 00000000
369 00000000 ;// <e> MAM Setup
370 00000000 ;// <o1.0..1> MAM Control
371 00000000 ;// <0=> Disabled
372 00000000 ;// <1=> Partially Enabled
373 00000000 ;// <2=> Fully Enabled
374 00000000 ;// <i> Mode
375 00000000 ;// <o2.0..2> MAM Timing
376 00000000 ;// <0=> Reserved <1=> 1 <2=> 2 <3=>
3
ARM Macro Assembler Page 11
377 00000000 ;// <4=> 4 <5=> 5 <6=> 6 <7=>
7
378 00000000 ;// <i> Fetch Cycles
379 00000000 ;// </e>
380 00000000 00000001
MAM_SETUP
EQU 1
381 00000000 00000002
MAMCR_Val
EQU 0x00000002
382 00000000 00000004
MAMTIM_Val
EQU 0x00000004
383 00000000
384 00000000
385 00000000 ;----------------------- Pin Connect Block Definitions -
------------------------
386 00000000
387 00000000 E002C000
PCB_BASE
EQU 0xE002C000 ; PCB Base Address
388 00000000 00000000
PINSEL0_OFS
EQU 0x00 ; PINSEL0 Address
Offset
389 00000000 00000004
PINSEL1_OFS
EQU 0x04 ; PINSEL1 Address
Offset
390 00000000 00000008
PINSEL2_OFS
EQU 0x08 ; PINSEL2 Address
Offset
391 00000000 0000000C
PINSEL3_OFS
EQU 0x0C ; PINSEL3 Address
Offset
392 00000000 00000010
PINSEL4_OFS
EQU 0x10 ; PINSEL4 Address
Offset
393 00000000 00000014
PINSEL5_OFS
EQU 0x14 ; PINSEL5 Address
Offset
394 00000000 00000018
PINSEL6_OFS
EQU 0x18 ; PINSEL6 Address
Offset
395 00000000 0000001C
PINSEL7_OFS
EQU 0x1C ; PINSEL7 Address
Offset
396 00000000 00000020
PINSEL8_OFS
EQU 0x20 ; PINSEL8 Address
Offset
397 00000000 00000024
PINSEL9_OFS
ARM Macro Assembler Page 12
EQU 0x24 ; PINSEL9 Address
Offset
398 00000000 00000028
PINSEL10_OFS
EQU 0x28 ; PINSEL10 Address
Offset
399 00000000
400 00000000
401 00000000 ;----------------------- External Memory Controller (EMC
) Definitons -----------
402 00000000
403 00000000 FFE08000
EMC_BASE
EQU 0xFFE08000 ; EMC Base Address
404 00000000
405 00000000 00000000
EMC_CTRL_OFS
EQU 0x000 ; EMCControl
406 00000000 00000004
EMC_STAT_OFS
EQU 0x004 ; EMCStatus
407 00000000 00000008
EMC_CONFIG_OFS
EQU 0x008 ; EMCConfig
408 00000000 00000200
EMC_STA_CFG0_OFS
EQU 0x200 ; EMCStaticConfig0
409 00000000 00000204
EMC_STA_WWEN0_OFS
EQU 0x204 ; EMCStaticWaitWen0
410 00000000 00000208
EMC_STA_WOEN0_OFS
EQU 0x208 ; EMCStaticWaitOen0
411 00000000 0000020C
EMC_STA_WRD0_OFS
EQU 0x20C ; EMCStaticWaitRd0
412 00000000 00000210
EMC_STA_WPAGE0_OFS
EQU 0x210 ; EMCStaticWaitPage
0
413 00000000 00000214
EMC_STA_WWR0_OFS
EQU 0x214 ; EMCStaticWaitWr0
414 00000000 00000218
EMC_STA_WTURN0_OFS
EQU 0x218 ; EMCStaticWaitTurn
0
415 00000000 00000220
EMC_STA_CFG1_OFS
EQU 0x220 ; EMCStaticConfig1
416 00000000 00000224
EMC_STA_WWEN1_OFS
EQU 0x224 ; EMCStaticWaitWen1
417 00000000 00000228
EMC_STA_WOEN1_OFS
EQU 0x228 ; EMCStaticWaitOen1
ARM Macro Assembler Page 13
418 00000000 0000022C
EMC_STA_WRD1_OFS
EQU 0x22C ; EMCStaticWaitRd1
419 00000000 00000230
EMC_STA_WPAGE1_OFS
EQU 0x230 ; EMCStaticWaitPage
1
420 00000000 00000234
EMC_STA_WWR1_OFS
EQU 0x234 ; EMCStaticWaitWr1
421 00000000 00000238
EMC_STA_WTURN1_OFS
EQU 0x238 ; EMCStaticWaitTurn
1
422 00000000 00000880
EMC_STA_EXT_W_OFS
EQU 0x880 ; EMCStaticExtended
Wait
423 00000000
424 00000000 00080000
BUFEN_Const
EQU (1 << 19) ; Buffer enable bit
425 00000000 00000800
EMC_PCONP_Const
EQU (1 << 11) ; PCONP val to enab
le power for EMC
426 00000000
427 00000000 ; External Memory Pins definitions
428 00000000 ; pin functions for external memory interfacing
429 00000000 00005555
EMC_PINSEL6_Val
EQU 0x00005555 ; D0 .. D7
430 00000000 55555555
EMC_PINSEL8_Val
EQU 0x55555555 ; A0 .. A15
431 00000000 50090000
EMC_PINSEL9_Val
EQU 0x50090000 ; ; !OE, !WE (B
LS0 because of erra
ta), !CS0, !CS1
432 00000000
433 00000000 ;// External Memory Controller Setup (EMC) ---------
------------------------
434 00000000 ;// <e> External Memory Controller Setup (EMC)
435 00000000 00000001
EMC_SETUP
EQU 1
436 00000000
437 00000000 ;// <h> EMC Control Register (EMCControl)
438 00000000 ;// <i> Controls operation of the memory controller
439 00000000 ;// <o0.2> L: Low-power mode enable
440 00000000 ;// <o0.1> M: Address mirror enable
441 00000000 ;// <o0.0> E: EMC enable
442 00000000 ;// </h>
443 00000000 00000001
EMC_CTRL_Val
EQU 0x00000001
ARM Macro Assembler Page 14
444 00000000
445 00000000 ;// <h> EMC Configuration Register (EMCConfig)
446 00000000 ;// <o0.0> Endian mode
447 00000000 ;// <0=> Little-endian
448 00000000 ;// <1=> Big-endian
449 00000000 ;// </h>
450 00000000 00000000
EMC_CONFIG_Val
EQU 0x00000000
451 00000000
452 00000000 ;// Configure External Bus Behaviour for Static CS
0 Area -----------------
453 00000000 ;// <e> Configure External Bus Behaviour for Static CS
0 Area
454 00000000 00000001
EMC_STACS0_SETUP
EQU 1
455 00000000
456 00000000 ;// <h> Static Memory Configuration Register (EMCSta
ticConfig0)
457 00000000 ;// <i> Defines the configuration information for
the static memory CS0
458 00000000 ;// <o0.20> WP: Write protect
459 00000000 ;// <o0.19> B: Write buffer enable
460 00000000 ;// <o0.8> EW: Extended wait enable
461 00000000 ;// <o0.6> PC: Chip select polarity
462 00000000 ;// <0=> Active LOW chip select
463 00000000 ;// <1=> Active HIGH chip select
464 00000000 ;// <o0.3> PM: Async page mode enable
465 00000000 ;// <o0.0..1> MW: Memory width
466 00000000 ;// <0=> 8 bit
467 00000000 ;// <1=> 16 bit
468 00000000 ;// <2=> 32 bit
469 00000000 ;// </h>
470 00000000 00000000
EMC_STA_CFG0_Val
EQU 0x00000000
471 00000000
472 00000000 ;// <h> Static Memory Write Enable Delay Register (E
MCStaticWaitWen0)
473 00000000 ;// <i> Selects the delay from CS0 to write enable
474 00000000 ;// <o.0..3> WAITWEN: Wait write enable <1-16> <#-
1>
475 00000000 ;// <i> The delay is in CCLK cycles
476 00000000 ;// </h>
477 00000000 00000002
EMC_STA_WWEN0_Val
EQU 0x00000002
478 00000000
479 00000000 ;// <h> Static Memory Output Enable Delay register (
EMCStaticWaitOen0)
480 00000000 ;// <i> Selects the delay from CS0 or address chan
ge, whichever is later, to output enable
481 00000000 ;// <o.0..3> WAITOEN: Wait output enable <0-15>
482 00000000 ;// <i> The delay is in CCLK cycles
483 00000000 ;// </h>
484 00000000 00000002
EMC_STA_WOEN0_Val
ARM Macro Assembler Page 15
EQU 0x00000002
485 00000000
486 00000000 ;// <h> Static Memory Read Delay Register (EMCStatic
WaitRd0)
487 00000000 ;// <i> Selects the delay from CS0 to a read acces
s
488 00000000 ;// <o.0..4> WAITRD: Non-page mode read wait state
s or asynchronous page mode read first access wait state
s <1-32> <#-1>
489 00000000 ;// <i> The delay is in CCLK cycles
490 00000000 ;// </h>
491 00000000 0000001F
EMC_STA_WRD0_Val
EQU 0x0000001F
492 00000000
493 00000000 ;// <h> Static Memory Page Mode Read Delay Register
(EMCStaticWaitPage0)
494 00000000 ;// <i> Selects the delay for asynchronous page mo
de sequential accesses for CS0
495 00000000 ;// <o.0..4> WAITPAGE: Asynchronous page mode read
after the first read wait states <1-32> <#-1>
496 00000000 ;// <i> The delay is in CCLK cycles
497 00000000 ;// </h>
498 00000000 0000001F
EMC_STA_WPAGE0_Val
EQU 0x0000001F
499 00000000
500 00000000 ;// <h> Static Memory Write Delay Register (EMCStati
cWaitWr0)
501 00000000 ;// <i> Selects the delay from CS0 to a write acce
ss
502 00000000 ;// <o.0..4> WAITWR: Write wait states <2-33> <#-2
>
503 00000000 ;// <i> The delay is in CCLK cycles
504 00000000 ;// </h>
505 00000000 0000001F
EMC_STA_WWR0_Val
EQU 0x0000001F
506 00000000
507 00000000 ;// <h> Static Memory Turn Round Delay Register (EMC
StaticWaitTurn0)
508 00000000 ;// <i> Selects the number of bus turnaround cycle
s for CS0
509 00000000 ;// <o.0..4> WAITTURN: Bus turnaround cycles <1-16
> <#-1>
510 00000000 ;// <i> The delay is in CCLK cycles
511 00000000 ;// </h>
512 00000000 0000000F
EMC_STA_WTURN0_Val
EQU 0x0000000F
513 00000000
514 00000000 ;// </e> End of Static Setup for Static CS0 Area
515 00000000
516 00000000 ;// Configure External Bus Behaviour for Static CS
1 Area -----------------
517 00000000 ;// <e> Configure External Bus Behaviour for Static CS
1 Area
518 00000000 00000000
EMC_STACS1_SETUP
ARM Macro Assembler Page 16
EQU 0
519 00000000
520 00000000 ;// <h> Static Memory Configuration Register (EMCSta
ticConfig1)
521 00000000 ;// <i> Defines the configuration information for
the static memory CS1
522 00000000 ;// <o0.20> WP: Write protect
523 00000000 ;// <o0.19> B: Write buffer enable
524 00000000 ;// <o0.8> EW: Extended wait enable
525 00000000 ;// <o0.6> PC: Chip select polarity
526 00000000 ;// <0=> Active LOW chip select
527 00000000 ;// <1=> Active HIGH chip select
528 00000000 ;// <o0.3> PM: Async page mode enable
529 00000000 ;// <o0.0..1> MW: Memory width
530 00000000 ;// <0=> 8 bit
531 00000000 ;// <1=> 16 bit
532 00000000 ;// <2=> 32 bit
533 00000000 ;// </h>
534 00000000 00000000