Add SPIv1, use cfg_attr to pick correct impl.

Add IRQ to impl_rng!() to accomodate RNG vs HASH_RNG split.
This commit is contained in:
Bob McWhirter
2021-05-13 14:28:53 -04:00
parent 07db3ed7c1
commit 9e93a0999f
299 changed files with 14196 additions and 8867 deletions

View File

@ -178,7 +178,34 @@ impl_gpio_pin!(PI13, 8, 13, EXTI13);
impl_gpio_pin!(PI14, 8, 14, EXTI14);
impl_gpio_pin!(PI15, 8, 15, EXTI15);
pub const RNG: rng::Rng = rng::Rng(0x50060800 as _);
impl_rng!(RNG);
impl_rng!(RNG, RNG);
pub const SPI1: spi::Spi = spi::Spi(0x40013000 as _);
impl_spi!(SPI1, APB2);
impl_spi_pin!(SPI1, Sck, PA5, 5);
impl_spi_pin!(SPI1, Miso, PA6, 5);
impl_spi_pin!(SPI1, Mosi, PA7, 5);
impl_spi_pin!(SPI1, Sck, PB3, 5);
impl_spi_pin!(SPI1, Miso, PB4, 5);
impl_spi_pin!(SPI1, Mosi, PB5, 5);
pub const SPI2: spi::Spi = spi::Spi(0x40003800 as _);
impl_spi!(SPI2, APB1);
impl_spi_pin!(SPI2, Sck, PB10, 5);
impl_spi_pin!(SPI2, Sck, PB13, 5);
impl_spi_pin!(SPI2, Miso, PB14, 5);
impl_spi_pin!(SPI2, Mosi, PB15, 5);
impl_spi_pin!(SPI2, Miso, PC2, 5);
impl_spi_pin!(SPI2, Mosi, PC3, 5);
impl_spi_pin!(SPI2, Sck, PI1, 5);
impl_spi_pin!(SPI2, Miso, PI2, 5);
impl_spi_pin!(SPI2, Mosi, PI3, 5);
pub const SPI3: spi::Spi = spi::Spi(0x40003c00 as _);
impl_spi!(SPI3, APB1);
impl_spi_pin!(SPI3, Sck, PB3, 6);
impl_spi_pin!(SPI3, Miso, PB4, 6);
impl_spi_pin!(SPI3, Mosi, PB5, 6);
impl_spi_pin!(SPI3, Sck, PC10, 6);
impl_spi_pin!(SPI3, Miso, PC11, 6);
impl_spi_pin!(SPI3, Mosi, PC12, 6);
pub const SYSCFG: syscfg::Syscfg = syscfg::Syscfg(0x40013800 as _);
pub const USART1: usart::Usart = usart::Usart(0x40011000 as _);
impl_usart!(USART1);
@ -232,6 +259,7 @@ pub use regs::dma_v2 as dma;
pub use regs::exti_v1 as exti;
pub use regs::gpio_v2 as gpio;
pub use regs::rng_v1 as rng;
pub use regs::spi_v1 as spi;
pub use regs::syscfg_f4 as syscfg;
pub use regs::usart_v1 as usart;
mod regs;
@ -249,7 +277,7 @@ peripherals!(
PF10, PF11, PF12, PF13, PF14, PF15, PG0, PG1, PG2, PG3, PG4, PG5, PG6, PG7, PG8, PG9, PG10,
PG11, PG12, PG13, PG14, PG15, PH0, PH1, PH2, PH3, PH4, PH5, PH6, PH7, PH8, PH9, PH10, PH11,
PH12, PH13, PH14, PH15, PI0, PI1, PI2, PI3, PI4, PI5, PI6, PI7, PI8, PI9, PI10, PI11, PI12,
PI13, PI14, PI15, RNG, SYSCFG, USART1, USART2, USART3, USART6
PI13, PI14, PI15, RNG, SPI1, SPI2, SPI3, SYSCFG, USART1, USART2, USART3, USART6
);
pub mod interrupt {