@@ -87,7 +87,7 @@ pub fn render(
87
87
where
88
88
F : FnOnce ( & mut W ) -> & mut W
89
89
{
90
- self . register. set( f( & mut W :: reset_value( ) ) . bits) ;
90
+ self . register. set( f( & mut W { bits : Self :: reset_value( ) } ) . bits) ;
91
91
}
92
92
} ) ;
93
93
@@ -104,13 +104,20 @@ pub fn render(
104
104
. map ( util:: hex)
105
105
. ok_or_else ( || format ! ( "Register {} has no reset value" , register. name) ) ?;
106
106
107
- w_impl_items . push ( quote ! {
107
+ reg_impl_items . push ( quote ! {
108
108
/// Reset value of the register
109
109
#[ inline]
110
- pub const fn reset_value( ) -> W {
111
- W { bits : #rv }
110
+ pub const fn reset_value( ) -> #rty {
111
+ #rv
112
112
}
113
+ /// Writes the reset value to the register
114
+ #[ inline]
115
+ pub fn reset( & self ) {
116
+ self . register. set( Self :: reset_value( ) )
117
+ }
118
+ } ) ;
113
119
120
+ w_impl_items. push ( quote ! {
114
121
/// Writes raw bits to the register
115
122
#[ inline]
116
123
pub #unsafety fn bits( & mut self , bits: #rty) -> & mut Self {
@@ -120,16 +127,6 @@ pub fn render(
120
127
} ) ;
121
128
}
122
129
123
- if access == Access :: ReadWrite {
124
- reg_impl_items. push ( quote ! {
125
- /// Writes the reset value to the register
126
- #[ inline]
127
- pub fn reset( & self ) {
128
- self . write( |w| w)
129
- }
130
- } )
131
- }
132
-
133
130
mod_items. push ( quote ! {
134
131
impl super :: #name_pc {
135
132
#( #reg_impl_items) *
@@ -372,7 +369,7 @@ pub fn fields(
372
369
#[ doc = #description]
373
370
#[ inline]
374
371
pub fn #sc( & self ) -> #pc_r {
375
- #pc_r:: _from( { #value } )
372
+ #pc_r:: _from( #value )
376
373
}
377
374
} ) ;
378
375
0 commit comments