commit
52abfba8eb
18 changed files with 47 additions and 28 deletions
1
ci.sh
1
ci.sh
|
@ -60,6 +60,7 @@ cargo batch \
|
|||
--- build --release --manifest-path embassy-stm32/Cargo.toml --target thumbv7em-none-eabi --features nightly,stm32wle5ub,defmt,exti,time-driver-any,embassy/time-tick-32768hz,unstable-traits \
|
||||
--- build --release --manifest-path embassy-stm32/Cargo.toml --target thumbv7m-none-eabi --features nightly,stm32f107vc,defmt,exti,time-driver-any,embassy/time-tick-32768hz,unstable-traits \
|
||||
--- build --release --manifest-path embassy-stm32/Cargo.toml --target thumbv7m-none-eabi --features nightly,stm32f103re,defmt,exti,time-driver-any,embassy/time-tick-32768hz,unstable-traits \
|
||||
--- build --release --manifest-path embassy-stm32/Cargo.toml --target thumbv7m-none-eabi --features nightly,stm32f100c4,defmt,exti,time-driver-any,embassy/time-tick-32768hz,unstable-traits \
|
||||
--- build --release --manifest-path embassy-boot/nrf/Cargo.toml --target thumbv7em-none-eabi --features embassy-nrf/nrf52840 \
|
||||
--- build --release --manifest-path embassy-boot/stm32/Cargo.toml --target thumbv7em-none-eabi --features embassy-stm32/stm32wl55jc-cm4,embassy/time-tick-32768hz \
|
||||
--- build --release --manifest-path docs/modules/ROOT/examples/basic/Cargo.toml --target thumbv7em-none-eabi \
|
||||
|
|
|
@ -5,8 +5,8 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-cortex-m-v$VERSION/embassy-cortex-m/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-cortex-m/src/"
|
||||
features = []
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-cortex-m/src/"
|
||||
features = ["prio-bits-3"]
|
||||
flavors = [
|
||||
{ name = "thumbv6m-none-eabi", target = "thumbv6m-none-eabi", features = [] },
|
||||
{ name = "thumbv7m-none-eabi", target = "thumbv7m-none-eabi", features = [] },
|
||||
|
|
|
@ -205,6 +205,8 @@ const PRIO_MASK: u8 = 0xfe;
|
|||
const PRIO_MASK: u8 = 0xff;
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-0")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -214,6 +216,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-1")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -224,6 +228,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-2")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -236,6 +242,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-3")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -252,6 +260,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-4")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -276,6 +286,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-5")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -316,6 +328,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-6")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -388,6 +402,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-7")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
@ -524,6 +540,8 @@ pub enum Priority {
|
|||
}
|
||||
|
||||
/// The interrupt priority level.
|
||||
///
|
||||
/// NOTE: The contents of this enum differ according to the set `prio-bits-*` Cargo feature.
|
||||
#[cfg(feature = "prio-bits-8")]
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
|
|
|
@ -5,11 +5,11 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-lora-v$VERSION/embassy-lora/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-lora/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-lora/src/"
|
||||
features = ["time", "defmt"]
|
||||
flavors = [
|
||||
{ name = "sx127x", target = "thumbv7em-none-eabihf", features = ["sx127x", "embassy-stm32/stm32wl55jc-cm4", "embassy-stm32/time-driver-any"] },
|
||||
{ name = "stm32wl", target = "thumbv7em-none-eabihf", features = ["stm32wl", "embassy-stm32/stm32wl55jc-cm4", "embassy-stm32/time-driver-any"] },
|
||||
{ name = "sx127x", target = "thumbv7em-none-eabihf", features = ["sx127x", "embassy-stm32/stm32wl55jc-cm4", "embassy-stm32/time-driver-any", "embassy/time-tick-32768hz"] },
|
||||
{ name = "stm32wl", target = "thumbv7em-none-eabihf", features = ["stm32wl", "embassy-stm32/stm32wl55jc-cm4", "embassy-stm32/time-driver-any", "embassy/time-tick-32768hz"] },
|
||||
]
|
||||
|
||||
[lib]
|
||||
|
|
|
@ -6,8 +6,8 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-net-v$VERSION/embassy-net/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-net/src/"
|
||||
features = [ "tcp", "dhcpv4", "medium-ethernet", "medium-ip", "embassy/time", "embassy/time-tick-1mhz"]
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-net/src/"
|
||||
features = [ "pool-4", "defmt", "tcp", "dns", "dhcpv4", "proto-ipv6", "medium-ethernet", "medium-ip", "embassy/time", "embassy/time-tick-1mhz"]
|
||||
flavors = [
|
||||
{ name = "default", target = "thumbv7em-none-eabihf" },
|
||||
]
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-nrf-v$VERSION/embassy-nrf/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-nrf/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-nrf/src/"
|
||||
|
||||
features = ["nightly", "defmt", "unstable-pac", "unstable-traits", "gpiote", "time-driver-rtc1"]
|
||||
flavors = [
|
||||
|
@ -79,7 +79,6 @@ defmt = { version = "0.3", optional = true }
|
|||
log = { version = "0.4.14", optional = true }
|
||||
cortex-m-rt = ">=0.6.15,<0.8"
|
||||
cortex-m = "0.7.3"
|
||||
embedded-dma = "0.1.2"
|
||||
futures = { version = "0.3.17", default-features = false }
|
||||
critical-section = "0.2.5"
|
||||
rand_core = "0.6.3"
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-rp-v$VERSION/embassy-rp/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-rp/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-rp/src/"
|
||||
features = ["nightly", "defmt", "unstable-pac", "unstable-traits"]
|
||||
flavors = [
|
||||
{ name = "rp2040", target = "thumbv6m-none-eabi" },
|
||||
|
|
|
@ -5,12 +5,12 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-stm32-v$VERSION/embassy-stm32/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-stm32/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-stm32/src/"
|
||||
|
||||
# TODO: sdmmc
|
||||
# TODO: net
|
||||
# TODO: subghz
|
||||
features = ["nightly", "defmt", "unstable-pac", "unstable-traits", "exti", "time-driver-any"]
|
||||
features = ["nightly", "defmt", "unstable-pac", "unstable-traits", "exti", "time-driver-any", "embassy/time-tick-32768hz"]
|
||||
flavors = [
|
||||
{ regex_feature = "stm32f0.*", target = "thumbv6m-none-eabi" },
|
||||
{ regex_feature = "stm32f1.*", target = "thumbv7m-none-eabi" },
|
||||
|
|
|
@ -2,7 +2,7 @@ use core::convert::TryFrom;
|
|||
|
||||
use super::{set_freqs, Clocks};
|
||||
use crate::pac::flash::vals::Latency;
|
||||
use crate::pac::rcc::vals::{Adcpre, Hpre, Pllmul, Pllsrc, Ppre1, Sw, Usbpre};
|
||||
use crate::pac::rcc::vals::*;
|
||||
use crate::pac::{FLASH, RCC};
|
||||
use crate::time::Hertz;
|
||||
|
||||
|
@ -110,6 +110,7 @@ pub(crate) unsafe fn init(config: Config) {
|
|||
// the USB clock is only valid if an external crystal is used, the PLL is enabled, and the
|
||||
// PLL output frequency is a supported one.
|
||||
// usbpre == false: divide clock by 1.5, otherwise no division
|
||||
#[cfg(not(rcc_f100))]
|
||||
let (usbpre, _usbclk_valid) = match (config.hse, pllmul_bits, real_sysclk) {
|
||||
(Some(_), Some(_), 72_000_000) => (false, true),
|
||||
(Some(_), Some(_), 48_000_000) => (true, true),
|
||||
|
@ -154,6 +155,7 @@ pub(crate) unsafe fn init(config: Config) {
|
|||
w.set_ppre2(Ppre1(ppre2_bits));
|
||||
w.set_ppre1(Ppre1(ppre1_bits));
|
||||
w.set_hpre(Hpre(hpre_bits));
|
||||
#[cfg(not(rcc_f100))]
|
||||
w.set_usbpre(Usbpre(usbpre as u8));
|
||||
w.set_sw(Sw(if pllmul_bits.is_some() {
|
||||
// PLL
|
||||
|
|
|
@ -5,7 +5,7 @@ use core::mem::MaybeUninit;
|
|||
use crate::time::Hertz;
|
||||
|
||||
#[cfg_attr(rcc_f0, path = "f0.rs")]
|
||||
#[cfg_attr(any(rcc_f1, rcc_f1cl), path = "f1.rs")]
|
||||
#[cfg_attr(any(rcc_f1, rcc_f100, rcc_f1cl), path = "f1.rs")]
|
||||
#[cfg_attr(rcc_f2, path = "f2.rs")]
|
||||
#[cfg_attr(rcc_f3, path = "f3.rs")]
|
||||
#[cfg_attr(any(rcc_f4, rcc_f410), path = "f4.rs")]
|
||||
|
|
|
@ -141,7 +141,7 @@ impl<'d, T: Instance> Driver<'d, T> {
|
|||
unsafe {
|
||||
crate::peripherals::PWR::enable();
|
||||
|
||||
pac::PWR.cr2().modify(|w| w.set_usv(pac::pwr::vals::Usv::VALID));
|
||||
pac::PWR.cr2().modify(|w| w.set_usv(true));
|
||||
}
|
||||
|
||||
unsafe {
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-hid-v$VERSION/embassy-usb-hid/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-usb-hid/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb-hid/src/"
|
||||
features = ["defmt", "embassy/time-tick-1mhz"]
|
||||
flavors = [
|
||||
{ name = "default", target = "thumbv7em-none-eabihf" },
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-ncm-v$VERSION/embassy-usb-ncm/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-usb-ncm/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb-ncm/src/"
|
||||
features = ["defmt"]
|
||||
flavors = [
|
||||
{ name = "default", target = "thumbv7em-none-eabihf" },
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-serial-v$VERSION/embassy-usb-serial/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-usb-serial/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb-serial/src/"
|
||||
features = ["defmt"]
|
||||
flavors = [
|
||||
{ name = "default", target = "thumbv7em-none-eabihf" },
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-usb-v$VERSION/embassy-usb/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy-usb/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-usb/src/"
|
||||
features = ["defmt"]
|
||||
flavors = [
|
||||
{ name = "default", target = "thumbv7em-none-eabihf" },
|
||||
|
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
|
||||
[package.metadata.embassy_docs]
|
||||
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-v$VERSION/embassy/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/master/embassy/src/"
|
||||
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy/src/"
|
||||
features = ["nightly", "defmt", "unstable-traits", "time", "time-tick-1mhz"]
|
||||
flavors = [
|
||||
{ name = "std", target = "x86_64-unknown-linux-gnu", features = ["std"] },
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit fa294eae79c0f33f4cde1e73b4e69db59f7429e3
|
||||
Subproject commit 56d5b8b2aee7026b4f9bcffc427bb8f9d48afeb5
|
|
@ -117,13 +117,12 @@ impl Gen {
|
|||
write!(&mut extra, "pub const CORE_INDEX: usize = {};\n", core_index).unwrap();
|
||||
|
||||
let flash = chip.memory.iter().find(|r| r.name == "BANK_1").unwrap();
|
||||
write!(&mut extra, "pub const FLASH_BASE: usize = {};\n", flash.address,).unwrap();
|
||||
write!(&mut extra, "pub const FLASH_SIZE: usize = {};\n", flash.size,).unwrap();
|
||||
if let Some(settings) = &flash.settings {
|
||||
write!(&mut extra, "pub const ERASE_SIZE: usize = {};\n", settings.erase_size,).unwrap();
|
||||
write!(&mut extra, "pub const WRITE_SIZE: usize = {};\n", settings.write_size,).unwrap();
|
||||
write!(&mut extra, "pub const ERASE_VALUE: u8 = {};\n", settings.erase_value,).unwrap();
|
||||
}
|
||||
let settings = flash.settings.as_ref().unwrap();
|
||||
write!(&mut extra, "pub const FLASH_BASE: usize = {};\n", flash.address).unwrap();
|
||||
write!(&mut extra, "pub const FLASH_SIZE: usize = {};\n", flash.size).unwrap();
|
||||
write!(&mut extra, "pub const ERASE_SIZE: usize = {};\n", settings.erase_size).unwrap();
|
||||
write!(&mut extra, "pub const WRITE_SIZE: usize = {};\n", settings.write_size).unwrap();
|
||||
write!(&mut extra, "pub const ERASE_VALUE: u8 = {};\n", settings.erase_value).unwrap();
|
||||
|
||||
// Cleanups!
|
||||
transform::sort::Sort {}.run(&mut ir).unwrap();
|
||||
|
|
Loading…
Reference in a new issue