File tree Expand file tree Collapse file tree 2 files changed +21
-0
lines changed Expand file tree Collapse file tree 2 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -19,6 +19,10 @@ test_mode() {
1919 https://raw.githubusercontent.com/posborne/cmsis-svd/python-0.4/data/Nordic/nrf51.svd \
2020 > $td /nrf51.svd
2121
22+ curl -L \
23+ https://raw.githubusercontent.com/posborne/cmsis-svd/python-0.4/data/NXP/LPC43xx_svd_v5.svd \
24+ > $td /LPC43xx_svd_v5.svd
25+
2226 # test the library
2327 cargo build $flags
2428 cargo build $flags --release
@@ -36,10 +40,16 @@ test_mode() {
3640 test_gen tim3
3741 test_gen tim6
3842
43+ # Test register arrays
3944 svd=nrf51.svd
4045 test_gen
4146 test_gen gpio
4247 test_gen timer
48+
49+ # japaric/svd2rust#42
50+ svd=LPC43xx_svd_v5.svd
51+ test_gen
52+ test_gen sct
4353}
4454
4555deploy_mode () {
Original file line number Diff line number Diff line change @@ -632,6 +632,12 @@ pub fn gen_register_r(r: &Register,
632632 let mut impl_items = vec ! [ ] ;
633633
634634 for field in fields {
635+ // Skip fields named RESERVED because, well, they are reserved so they
636+ // shouldn't be modified/exposed
637+ if field. name . to_lowercase ( ) == "reserved" {
638+ continue ;
639+ }
640+
635641 if let Some ( Access :: WriteOnly ) = field. access {
636642 continue ;
637643 }
@@ -726,6 +732,11 @@ pub fn gen_register_w(r: &Register,
726732 }
727733
728734 for field in fields {
735+ // Skip fields named RESERVED. See `gen_register_r` for an explanation
736+ if field. name . to_lowercase ( ) == "reserved" {
737+ continue ;
738+ }
739+
729740 if let Some ( Access :: ReadOnly ) = field. access {
730741 continue ;
731742 }
You can’t perform that action at this time.
0 commit comments