Skip to content

Commit e790b27

Browse files
authored
Use modify instead of write in uart DMA (#373)
1 parent 127ab14 commit e790b27

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/serial.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -650,7 +650,7 @@ macro_rules! serialdma {
650650

651651
impl Rx<$USARTX> {
652652
pub fn with_dma(self, channel: $dmarxch) -> $rxdma {
653-
unsafe { (*$USARTX::ptr()).cr3.write(|w| w.dmar().set_bit()); }
653+
unsafe { (*$USARTX::ptr()).cr3.modify(|_, w| w.dmar().set_bit()); }
654654
RxDma {
655655
payload: self,
656656
channel,
@@ -660,7 +660,7 @@ macro_rules! serialdma {
660660

661661
impl Tx<$USARTX> {
662662
pub fn with_dma(self, channel: $dmatxch) -> $txdma {
663-
unsafe { (*$USARTX::ptr()).cr3.write(|w| w.dmat().set_bit()); }
663+
unsafe { (*$USARTX::ptr()).cr3.modify(|_, w| w.dmat().set_bit()); }
664664
TxDma {
665665
payload: self,
666666
channel,
@@ -675,7 +675,7 @@ macro_rules! serialdma {
675675
}
676676
pub fn release(mut self) -> (Rx<$USARTX>, $dmarxch) {
677677
self.stop();
678-
unsafe { (*$USARTX::ptr()).cr3.write(|w| w.dmar().clear_bit()); }
678+
unsafe { (*$USARTX::ptr()).cr3.modify(|_, w| w.dmar().clear_bit()); }
679679
let RxDma {payload, channel} = self;
680680
(
681681
payload,
@@ -691,7 +691,7 @@ macro_rules! serialdma {
691691
}
692692
pub fn release(mut self) -> (Tx<$USARTX>, $dmatxch) {
693693
self.stop();
694-
unsafe { (*$USARTX::ptr()).cr3.write(|w| w.dmat().clear_bit()); }
694+
unsafe { (*$USARTX::ptr()).cr3.modify(|_, w| w.dmat().clear_bit()); }
695695
let TxDma {payload, channel} = self;
696696
(
697697
payload,

0 commit comments

Comments
 (0)