Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* src/dma.rs: disable `cselr` for stm32l4+ The stm32l4+ devices do not have this register, but use a separate peripheral (DMAMUX) for routing between peripherals and DMA controllers. * src/rcc/enable.rs: fix some issues for stm32l4+ * src/i2c.rs: define stm32l4+ pins * src/spi.rs: add `unsafe` where required by stm32l4r9 PAC. To make this implementation also usable by stm32l4+ devices, some additional use of `unsafe` is necessary because of PAC differences. * src/timer.rs: disable creation of TIM4 for stm32l4+ because of PAC error. In the current release of the stm32l4 PAC, the `cnt` register of TIM3 and tim4 have an incorrect width. This was fixed in stm32-rs#669, once this is included in the next release, we will be able to start using TIM3 and TIM4. * Create module dmamux.rs as common interface for DMA request mapping. The new stm32l4+ devices use a separate peripheral (DMAMUX) for routing a DMA request line between peripherals and DMA controllers, whereas the "old" stm32l4 devices use the `CSELR` register for request mapping. This module tries to abstract this difference, and provides a common interface for all L4 devices. This commit also enable the DMAMUX clock when required. * Use new dmamux interface in adc.rs, serial.rs and spi.rs * src/lib.rs: enable most modules for stm32l4+ devices as well
- Loading branch information