22//!
33
44use crate :: gpio:: { self , NoPin } ;
5- use crate :: pac:: { CAN1 , CAN2 } ;
5+ use crate :: pac;
66use crate :: rcc;
77
88pub trait Instance : crate :: Sealed + rcc:: Enable + rcc:: Reset + gpio:: alt:: CanCommon { }
@@ -16,22 +16,22 @@ macro_rules! can {
1616}
1717
1818// Implemented by all SPI instances
19- can ! { CAN1 : Can1 }
20- can ! { CAN2 : Can2 }
19+ can ! { pac:: CAN1 : Can1 }
20+ #[ cfg( feature = "can2" ) ]
21+ can ! { pac:: CAN2 : Can2 }
2122#[ cfg( feature = "can3" ) ]
22- can ! { crate :: pac:: CAN3 : Can3 }
23+ can ! { pac:: CAN3 : Can3 }
2324
2425/// Pins and definitions for models with a third CAN peripheral
2526#[ cfg( feature = "can3" ) ]
2627mod can3 {
2728 use super :: * ;
28- use crate :: pac:: CAN3 ;
2929
30- unsafe impl bxcan:: Instance for Can < CAN3 > {
31- const REGISTERS : * mut bxcan:: RegisterBlock = CAN3 :: ptr ( ) as * mut _ ;
30+ unsafe impl bxcan:: Instance for Can < pac :: CAN3 > {
31+ const REGISTERS : * mut bxcan:: RegisterBlock = pac :: CAN3 :: ptr ( ) as * mut _ ;
3232 }
3333
34- unsafe impl bxcan:: FilterOwner for Can < CAN3 > {
34+ unsafe impl bxcan:: FilterOwner for Can < pac :: CAN3 > {
3535 const NUM_FILTER_BANKS : u8 = 14 ;
3636 }
3737}
@@ -110,16 +110,17 @@ impl<CAN: Instance> Can<CAN> {
110110 }
111111}
112112
113- unsafe impl bxcan:: Instance for Can < CAN1 > {
114- const REGISTERS : * mut bxcan:: RegisterBlock = CAN1 :: ptr ( ) as * mut _ ;
113+ unsafe impl bxcan:: Instance for Can < pac :: CAN1 > {
114+ const REGISTERS : * mut bxcan:: RegisterBlock = pac :: CAN1 :: ptr ( ) as * mut _ ;
115115}
116116
117- unsafe impl bxcan:: Instance for Can < CAN2 > {
118- const REGISTERS : * mut bxcan:: RegisterBlock = CAN2 :: ptr ( ) as * mut _ ;
117+ #[ cfg( feature = "can2" ) ]
118+ unsafe impl bxcan:: Instance for Can < pac:: CAN2 > {
119+ const REGISTERS : * mut bxcan:: RegisterBlock = pac:: CAN2 :: ptr ( ) as * mut _ ;
119120}
120121
121- unsafe impl bxcan:: FilterOwner for Can < CAN1 > {
122+ unsafe impl bxcan:: FilterOwner for Can < pac :: CAN1 > {
122123 const NUM_FILTER_BANKS : u8 = 28 ;
123124}
124125
125- unsafe impl bxcan:: MasterInstance for Can < CAN1 > { }
126+ unsafe impl bxcan:: MasterInstance for Can < pac :: CAN1 > { }
0 commit comments