|
1 |
| -# Changelog |
2 |
| - |
3 |
| -## [Unreleased] |
4 |
| - |
5 |
| -## [v0.1.0] 2022-03-16 |
6 |
| - |
7 |
| -* [cmsis-svd](./cmsis-svd/README.md) submodule as source of SVD files instead of collection in LFS (#2) |
8 |
| -* [svd2rust] v0.21.0 used for PAC generation (#2) |
9 |
| -* watchdog disabling facility (#4) |
10 |
| - |
11 |
| -## [v0.0.2] 2020-06-03 |
12 |
| - |
13 |
| -* same70*: added foundations for ATSAME70 series support |
14 |
| -* Commitment to 0BSD license following practice from other PAC/HAL crates |
15 |
| - |
16 |
| -## [v0.0.1] 2019-07-31 |
17 |
| - |
18 |
| -* pac: Generated for ATSAMS70 family |
19 |
| -* hal: Just very simple stuff added |
20 |
| -* automation script in Python |
21 |
| - |
22 |
| -[Unreleased]: https://github.com/stm32-rs/stm32h7xx-hal/compare/v0.1.0...HEAD |
23 |
| -[v0.1.0]: https://github.com/stm32-rs/stm32h7xx-hal/compare/v0.2.0...v0.1.0 |
24 |
| -[v0.0.2]: https://github.com/stm32-rs/stm32h7xx-hal/compare/v0.0.1...v0.0.2 |
25 |
| -[v0.0.1]: https://github.com/michalfita/atsams70-rust/tree/v0.0.1 |
26 |
| -[svd2rust]: https://github.com/rust-embedded/svd2rust |
| 1 | +# Changelog |
| 2 | + |
| 3 | +## [Unreleased] |
| 4 | + |
| 5 | +### Added |
| 6 | + |
| 7 | +- GitHub CI. |
| 8 | + |
| 9 | +### Changed |
| 10 | + |
| 11 | +- [Sealed](https://rust-lang.github.io/api-guidelines/future-proofing.html#sealed-traits-protect-against-downstream-implementations-c-sealed) all HAL-internal traits to disallow potentially unsound downstream trait implementations. |
| 12 | +- Regenerated PACs with `svd2rust 0.25.1` using up-to-date (2022-05-18) SVDs. These SVDs are now vendored in this repository, instead of using a submodule. |
| 13 | + |
| 14 | +### Removed |
| 15 | + |
| 16 | +- Unused auxiliary script `hal/build.sh`. |
| 17 | +- Deprecated `.ci/` configuration files and Gitlab CI. |
| 18 | + |
| 19 | +### Fixed |
| 20 | + |
| 21 | +- HAL build when targeting `sams70n19b`. |
| 22 | + |
| 23 | +## [v0.3.0] 2022-08-26 |
| 24 | + |
| 25 | +### Added |
| 26 | +- `tc` module: abstrations of Timer Counter channels: |
| 27 | + - `tc::Generate` channels: [`Monotonic`](https://docs.rs/rtic-monotonic/1.0.0/rtic_monotonic/trait.Monotonic.html), [`ehal::timer::{Countdown,Cancel}`](https://docs.rs/embedded-hal/0.2.7/embedded_hal/timer/index.html), and [`ehal::blocking::delay::Delay{Ms,Us}`](https://docs.rs/embedded-hal/0.2.7/embedded_hal/blocking/delay/index.html) implementations. |
| 28 | + - `tc::Capture` channels: measurement of frequencies, read from `TIOAx` `tc::ChannelInputPin<_, _ , A>`s, with subsampling support. |
| 29 | +- `boards/atsamv71_xult/examples`: |
| 30 | + - `blinky_tc`: blinks a LED by use of a `tc::Monotonic`; and |
| 31 | + - `blinky_tc_irq`: blinks a LED by use of a `tc::Timer`. |
| 32 | +- `serial::Uart::UartError::PrescalerUnderflow` error. |
| 33 | +- `serial::Uart::UartError::InvalidPck` error. |
| 34 | +- `pwm` module: allows frequencies and duty-rates to be independently set for each `pwm::Channel`, with help from `ehal::PwmPin`. |
| 35 | +- `hal/rust-toolchain.toml` that pins `rustc` (and relevant components/targets) to MSRV 1.63.0. |
| 36 | +- Crate feature: `reconfigurable-system-pins`; see below. |
| 37 | +- CI job that enforces `CHANGELOG.md` additions, unless the MR is labeled `skip-changelog`. |
| 38 | + |
| 39 | +### Removed |
| 40 | +- `serial::Uart::UartError::BaudRateNotInRange` error. |
| 41 | +- `serial::Uart::reconfigure`, which did not exhaustively error check input parameters. |
| 42 | + |
| 43 | +### Fixed |
| 44 | +- `Pck::configure` now records its output frequency correctly. |
| 45 | +- `Uart::{new,reconfigure}`: now rounds the calculated prescaler to the closest value instead of rounding down. |
| 46 | +- `Uart::new`: now returns `Err(UartError::InvalidPck)` if the baud-rate generating `Pck` is not at least three times slow than the peripheral clock (`HostClock`). |
| 47 | +- Clippy warnings in `boards/*/examples/*`. |
| 48 | +- The special-on-reset pins `PB4/5/6/7/12` are now switched from their alternate modes (ERASE, TCK/SWCLK, TMS/SWDIO, TDO/TRACESWO, TDI, respectively) to a regular PIO pin upon a `Pin::into_{mode,peripheral,input,output}`, if the `reconfigurable-system-pins` feature is enabled. |
| 49 | + |
| 50 | +### Changed |
| 51 | +- `Pck::configure` now takes a `u16` prescaler instead of a `u8`, and returns `Err(PckError)` if the prescaler cannot be applied. |
| 52 | +- Renamed `serial::ExtU32` to `serial::ExtBpsU32`, in order to not clash with `fugit::ExtU32`. |
| 53 | + |
| 54 | +## [v0.2.1] 2022-08-08 |
| 55 | + |
| 56 | +### Fixed |
| 57 | +- `boards/`: Incorrect HAL crate version. |
| 58 | + |
| 59 | +## [v0.2.0] 2022-08-08 |
| 60 | + |
| 61 | +### Added |
| 62 | +- Nonexhaustive APIs for the following peripherals: |
| 63 | + - PMC; |
| 64 | + - EFC (to configure flash wait states only); |
| 65 | + - GPIO; |
| 66 | + - Serial peripherals: SPI, TWI (I²C), UART and USART (SPI/UART only); |
| 67 | + - AFEC (ADC); |
| 68 | + - RTT (for RTIC scheduling, `ehal::blocking::delay::Delay*` impl); and |
| 69 | + - USB support (via `usb-device`). |
| 70 | +- SAM V71/E70 Xplained Ultra/Pro board examples for most above peripherals. |
| 71 | +- GitLab CI configuration. |
| 72 | + |
| 73 | +## [v0.1.0] 2022-03-16 |
| 74 | + |
| 75 | +* [cmsis-svd](./cmsis-svd/README.md) submodule as source of SVD files instead of collection in LFS (#2) |
| 76 | +* [svd2rust] v0.21.0 used for PAC generation (#2) |
| 77 | +* watchdog disabling facility (#4) |
| 78 | + |
| 79 | +## [v0.0.2] 2020-06-03 |
| 80 | + |
| 81 | +* same70*: added foundations for ATSAME70 series support |
| 82 | +* Commitment to 0BSD license following practice from other PAC/HAL crates |
| 83 | + |
| 84 | +## [v0.0.1] 2019-07-31 |
| 85 | + |
| 86 | +* pac: Generated for ATSAMS70 family |
| 87 | +* hal: Just very simple stuff added |
| 88 | +* automation script in Python |
| 89 | + |
| 90 | +[Unreleased]: https://github.com/atsams-rs/atsamx7x-hal/compare/v0.3.0...HEAD |
| 91 | +[v0.3.0]: https://github.com/atsams-rs/atsamx7x-hal/compare/v0.2.1...v0.3.0 |
| 92 | +[v0.2.1]: https://github.com/atsams-rs/atsamx7x-hal/compare/v0.2.0...v0.2.1 |
| 93 | +[v0.2.0]: https://github.com/atsams-rs/atsamx7x-hal/compare/v0.1.0...v0.2.0 |
| 94 | +[v0.1.0]: https://github.com/atsams-rs/atsamx7x-hal/compare/compare/v0.2.0...v0.1.0 |
| 95 | +[v0.0.2]: https://github.com/atsams-rs/atsamx7x-hal/compare/v0.0.1...v0.0.2 |
| 96 | +[v0.0.1]: https://github.com/atsams-rs/atsamx7x-hal/compare/tree/v0.0.1 |
| 97 | +[svd2rust]: https://github.com/rust-embedded/svd2rust |
0 commit comments