@@ -492,20 +492,33 @@ macro_rules! dma {
492
492
) +
493
493
}
494
494
} ;
495
+
496
+ ( $X: literal: { $( $C: literal) ,+} ) => {
497
+ paste:: paste! {
498
+ dma!(
499
+ [ <DMA $X>] , [ <dma $X>] , [ <dma $X en>] ,
500
+ channels: {
501
+ $(
502
+ [ <C $C>] :
503
+ (
504
+ [ <ch $C>] ,
505
+ [ <htif $C>] ,
506
+ [ <tcif $C>] ,
507
+ [ <teif $C>] ,
508
+ [ <gif $C>] ,
509
+ [ <chtif $C>] ,
510
+ [ <ctcif $C>] ,
511
+ [ <cteif $C>] ,
512
+ [ <cgif $C>]
513
+ ) ,
514
+ ) +
515
+ } ,
516
+ ) ;
517
+ }
518
+ } ;
495
519
}
496
520
497
- dma ! (
498
- DMA1 , dma1, dma1en,
499
- channels: {
500
- C1 : ( ch1, htif1, tcif1, teif1, gif1, chtif1, ctcif1, cteif1, cgif1) ,
501
- C2 : ( ch2, htif2, tcif2, teif2, gif2, chtif2, ctcif2, cteif2, cgif2) ,
502
- C3 : ( ch3, htif3, tcif3, teif3, gif3, chtif3, ctcif3, cteif3, cgif3) ,
503
- C4 : ( ch4, htif4, tcif4, teif4, gif4, chtif4, ctcif4, cteif4, cgif4) ,
504
- C5 : ( ch5, htif5, tcif5, teif5, gif5, chtif5, ctcif5, cteif5, cgif5) ,
505
- C6 : ( ch6, htif6, tcif6, teif6, gif6, chtif6, ctcif6, cteif6, cgif6) ,
506
- C7 : ( ch7, htif7, tcif7, teif7, gif7, chtif7, ctcif7, cteif7, cgif7) ,
507
- } ,
508
- ) ;
521
+ dma ! ( 1 : { 1 , 2 , 3 , 4 , 5 , 6 , 7 } ) ;
509
522
510
523
#[ cfg( any(
511
524
feature = "stm32f302xb" ,
@@ -517,16 +530,7 @@ dma!(
517
530
feature = "stm32f303xd" ,
518
531
feature = "stm32f303xe" ,
519
532
) ) ]
520
- dma ! (
521
- DMA2 , dma2, dma2en,
522
- channels: {
523
- C1 : ( ch1, htif1, tcif1, teif1, gif1, chtif1, ctcif1, cteif1, cgif1) ,
524
- C2 : ( ch2, htif2, tcif2, teif2, gif2, chtif2, ctcif2, cteif2, cgif2) ,
525
- C3 : ( ch3, htif3, tcif3, teif3, gif3, chtif3, ctcif3, cteif3, cgif3) ,
526
- C4 : ( ch4, htif4, tcif4, teif4, gif4, chtif4, ctcif4, cteif4, cgif4) ,
527
- C5 : ( ch5, htif5, tcif5, teif5, gif5, chtif5, ctcif5, cteif5, cgif5) ,
528
- } ,
529
- ) ;
533
+ dma ! ( 2 : { 1 , 2 , 3 , 4 , 5 } ) ;
530
534
531
535
/// Marker trait mapping DMA targets to their channels
532
536
///
0 commit comments