@@ -8,8 +8,8 @@ use svd_parser::svd::{
8
8
addressblock:: AddressBlockBuilder , interrupt:: InterruptBuilder , Access , AddressBlock ,
9
9
AddressBlockUsage , ClusterInfo , ClusterInfoBuilder , Cpu , CpuBuilder , Endian , EnumeratedValue ,
10
10
EnumeratedValues , EnumeratedValuesBuilder , FieldInfo , FieldInfoBuilder , Interrupt ,
11
- ModifiedWriteValues , PeripheralInfo , PeripheralInfoBuilder , RegisterCluster , RegisterInfo ,
12
- RegisterInfoBuilder , RegisterProperties , Usage , ValidateLevel , WriteConstraint ,
11
+ ModifiedWriteValues , PeripheralInfo , PeripheralInfoBuilder , ReadAction , RegisterCluster ,
12
+ RegisterInfo , RegisterInfoBuilder , RegisterProperties , Usage , ValidateLevel , WriteConstraint ,
13
13
WriteConstraintRange ,
14
14
} ;
15
15
use svd_parser:: SVDError :: DimIndexParse ;
@@ -434,6 +434,9 @@ fn make_field(fadd: &Hash) -> Result<FieldInfoBuilder> {
434
434
if let Some ( modified_write_values) = fadd. get_str ( "modifiedWriteValues" ) ? {
435
435
fnew = fnew. modified_write_values ( ModifiedWriteValues :: parse_str ( modified_write_values) )
436
436
}
437
+ if let Some ( read_action) = fadd. get_str ( "readAction" ) ? {
438
+ fnew = fnew. read_action ( ReadAction :: parse_str ( read_action) )
439
+ }
437
440
438
441
Ok ( fnew)
439
442
}
0 commit comments