summaryrefslogtreecommitdiffstatshomepage
path: root/cc3200/hal/inc/hw_gpio.h
blob: 2bd6e0f3aed935d389ea7f6bd8835f1e3976c965 (plain) (blame)
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
//*****************************************************************************
//
//  Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
//
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions
//  are met:
//
//    Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
//
//    Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the
//    distribution.
//
//    Neither the name of Texas Instruments Incorporated nor the names of
//    its contributors may be used to endorse or promote products derived
//    from this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
//  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
//  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
//  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
//  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
//  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
//  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
//  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
//  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
//  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
//  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
//*****************************************************************************

#ifndef __HW_GPIO_H__
#define __HW_GPIO_H__

//*****************************************************************************
//
// The following are defines for the GPIO register offsets.
//
//*****************************************************************************
#define GPIO_O_GPIO_DATA        0x00000000  // 0x4000 5000 0x4000 6000 0x4000
                                            // 7000 0x4002 4000 GPIO Data
                                            // (GPIODATA)@@ offset 0x000 The
                                            // GPIODATA register is the data
                                            // register. In software control
                                            // mode@@ values written in the
                                            // GPIODATA register are transferred
                                            // onto the GPIO port pins if the
                                            // respective pins have been
                                            // configured as outputs through the
                                            // GPIO Direction (GPIODIR) register
                                            // (see page 653). In order to write
                                            // to GPIODATA@@ the corresponding
                                            // bits in the mask@@ resulting from
                                            // the address bus bits [9:2]@@ must
                                            // be set. Otherwise@@ the bit
                                            // values remain unchanged by the
                                            // write. Similarly@@ the values
                                            // read from this register are
                                            // determined for each bit by the
                                            // mask bit derived from the address
                                            // used to access the data
                                            // register@@ bits [9:2]. Bits that
                                            // are set in the address mask cause
                                            // the corresponding bits in
                                            // GPIODATA to be read@@ and bits
                                            // that are clear in the address
                                            // mask cause the corresponding bits
                                            // in GPIODATA to be read as 0@@
                                            // regardless of their value. A read
                                            // from GPIODATA returns the last
                                            // bit value written if the
                                            // respective pins are configured as
                                            // outputs@@ or it returns the value
                                            // on the corresponding input pin
                                            // when these are configured as
                                            // inputs. All bits are cleared by a
                                            // reset.
#define GPIO_O_GPIO_DIR         0x00000400  // 0x4000 5400 0x4000 6400 0x4000
                                            // 7400 0x4002 4400 GPIO Direction
                                            // (GPIODIR)@@ offset 0x400 The
                                            // GPIODIR register is the data
                                            // direction register. Setting a bit
                                            // in the GPIODIR register
                                            // configures the corresponding pin
                                            // to be an output@@ while clearing
                                            // a bit configures the
                                            // corresponding pin to be an input.
                                            // All bits are cleared by a reset@@
                                            // meaning all GPIO pins are inputs
                                            // by default.
#define GPIO_O_GPIO_IS          0x00000404  // 0x4000 5404 0x4000 6404 0x4000
                                            // 7404 0x4002 4404 GPIO Interrupt
                                            // Sense (GPIOIS)@@ offset 0x404 The
                                            // GPIOIS register is the interrupt
                                            // sense register. Setting a bit in
                                            // the GPIOIS register configures
                                            // the corresponding pin to detect
                                            // levels@@ while clearing a bit
                                            // configures the corresponding pin
                                            // to detect edges. All bits are
                                            // cleared by a reset.
#define GPIO_O_GPIO_IBE         0x00000408  // 0x4000 5408 0x4000 6408 0x4000
                                            // 7408 0x4002 4408 GPIO Interrupt
                                            // Both Edges (GPIOIBE)@@ offset
                                            // 0x408 The GPIOIBE register allows
                                            // both edges to cause interrupts.
                                            // When the corresponding bit in the
                                            // GPIO Interrupt Sense (GPIOIS)
                                            // register is set to detect edges@@
                                            // setting a bit in the GPIOIBE
                                            // register configures the
                                            // corresponding pin to detect both
                                            // rising and falling edges@@
                                            // regardless of the corresponding
                                            // bit in the GPIO Interrupt Event
                                            // (GPIOIEV) register . Clearing a
                                            // bit configures the pin to be
                                            // controlled by the GPIOIEV
                                            // register. All bits are cleared by
                                            // a reset.
#define GPIO_O_GPIO_IEV         0x0000040C  // 0x4000 540C 0x4000 640C 0x4000
                                            // 740C 0x4002 440C GPIO Interrupt
                                            // Event (GPIOIEV)@@ offset 0x40C
                                            // The GPIOIEV register is the
                                            // interrupt event register. Setting
                                            // a bit in the GPIOIEV register
                                            // configures the corresponding pin
                                            // to detect rising edges or high
                                            // levels@@ depending on the
                                            // corresponding bit value in the
                                            // GPIO Interrupt Sense (GPIOIS)
                                            // register . Clearing a bit
                                            // configures the pin to detect
                                            // falling edges or low levels@@
                                            // depending on the corresponding
                                            // bit value in the GPIOIS register.
                                            // All bits are cleared by a reset.
#define GPIO_O_GPIO_IM          0x00000410  // 0x4000 5410 0x4000 6410 0x4000
                                            // 7410 0x4002 4410 GPIO Interrupt
                                            // Mask (GPIOIM)@@ offset 0x410 The
                                            // GPIOIM register is the interrupt
                                            // mask register. Setting a bit in
                                            // the GPIOIM register allows
                                            // interrupts that are generated by
                                            // the corresponding pin to be sent
                                            // to the interrupt controller on
                                            // the combined interrupt signal.
                                            // Clearing a bit prevents an
                                            // interrupt on the corresponding
                                            // pin from being sent to the
                                            // interrupt controller. All bits
                                            // are cleared by a reset.
#define GPIO_O_GPIO_RIS         0x00000414  // 0x4000 5414 0x4000 6414 0x4000
                                            // 7414 0x4002 4414 GPIO Raw
                                            // Interrupt Status (GPIORIS)@@
                                            // offset 0x414 The GPIORIS register
                                            // is the raw interrupt status
                                            // register. A bit in this register
                                            // is set when an interrupt
                                            // condition occurs on the
                                            // corresponding GPIO pin. If the
                                            // corresponding bit in the GPIO
                                            // Interrupt Mask (GPIOIM) register
                                            // is set@@ the interrupt is sent to
                                            // the interrupt controller. Bits
                                            // read as zero indicate that
                                            // corresponding input pins have not
                                            // initiated an interrupt. A bit in
                                            // this register can be cleared by
                                            // writing a 1 to the corresponding
                                            // bit in the GPIO Interrupt Clear
                                            // (GPIOICR) register.
#define GPIO_O_GPIO_MIS         0x00000418  // 0x4000 5418 0x4000 6418 0x4000
                                            // 7418 0x4002 4418 GPIO Masked
                                            // Interrupt Status (GPIOMIS)@@
                                            // offset 0x418 The GPIOMIS register
                                            // is the masked interrupt status
                                            // register. If a bit is set in this
                                            // register@@ the corresponding
                                            // interrupt has triggered an
                                            // interrupt to the interrupt
                                            // controller. If a bit is clear@@
                                            // either no interrupt has been
                                            // generated@@ or the interrupt is
                                            // masked. If no port pin@@ other
                                            // than the one that is being used
                                            // as an ADC trigger@@ is being used
                                            // to generate interrupts@@ the
                                            // appropriate Interrupt Set Enable
                                            // (ENn) register can disable the
                                            // interrupts for the port@@ and the
                                            // ADC interrupt can be used to read
                                            // back the converted data.
                                            // Otherwise@@ the port interrupt
                                            // handler must ignore and clear
                                            // interrupts on the port pin and
                                            // wait for the ADC interrupt@@ or
                                            // the ADC interrupt must be
                                            // disabled in the EN0 register and
                                            // the port interrupt handler must
                                            // poll the ADC registers until the
                                            // conversion is completed. If no
                                            // port pin@@ other than the one
                                            // that is being used as an ADC
                                            // trigger@@ is being used to
                                            // generate interrupts@@ the
                                            // appropriate Interrupt Set Enable
                                            // (ENn) register can disable the
                                            // interrupts for the port@@ and the
                                            // ADC interrupt can be used to read
                                            // back the converted data.
                                            // Otherwise@@ the port interrupt
                                            // handler must ignore and clear
                                            // interrupts on the port pin and
                                            // wait for the ADC interrupt@@ or
                                            // the ADC interrupt must be
                                            // disabled in the EN0 register and
                                            // the port interrupt handler must
                                            // poll the ADC registers until the
                                            // conversion is completed. Note
                                            // that if the Port B GPIOADCCTL
                                            // register is cleared@@ PB4 can
                                            // still be used as an external
                                            // trigger for the ADC. This is a
                                            // legacy mode which allows code
                                            // written for previous Stellaris
                                            // devices to operate on this
                                            // microcontroller. GPIOMIS is the
                                            // state of the interrupt after
                                            // masking.
#define GPIO_O_GPIO_ICR         0x0000041C  // 0x4000 541C 0x4000 641C 0x4000
                                            // 741C 0x4002 441C GPIO Interrupt
                                            // Clear (GPIOICR)@@ offset 0x41C
                                            // The GPIOICR register is the
                                            // interrupt clear register. Writing
                                            // a 1 to a bit in this register
                                            // clears the corresponding
                                            // interrupt bit in the GPIORIS and
                                            // GPIOMIS registers. Writing a 0
                                            // has no effect.
#define GPIO_O_GPIO_AFSEL       0x00000420  // 0x4000 5420 0x4000 6420 0x4000
                                            // 7420 0x4002 4420 GPIO Alternate
                                            // Function Select (GPIOAFSEL)@@
                                            // offset 0x420 The GPIOAFSEL
                                            // register is the mode control
                                            // select register. If a bit is
                                            // clear@@ the pin is used as a GPIO
                                            // and is controlled by the GPIO
                                            // registers. Setting a bit in this
                                            // register configures the
                                            // corresponding GPIO line to be
                                            // controlled by an associated
                                            // peripheral. Several possible
                                            // peripheral functions are
                                            // multiplexed on each GPIO. The
                                            // GPIO Port Control (GPIOPCTL)
                                            // register is used to select one of
                                            // the possible functions.
#define GPIO_O_GPIO_DR2R        0x00000500  // 0x4000 5500 0x4000 6500 0x4000
                                            // 7500 0x4002 4500 GPIO 2-mA Drive
                                            // Select (GPIODR2R)@@ offset 0x500
                                            // The GPIODR2R register is the 2-mA
                                            // drive control register. Each GPIO
                                            // signal in the port can be
                                            // individually configured without
                                            // affecting the other pads. When
                                            // setting the DRV2 bit for a GPIO
                                            // signal@@ the corresponding DRV4
                                            // bit in the GPIODR4R register and
                                            // DRV8 bit in the GPIODR8R register
                                            // are automatically cleared by
                                            // hardware. By default@@ all GPIO
                                            // pins have 2-mA drive.
#define GPIO_O_GPIO_DR4R        0x00000504  // 0x4000 5504 0x4000 6504 0x4000
                                            // 7504 0x4002 4504 GPIO 4-mA Drive
                                            // Select (GPIODR4R)@@ offset 0x504
                                            // The GPIODR4R register is the 4-mA
                                            // drive control register. Each GPIO
                                            // signal in the port can be
                                            // individually configured without
                                            // affecting the other pads. When
                                            // setting the DRV4 bit for a GPIO
                                            // signal@@ the corresponding DRV2
                                            // bit in the GPIODR2R register and
                                            // DRV8 bit in the GPIODR8R register
                                            // are automatically cleared by
                                            // hardware.
#define GPIO_O_GPIO_DR8R        0x00000508  // 0x4000 5508 0x4000 6508 0x4000
                                            // 7508 0x4002 4508 GPIO 8-mA Drive
                                            // Select (GPIODR8R)@@ offset 0x508
                                            // The GPIODR8R register is the 8-mA
                                            // drive control register. Each GPIO
                                            // signal in the port can be
                                            // individually configured without
                                            // affecting the other pads. When
                                            // setting the DRV8 bit for a GPIO
                                            // signal@@ the corresponding DRV2
                                            // bit in the GPIODR2R register and
                                            // DRV4 bit in the GPIODR4R register
                                            // are automatically cleared by
                                            // hardware. The 8-mA setting is
                                            // also used for high-current
                                            // operation. Note: There is no
                                            // configuration difference between
                                            // 8-mA and high-current operation.
                                            // The additional current capacity
                                            // results from a shift in the
                                            // VOH/VOL levels.
#define GPIO_O_GPIO_ODR         0x0000050C  // 0x4000 550C 0x4000 650C 0x4000
                                            // 750C 0x4002 450C GPIO Open Drain
                                            // Select (GPIOODR)@@ offset 0x50C
                                            // The GPIOODR register is the open
                                            // drain control register. Setting a
                                            // bit in this register enables the
                                            // open-drain configuration of the
                                            // corresponding GPIO pad. When
                                            // open-drain mode is enabled@@ the
                                            // corresponding bit should also be
                                            // set in the GPIO Digital Input
                                            // Enable (GPIODEN) register .
                                            // Corresponding bits in the drive
                                            // strength and slew rate control
                                            // registers (GPIODR2R@@ GPIODR4R@@
                                            // GPIODR8R@@ and GPIOSLR) can be
                                            // set to achieve the desired rise
                                            // and fall times. The GPIO acts as
                                            // an open-drain input if the
                                            // corresponding bit in the GPIODIR
                                            // register is cleared. If open
                                            // drain is selected while the GPIO
                                            // is configured as an input@@ the
                                            // GPIO will remain an input and the
                                            // open-drain selection has no
                                            // effect until the GPIO is changed
                                            // to an output. When using the I2C
                                            // module@@ in addition to
                                            // configuring the pin to open
                                            // drain@@ the GPIO Alternate
                                            // Function Select (GPIOAFSEL)
                                            // register bits for the I2C clock
                                            // and data pins should be set
#define GPIO_O_GPIO_PUR         0x00000510  // 0x4000 5510 0x4000 6510 0x4000
                                            // 7510 0x4002 4510 GPIO Pull-Up
                                            // Select (GPIOPUR)@@ offset 0x510
                                            // The GPIOPUR register is the
                                            // pull-up control register. When a
                                            // bit is set@@ a weak pull-up
                                            // resistor on the corresponding
                                            // GPIO signal is enabled. Setting a
                                            // bit in GPIOPUR automatically
                                            // clears the corresponding bit in
                                            // the GPIO Pull-Down Select
                                            // (GPIOPDR) register . Write access
                                            // to this register is protected
                                            // with the GPIOCR register. Bits in
                                            // GPIOCR that are cleared prevent
                                            // writes to the equivalent bit in
                                            // this register.
#define GPIO_O_GPIO_PDR         0x00000514  // 0x4000 5514 0x4000 6514 0x4000
                                            // 7514 0x4002 4514 GPIO Pull-Down
                                            // Select (GPIOPDR)@@ offset 0x514
                                            // The GPIOPDR register is the
                                            // pull-down control register. When
                                            // a bit is set@@ a weak pull-down
                                            // resistor on the corresponding
                                            // GPIO signal is enabled. Setting a
                                            // bit in GPIOPDR automatically
                                            // clears the corresponding bit in
                                            // the GPIO Pull-Up Select (GPIOPUR)
                                            // register
#define GPIO_O_GPIO_SLR         0x00000518  // 0x4000 5518 0x4000 6518 0x4000
                                            // 7518 0x4002 4518 The GPIOSLR
                                            // register is the slew rate control
                                            // register. Slew rate control is
                                            // only available when using the
                                            // 8-mA drive strength option via
                                            // the GPIO 8-mA Drive Select
                                            // (GPIODR8R) register
#define GPIO_O_GPIO_DEN         0x0000051C  // 0x4000 551C 0x4000 651C 0x4000
                                            // 751C 0x4002 451C GPIO Digital
                                            // Enable (GPIODEN)@@ offset 0x51C
                                            // Note: Pins configured as digital
                                            // inputs are Schmitt-triggered. The
                                            // GPIODEN register is the digital
                                            // enable register. By default@@ all
                                            // GPIO signals except those listed
                                            // below are configured out of reset
                                            // to be undriven (tristate). Their
                                            // digital function is disabled;
                                            // they do not drive a logic value
                                            // on the pin and they do not allow
                                            // the pin voltage into the GPIO
                                            // receiver. To use the pin as a
                                            // digital input or output (either
                                            // GPIO or alternate function)@@ the
                                            // corresponding GPIODEN bit must be
                                            // set.
#define GPIO_O_GPIO_LOCK        0x00000520  // 0x4000 5520 0x4000 6520 0x4000
                                            // 7520 0x4002 4520 GPIO Lock
                                            // (GPIOLOCK)@@ offset 0x520 The
                                            // GPIOLOCK register enables write
                                            // access to the GPIOCR register .
                                            // Writing 0x4C4F.434B to the
                                            // GPIOLOCK register unlocks the
                                            // GPIOCR register. Writing any
                                            // other value to the GPIOLOCK
                                            // register re-enables the locked
                                            // state. Reading the GPIOLOCK
                                            // register returns the lock status
                                            // rather than the 32-bit value that
                                            // was previously written.
                                            // Therefore@@ when write accesses
                                            // are disabled@@ or locked@@
                                            // reading the GPIOLOCK register
                                            // returns 0x0000.0001. When write
                                            // accesses are enabled@@ or
                                            // unlocked@@ reading the GPIOLOCK
                                            // register returns 0x0000.0000.
#define GPIO_O_GPIO_CR          0x00000524  // 0x4000 5524 0x4000 6524 0x4000
                                            // 7524 0x4002 4524 GPIO Commit
                                            // (GPIOCR)@@ offset 0x524 The
                                            // GPIOCR register is the commit
                                            // register. The value of the GPIOCR
                                            // register determines which bits of
                                            // the GPIOAFSEL@@ GPIOPUR@@
                                            // GPIOPDR@@ and GPIODEN registers
                                            // are committed when a write to
                                            // these registers is performed. If
                                            // a bit in the GPIOCR register is
                                            // cleared@@ the data being written
                                            // to the corresponding bit in the
                                            // GPIOAFSEL@@ GPIOPUR@@ GPIOPDR@@
                                            // or GPIODEN registers cannot be
                                            // committed and retains its
                                            // previous value. If a bit in the
                                            // GPIOCR register is set@@ the data
                                            // being written to the
                                            // corresponding bit of the
                                            // GPIOAFSEL@@ GPIOPUR@@ GPIOPDR@@
                                            // or GPIODEN registers is committed
                                            // to the register and reflects the
                                            // new value. The contents of the
                                            // GPIOCR register can only be
                                            // modified if the status in the
                                            // GPIOLOCK register is unlocked.
                                            // Writes to the GPIOCR register are
                                            // ignored if the status in the
                                            // GPIOLOCK register is locked.
#define GPIO_O_GPIO_AMSEL       0x00000528  // 0x4000 5528 0x4000 6528 0x4000
                                            // 7528 0x4002 4528 The GPIOAMSEL
                                            // register controls isolation
                                            // circuits to the analog side of a
                                            // unified I/O pad. Because the
                                            // GPIOs may be driven by a 5-V
                                            // source and affect analog
                                            // operation@@ analog circuitry
                                            // requires isolation from the pins
                                            // when they are not used in their
                                            // analog function. Each bit of this
                                            // register controls the isolation
                                            // circuitry for the corresponding
                                            // GPIO signal.
#define GPIO_O_GPIO_PCTL        0x0000052C  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) 0x4000 552C
                                            // 0x4000 652C 0x4000 752C 0x4002
                                            // 452C GPIO Port Control
                                            // (GPIOPCTL)@@ offset 0x52C The
                                            // GPIOPCTL register is used in
                                            // conjunction with the GPIOAFSEL
                                            // register and selects the specific
                                            // peripheral signal for each GPIO
                                            // pin when using the alternate
                                            // function mode. Most bits in the
                                            // GPIOAFSEL register are cleared on
                                            // reset@@ therefore most GPIO pins
                                            // are configured as GPIOs by
                                            // default. When a bit is set in the
                                            // GPIOAFSEL register@@ the
                                            // corresponding GPIO signal is
                                            // controlled by an associated
                                            // peripheral. The GPIOPCTL register
                                            // selects one out of a set of
                                            // peripheral functions for each
                                            // GPIO@@ providing additional
                                            // flexibility in signal definition.
#define GPIO_O_GPIO_ADCCTL      0x00000530  // This register is not used in
                                            // cc3xx. ADC trigger via GPIO is
                                            // not supported. 0x4000 5530 0x4000
                                            // 6530 0x4000 7530 0x4002 4530 GPIO
                                            // ADC Control (GPIOADCCTL)@@ offset
                                            // 0x530 This register is used to
                                            // configure a GPIO pin as a source
                                            // for the ADC trigger. Note that if
                                            // the Port B GPIOADCCTL register is
                                            // cleared@@ PB4 can still be used
                                            // as an external trigger for the
                                            // ADC. This is a legacy mode which
                                            // allows code written for previous
                                            // Stellaris devices to operate on
                                            // this microcontroller.
#define GPIO_O_GPIO_DMACTL      0x00000534  // 0x4000 5534 0x4000 6534 0x4000
                                            // 7534 0x4002 4534 GPIO DMA Control
                                            // (GPIODMACTL)@@ offset 0x534 This
                                            // register is used to configure a
                                            // GPIO pin as a source for the ?DMA
                                            // trigger.
#define GPIO_O_GPIO_SI          0x00000538  // 0x4000 5538 0x4000 6538 0x4000
                                            // 7538 0x4002 4538 GPIO Select
                                            // Interrupt (GPIOSI)@@ offset 0x538
                                            // This register is used to enable
                                            // individual interrupts for each
                                            // pin. Note: This register is only
                                            // available on Port P and Port Q.
#define GPIO_O_GPIO_PERIPHID4   0x00000FD0  // 0x4000 5FD0 0x4000 6FD0 0x4000
                                            // 7FD0 0x4002 4FD0 GPIO Peripheral
                                            // Identification 4
                                            // (GPIOPeriphID4)@@ offset 0xFD0
                                            // The GPIOPeriphID4@@
                                            // GPIOPeriphID5@@ GPIOPeriphID6@@
                                            // and GPIOPeriphID7 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID5   0x00000FD4  // 0x4000 5FD4 0x4000 6FD4 0x4000
                                            // 7FD4 0x4002 4FD4 GPIO Peripheral
                                            // Identification 5
                                            // (GPIOPeriphID5)@@ offset 0xFD4
                                            // The GPIOPeriphID4@@
                                            // GPIOPeriphID5@@ GPIOPeriphID6@@
                                            // and GPIOPeriphID7 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID6   0x00000FD8  // 0x4000 5FD8 0x4000 6FD8 0x4000
                                            // 7FD8 0x4002 4FD8 GPIO Peripheral
                                            // Identification 6
                                            // (GPIOPeriphID6)@@ offset 0xFD8
                                            // The GPIOPeriphID4@@
                                            // GPIOPeriphID5@@ GPIOPeriphID6@@
                                            // and GPIOPeriphID7 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID7   0x00000FDC  // 0x4000 5FDC 0x4000 6FDC 0x4000
                                            // 7FDC 0x4002 4FDC GPIO Peripheral
                                            // Identification 7
                                            // (GPIOPeriphID7)@@ offset 0xFDC
                                            // The GPIOPeriphID4@@
                                            // GPIOPeriphID5@@ GPIOPeriphID6@@
                                            // and GPIOPeriphID7 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID0   0x00000FE0  // 0x4000 5FE0 0x4000 6FE0 0x4000
                                            // 7FE0 0x4002 4FE0 GPIO Peripheral
                                            // Identification 0
                                            // (GPIOPeriphID0)@@ offset 0xFE0
                                            // The GPIOPeriphID0@@
                                            // GPIOPeriphID1@@ GPIOPeriphID2@@
                                            // and GPIOPeriphID3 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID1   0x00000FE4  // 0x4000 5FE4 0x4000 6FE4 0x4000
                                            // 7FE4 0x4002 4FE4 GPIO Peripheral
                                            // Identification 1
                                            // (GPIOPeriphID1)@@ offset 0xFE4
                                            // The GPIOPeriphID0@@
                                            // GPIOPeriphID1@@ GPIOPeriphID2@@
                                            // and GPIOPeriphID3 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID2   0x00000FE8  // 0x4000 5FE8 0x4000 6FE8 0x4000
                                            // 7FE8 0x4002 4FE8 GPIO Peripheral
                                            // Identification 2
                                            // (GPIOPeriphID2)@@ offset 0xFE8
                                            // The GPIOPeriphID0@@
                                            // GPIOPeriphID1@@ GPIOPeriphID2@@
                                            // and GPIOPeriphID3 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PERIPHID3   0x00000FEC  // 0x4000 5FEC 0x4000 6FEC 0x4000
                                            // 7FEC 0x4002 4FEC GPIO Peripheral
                                            // Identification 3
                                            // (GPIOPeriphID3)@@ offset 0xFEC
                                            // The GPIOPeriphID0@@
                                            // GPIOPeriphID1@@ GPIOPeriphID2@@
                                            // and GPIOPeriphID3 registers can
                                            // conceptually be treated as one
                                            // 32-bit register; each register
                                            // contains eight bits of the 32-bit
                                            // register@@ used by software to
                                            // identify the peripheral.
#define GPIO_O_GPIO_PCELLID0    0x00000FF0  // 0x4000 5FF0 0x4000 6FF0 0x4000
                                            // 7FF0 0x4002 4FF0 GPIO PrimeCell
                                            // Identification 0 (GPIOPCellID0)@@
                                            // offset 0xFF0 The GPIOPCellID0@@
                                            // GPIOPCellID1@@ GPIOPCellID2@@ and
                                            // GPIOPCellID3 registers are four
                                            // 8-bit wide registers@@ that can
                                            // conceptually be treated as one
                                            // 32-bit register. The register is
                                            // used as a standard
                                            // cross-peripheral identification
                                            // system.
#define GPIO_O_GPIO_PCELLID1    0x00000FF4  // 0x4000 5FF4 0x4000 6FF4 0x4000
                                            // 7FF4 0x4002 4FF4 GPIO PrimeCell
                                            // Identification 1 (GPIOPCellID1)@@
                                            // offset 0xFF4 The GPIOPCellID0@@
                                            // GPIOPCellID1@@ GPIOPCellID2@@ and
                                            // GPIOPCellID3 registers are four
                                            // 8-bit wide registers@@ that can
                                            // conceptually be treated as one
                                            // 32-bit register. The register is
                                            // used as a standard
                                            // cross-peripheral identification
                                            // system.
#define GPIO_O_GPIO_PCELLID2    0x00000FF8  // 0x4000 5FF8 0x4000 6FF8 0x4000
                                            // 7FF8 0x4002 4FF8 GPIO PrimeCell
                                            // Identification 2 (GPIOPCellID2)@@
                                            // offset 0xFF8 The GPIOPCellID0@@
                                            // GPIOPCellID1@@ GPIOPCellID2@@ and
                                            // GPIOPCellID3 registers are four
                                            // 8-bit wide registers@@ that can
                                            // conceptually be treated as one
                                            // 32-bit register. The register is
                                            // used as a standard
                                            // cross-peripheral identification
                                            // system.
#define GPIO_O_GPIO_PCELLID3    0x00000FFC  // 0x4000 5FFC 0x4000 6FFC 0x4000
                                            // 7FFC 0x4002 4FFC GPIO PrimeCell
                                            // Identification 3 (GPIOPCellID3)@@
                                            // offset 0xFFC The GPIOPCellID0@@
                                            // GPIOPCellID1@@ GPIOPCellID2@@ and
                                            // GPIOPCellID3 registers are four
                                            // 8-bit wide registers@@ that can
                                            // conceptually be treated as one
                                            // 32-bit register. The register is
                                            // used as a standard
                                            // cross-peripheral identification
                                            // system.0xb1



//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DATA register.
//
//******************************************************************************
#define GPIO_GPIO_DATA_DATA_M   0x000000FF  // GPIO Data This register is
                                            // virtually mapped to 256 locations
                                            // in the address space. To
                                            // facilitate the reading and
                                            // writing of data to these
                                            // registers by independent
                                            // drivers@@ the data read from and
                                            // written to the registers are
                                            // masked by the eight address lines
                                            // [9:2]. Reads from this register
                                            // return its current state. Writes
                                            // to this register only affect bits
                                            // that are not masked by ADDR[9:2]
                                            // and are configured as outputs.
#define GPIO_GPIO_DATA_DATA_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DIR register.
//
//******************************************************************************
#define GPIO_GPIO_DIR_DIR_M     0x000000FF  // GPIO Data Direction Value
                                            // Description 0 Corresponding pin
                                            // is an input. 1 Corresponding pins
                                            // is an output.
#define GPIO_GPIO_DIR_DIR_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_IS register.
//
//******************************************************************************
#define GPIO_GPIO_IS_IS_M       0x000000FF  // GPIO Interrupt Sense Value
                                            // Description 0 The edge on the
                                            // corresponding pin is detected
                                            // (edge-sensitive). 1 The level on
                                            // the corresponding pin is detected
                                            // (level-sensitive).
#define GPIO_GPIO_IS_IS_S       0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_IBE register.
//
//******************************************************************************
#define GPIO_GPIO_IBE_IBE_M     0x000000FF  // GPIO Interrupt Both Edges Value
                                            // Description 0 Interrupt
                                            // generation is controlled by the
                                            // GPIO Interrupt Event (GPIOIEV)
                                            // register. 1 Both edges on the
                                            // corresponding pin trigger an
                                            // interrupt.
#define GPIO_GPIO_IBE_IBE_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_IEV register.
//
//******************************************************************************
#define GPIO_GPIO_IEV_IEV_M     0x000000FF  // GPIO Interrupt Event Value
                                            // Description 1 A falling edge or a
                                            // Low level on the corresponding
                                            // pin triggers an interrupt. 0 A
                                            // rising edge or a High level on
                                            // the corresponding pin triggers an
                                            // interrupt.
#define GPIO_GPIO_IEV_IEV_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_IM register.
//
//******************************************************************************
#define GPIO_GPIO_IM_IME_M      0x000000FF  // GPIO Interrupt Mask Enable Value
                                            // Description 0 The interrupt from
                                            // the corresponding pin is masked.
                                            // 1 The interrupt from the
                                            // corresponding pin is sent to the
                                            // interrupt controller.
#define GPIO_GPIO_IM_IME_S      0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_RIS register.
//
//******************************************************************************
#define GPIO_GPIO_RIS_RIS_M     0x000000FF  // GPIO Interrupt Raw Status Value
                                            // Description 1 An interrupt
                                            // condition has occurred on the
                                            // corresponding pin. 0 interrupt
                                            // condition has not occurred on the
                                            // corresponding pin. A bit is
                                            // cleared by writing a 1 to the
                                            // corresponding bit in the GPIOICR
                                            // register.
#define GPIO_GPIO_RIS_RIS_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_MIS register.
//
//******************************************************************************
#define GPIO_GPIO_MIS_MIS_M     0x000000FF  // GPIO Masked Interrupt Status
                                            // Value Description 1 An interrupt
                                            // condition on the corresponding
                                            // pin has triggered an interrupt to
                                            // the interrupt controller. 0 An
                                            // interrupt condition on the
                                            // corresponding pin is masked or
                                            // has not occurred. A bit is
                                            // cleared by writing a 1 to the
                                            // corresponding bit in the GPIOICR
                                            // register.
#define GPIO_GPIO_MIS_MIS_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_ICR register.
//
//******************************************************************************
#define GPIO_GPIO_ICR_IC_M      0x000000FF  // GPIO Interrupt Clear Value
                                            // Description 1 The corresponding
                                            // interrupt is cleared. 0 The
                                            // corresponding interrupt is
                                            // unaffected.
#define GPIO_GPIO_ICR_IC_S      0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_AFSEL register.
//
//******************************************************************************
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DR2R register.
//
//******************************************************************************
#define GPIO_GPIO_DR2R_DRV2_M   0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Output Pad
                                            // 2-mA Drive Enable Value
                                            // Description 1 The corresponding
                                            // GPIO pin has 2-mA drive. The
                                            // drive for the corresponding GPIO
                                            // pin is controlled by the GPIODR4R
                                            // or GPIODR8R register. 0 Setting a
                                            // bit in either the GPIODR4
                                            // register or the GPIODR8 register
                                            // clears the corresponding 2-mA
                                            // enable bit. The change is
                                            // effective on the second clock
                                            // cycle after the write if
                                            // accessing GPIO via the APB memory
                                            // aperture. If using AHB access@@
                                            // the change is effective on the
                                            // next clock cycle.
#define GPIO_GPIO_DR2R_DRV2_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DR4R register.
//
//******************************************************************************
#define GPIO_GPIO_DR4R_DRV4_M   0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Output Pad
                                            // 4-mA Drive Enable Value
                                            // Description 1 The corresponding
                                            // GPIO pin has 4-mA drive. The
                                            // drive for the corresponding GPIO
                                            // pin is controlled by the GPIODR2R
                                            // or GPIODR8R register. 0 Setting a
                                            // bit in either the GPIODR2
                                            // register or the GPIODR8 register
                                            // clears the corresponding 4-mA
                                            // enable bit. The change is
                                            // effective on the second clock
                                            // cycle after the write if
                                            // accessing GPIO via the APB memory
                                            // aperture. If using AHB access@@
                                            // the change is effective on the
                                            // next clock cycle.
#define GPIO_GPIO_DR4R_DRV4_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DR8R register.
//
//******************************************************************************
#define GPIO_GPIO_DR8R_DRV8_M   0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Output Pad
                                            // 8-mA Drive Enable Value
                                            // Description 1 The corresponding
                                            // GPIO pin has 8-mA drive. The
                                            // drive for the corresponding GPIO
                                            // pin is controlled by the GPIODR2R
                                            // or GPIODR4R register. 0 Setting a
                                            // bit in either the GPIODR2
                                            // register or the GPIODR4 register
                                            // clears the corresponding 8-mA
                                            // enable bit. The change is
                                            // effective on the second clock
                                            // cycle after the write if
                                            // accessing GPIO via the APB memory
                                            // aperture. If using AHB access@@
                                            // the change is effective on the
                                            // next clock cycle.
#define GPIO_GPIO_DR8R_DRV8_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_ODR register.
//
//******************************************************************************
#define GPIO_GPIO_ODR_ODE_M     0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Output Pad
                                            // Open Drain Enable Value
                                            // Description 1 The corresponding
                                            // pin is configured as open drain.
                                            // 0 The corresponding pin is not
                                            // configured as open drain.
#define GPIO_GPIO_ODR_ODE_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_PUR register.
//
//******************************************************************************
#define GPIO_GPIO_PUR_PUE_M     0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Pad Weak
                                            // Pull-Up Enable Value Description
                                            // 1 The corresponding pin has a
                                            // weak pull-up resistor. 0 The
                                            // corresponding pin is not
                                            // affected. Setting a bit in the
                                            // GPIOPDR register clears the
                                            // corresponding bit in the GPIOPUR
                                            // register. The change is effective
                                            // on the second clock cycle after
                                            // the write if accessing GPIO via
                                            // the APB memory aperture. If using
                                            // AHB access@@ the change is
                                            // effective on the next clock
                                            // cycle.
#define GPIO_GPIO_PUR_PUE_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_PDR register.
//
//******************************************************************************
#define GPIO_GPIO_PDR_PDE_M     0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Pad Weak
                                            // Pull-Down Enable Value
                                            // Description 1 The corresponding
                                            // pin has a weak pull-down
                                            // resistor. 0 The corresponding pin
                                            // is not affected. Setting a bit in
                                            // the GPIOPUR register clears the
                                            // corresponding bit in the GPIOPDR
                                            // register. The change is effective
                                            // on the second clock cycle after
                                            // the write if accessing GPIO via
                                            // the APB memory aperture. If using
                                            // AHB access@@ the change is
                                            // effective on the next clock
                                            // cycle.
#define GPIO_GPIO_PDR_PDE_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_SLR register.
//
//******************************************************************************
#define GPIO_GPIO_SLR_SRL_M     0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Slew Rate
                                            // Limit Enable (8-mA drive only)
                                            // Value Description 1 Slew rate
                                            // control is enabled for the
                                            // corresponding pin. 0 Slew rate
                                            // control is disabled for the
                                            // corresponding pin.
#define GPIO_GPIO_SLR_SRL_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_DEN register.
//
//******************************************************************************
#define GPIO_GPIO_DEN_DEN_M     0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Digital Enable
                                            // Value Description 0 The digital
                                            // functions for the corresponding
                                            // pin are disabled. 1 The digital
                                            // functions for the corresponding
                                            // pin are enabled.
#define GPIO_GPIO_DEN_DEN_S     0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_LOCK register.
//
//******************************************************************************
#define GPIO_GPIO_LOCK_LOCK_M   0xFFFFFFFF  // This register is not used in
                                            // cc3xx. GPIO Lock A write of the
                                            // value 0x4C4F.434B unlocks the
                                            // GPIO Commit (GPIOCR) register for
                                            // write access.A write of any other
                                            // value or a write to the GPIOCR
                                            // register reapplies the lock@@
                                            // preventing any register updates.
                                            // A read of this register returns
                                            // the following values: Value
                                            // Description 0x1 The GPIOCR
                                            // register is locked and may not be
                                            // modified. 0x0 The GPIOCR register
                                            // is unlocked and may be modified.
#define GPIO_GPIO_LOCK_LOCK_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_CR register.
//
//******************************************************************************
#define GPIO_GPIO_CR_CR_M       0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) GPIO Commit
                                            // Value Description The
                                            // corresponding GPIOAFSEL@@
                                            // GPIOPUR@@ GPIOPDR@@ or GPIODEN
                                            // bits can be written. 1 The
                                            // corresponding GPIOAFSEL@@
                                            // GPIOPUR@@ GPIOPDR@@ or GPIODEN
                                            // bits cannot be written. 0 Note:
                                            // The default register type for the
                                            // GPIOCR register is RO for all
                                            // GPIO pins with the exception of
                                            // the NMI pin and the four JTAG/SWD
                                            // pins (PD7@@ PF0@@ and PC[3:0]).
                                            // These six pins are the only GPIOs
                                            // that are protected by the GPIOCR
                                            // register. Because of this@@ the
                                            // register type for GPIO Port D7@@
                                            // GPIO Port F0@@ and GPIO Port
                                            // C[3:0] is R/W. The default reset
                                            // value for the GPIOCR register is
                                            // 0x0000.00FF for all GPIO pins@@
                                            // with the exception of the NMI pin
                                            // and the four JTAG/SWD pins (PD7@@
                                            // PF0@@ and PC[3:0]). To ensure
                                            // that the JTAG port is not
                                            // accidentally programmed as GPIO
                                            // pins@@ the PC[3:0] pins default
                                            // to non-committable. Similarly@@
                                            // to ensure that the NMI pin is not
                                            // accidentally programmed as a GPIO
                                            // pin@@ the PD7 and PF0 pins
                                            // default to non-committable.
                                            // Because of this@@ the default
                                            // reset value of GPIOCR for GPIO
                                            // Port C is 0x0000.00F0@@ for GPIO
                                            // Port D is 0x0000.007F@@ and for
                                            // GPIO Port F is 0x0000.00FE.
#define GPIO_GPIO_CR_CR_S       0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_AMSEL register.
//
//******************************************************************************
#define GPIO_GPIO_AMSEL_GPIO_AMSEL_M \
                                0x000000FF  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) GPIO Analog
                                            // Mode Select Value Description 1
                                            // The analog function of the pin is
                                            // enabled@@ the isolation is
                                            // disabled@@ and the pin is capable
                                            // of analog functions. 0 The analog
                                            // function of the pin is disabled@@
                                            // the isolation is enabled@@ and
                                            // the pin is capable of digital
                                            // functions as specified by the
                                            // other GPIO configuration
                                            // registers. Note: This register
                                            // and bits are only valid for GPIO
                                            // signals that share analog
                                            // function through a unified I/O
                                            // pad. The reset state of this
                                            // register is 0 for all signals.

#define GPIO_GPIO_AMSEL_GPIO_AMSEL_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_PCTL register.
//
//******************************************************************************
#define GPIO_GPIO_PCTL_PMC7_M   0xF0000000  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 7 This field controls the
                                            // configuration for GPIO pin 7.
#define GPIO_GPIO_PCTL_PMC7_S   28
#define GPIO_GPIO_PCTL_PMC6_M   0x0F000000  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 6 This field controls the
                                            // configuration for GPIO pin 6.
#define GPIO_GPIO_PCTL_PMC6_S   24
#define GPIO_GPIO_PCTL_PMC5_M   0x00F00000  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 5 This field controls the
                                            // configuration for GPIO pin 5.
#define GPIO_GPIO_PCTL_PMC5_S   20
#define GPIO_GPIO_PCTL_PMC4_M   0x000F0000  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 4 This field controls the
                                            // configuration for GPIO pin 4.
#define GPIO_GPIO_PCTL_PMC4_S   16
#define GPIO_GPIO_PCTL_PMC3_M   0x0000F000  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 43 This field controls
                                            // the configuration for GPIO pin 3.
#define GPIO_GPIO_PCTL_PMC3_S   12
#define GPIO_GPIO_PCTL_PMC1_M   0x00000F00  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 1 This field controls the
                                            // configuration for GPIO pin 1.
#define GPIO_GPIO_PCTL_PMC1_S   8
#define GPIO_GPIO_PCTL_PMC2_M   0x000000F0  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 2 This field controls the
                                            // configuration for GPIO pin 2.
#define GPIO_GPIO_PCTL_PMC2_S   4
#define GPIO_GPIO_PCTL_PMC0_M   0x0000000F  // This register is not used in
                                            // cc3xx. equivalant register exsist
                                            // outside GPIO IP (refer
                                            // PAD*_config register in the
                                            // shared comn space) Port Mux
                                            // Control 0 This field controls the
                                            // configuration for GPIO pin 0.
#define GPIO_GPIO_PCTL_PMC0_S   0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_ADCCTL register.
//
//******************************************************************************
#define GPIO_GPIO_ADCCTL_ADCEN_M \
                                0x000000FF  // This register is not used in
                                            // cc3xx. ADC trigger via GPIO is
                                            // not supported. ADC Trigger Enable
                                            // Value Description 1 The
                                            // corresponding pin is used to
                                            // trigger the ADC. 0 The
                                            // corresponding pin is not used to
                                            // trigger the ADC.

#define GPIO_GPIO_ADCCTL_ADCEN_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_DMACTL register.
//
//******************************************************************************
#define GPIO_GPIO_DMACTL_DMAEN_M \
                                0x000000FF  // This register is not used in the
                                            // cc3xx. Alternate register to
                                            // support this feature is coded in
                                            // the APPS_NWP_CMN space. refer
                                            // register as offset 0x400F70D8
                                            // ?DMA Trigger Enable Value
                                            // Description 1 The corresponding
                                            // pin is used to trigger the ?DMA.
                                            // 0 The corresponding pin is not
                                            // used to trigger the ?DMA.

#define GPIO_GPIO_DMACTL_DMAEN_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the GPIO_O_GPIO_SI register.
//
//******************************************************************************
#define GPIO_GPIO_SI_SUM        0x00000001  // Summary Interrupt Value
                                            // Description 1 Each pin has its
                                            // own interrupt vector. 0 All port
                                            // pin interrupts are OR'ed together
                                            // to produce a summary interrupt.
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID4 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID4_PID4_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [7:0]

#define GPIO_GPIO_PERIPHID4_PID4_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID5 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID5_PID5_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [15:8]

#define GPIO_GPIO_PERIPHID5_PID5_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID6 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID6_PID6_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [23:16]

#define GPIO_GPIO_PERIPHID6_PID6_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID7 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID7_PID7_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [31:24]

#define GPIO_GPIO_PERIPHID7_PID7_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID0 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID0_PID0_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [7:0] Can be used by
                                            // software to identify the presence
                                            // of this peripheral.

#define GPIO_GPIO_PERIPHID0_PID0_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID1 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID1_PID1_M \
                                0x000000FF  // GPIO Peripheral ID Register
                                            // [15:8] Can be used by software to
                                            // identify the presence of this
                                            // peripheral.

#define GPIO_GPIO_PERIPHID1_PID1_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID2 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID2_PID2_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX.v GPIO Peripheral ID
                                            // Register [23:16] Can be used by
                                            // software to identify the presence
                                            // of this peripheral.

#define GPIO_GPIO_PERIPHID2_PID2_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PERIPHID3 register.
//
//******************************************************************************
#define GPIO_GPIO_PERIPHID3_PID3_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO Peripheral ID
                                            // Register [31:24] Can be used by
                                            // software to identify the presence
                                            // of this peripheral.

#define GPIO_GPIO_PERIPHID3_PID3_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PCELLID0 register.
//
//******************************************************************************
#define GPIO_GPIO_PCELLID0_CID0_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO PrimeCell ID Register
                                            // [7:0] Provides software a
                                            // standard cross-peripheral
                                            // identification system.

#define GPIO_GPIO_PCELLID0_CID0_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PCELLID1 register.
//
//******************************************************************************
#define GPIO_GPIO_PCELLID1_CID1_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO PrimeCell ID Register
                                            // [15:8] Provides software a
                                            // standard cross-peripheral
                                            // identification system.

#define GPIO_GPIO_PCELLID1_CID1_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PCELLID2 register.
//
//******************************************************************************
#define GPIO_GPIO_PCELLID2_CID2_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO PrimeCell ID Register
                                            // [23:16] Provides software a
                                            // standard cross-peripheral
                                            // identification system.

#define GPIO_GPIO_PCELLID2_CID2_S 0
//******************************************************************************
//
// The following are defines for the bit fields in the
// GPIO_O_GPIO_PCELLID3 register.
//
//******************************************************************************
#define GPIO_GPIO_PCELLID3_CID3_M \
                                0x000000FF  // This register is not used in
                                            // CC3XX. GPIO PrimeCell ID Register
                                            // [31:24] Provides software a
                                            // standard cross-peripheral
                                            // identification system.

#define GPIO_GPIO_PCELLID3_CID3_S 0



#endif // __HW_GPIO_H__