#![no_std]
#![warn(missing_docs)]
pub mod app;
pub mod core;
pub mod protocol;
pub mod ringbuf;
pub mod traits;
pub use crate::core::Core;
#[doc(hidden)]
pub use tinyboot_protocol::pkg_version;
#[inline(always)]
pub fn tinyboot_version() -> u16 {
unsafe extern "C" {
static __tb_version: u16;
}
unsafe { ::core::ptr::read_volatile(&raw const __tb_version) }
}
#[macro_export]
macro_rules! boot_version {
() => {
#[unsafe(link_section = ".tb_version")]
#[used]
static _BOOT_VERSION: u16 = $crate::pkg_version!();
};
}
#[macro_export]
macro_rules! app_version {
() => {
#[unsafe(link_section = ".tb_version")]
#[used]
static _APP_VERSION: u16 = $crate::pkg_version!();
};
}