#![no_std]
pub mod clocksource;
pub mod console;
pub mod irqchip;
pub mod memrange;
pub mod smp;
pub trait BspDefine {
type Console: console::ConsoleImpl;
type Irqchip: irqchip::IrqchipImpl;
type Clock: clocksource::ClockImpl;
const DEFINE_SMP: smp::SmpDefine;
const DEFINE_MEMS: memrange::MemDefine;
const DEFINE_CONSOLE: Self::Console;
const DEFINE_IRQCHIP: Self::Irqchip;
const DEFINE_CLOCK: Self::Clock;
fn early_init(&self) {}
fn late_init(&self);
fn secondary_init(&self) {}
}