Kernel minimization (#334)
* adds patch to remove unused kernel components * new boards, rebase patches to match * rename boards for deployment
This commit is contained in:
@@ -10,7 +10,6 @@
|
||||
#![feature(const_in_array_repeat_expressions)]
|
||||
#![deny(missing_docs)]
|
||||
|
||||
use capsules::virtual_alarm::VirtualMuxAlarm;
|
||||
use kernel::common::dynamic_deferred_call::{DynamicDeferredCall, DynamicDeferredCallClientState};
|
||||
use kernel::component::Component;
|
||||
#[allow(unused_imports)]
|
||||
@@ -33,10 +32,6 @@ const UART_TXD: Pin = Pin::P0_20;
|
||||
const UART_CTS: Option<Pin> = Some(Pin::P0_03);
|
||||
const UART_RXD: Pin = Pin::P0_19;
|
||||
|
||||
// Constants related to the configuration of the 15.4 network stack
|
||||
const SRC_MAC: u16 = 0xf00f;
|
||||
const PAN_ID: u16 = 0xABCD;
|
||||
|
||||
/// UART Writer
|
||||
pub mod io;
|
||||
|
||||
@@ -76,12 +71,6 @@ pub static mut STACK_MEMORY: [u8; 0x1000] = [0; 0x1000];
|
||||
|
||||
/// Supported drivers by the platform
|
||||
pub struct Platform {
|
||||
ble_radio: &'static capsules::ble_advertising_driver::BLE<
|
||||
'static,
|
||||
nrf52840::ble_radio::Radio<'static>,
|
||||
VirtualMuxAlarm<'static, nrf52840::rtc::Rtc<'static>>,
|
||||
>,
|
||||
ieee802154_radio: &'static capsules::ieee802154::RadioDriver<'static>,
|
||||
button: &'static capsules::button::Button<'static, nrf52840::gpio::GPIOPin<'static>>,
|
||||
pconsole: &'static capsules::process_console::ProcessConsole<
|
||||
'static,
|
||||
@@ -91,7 +80,6 @@ pub struct Platform {
|
||||
gpio: &'static capsules::gpio::GPIO<'static, nrf52840::gpio::GPIOPin<'static>>,
|
||||
led: &'static capsules::led::LED<'static, nrf52840::gpio::GPIOPin<'static>>,
|
||||
rng: &'static capsules::rng::RngDriver<'static>,
|
||||
temp: &'static capsules::temperature::TemperatureSensor<'static>,
|
||||
ipc: kernel::ipc::IPC,
|
||||
analog_comparator: &'static capsules::analog_comparator::AnalogComparator<
|
||||
'static,
|
||||
@@ -121,9 +109,6 @@ impl kernel::Platform for Platform {
|
||||
capsules::led::DRIVER_NUM => f(Some(self.led)),
|
||||
capsules::button::DRIVER_NUM => f(Some(self.button)),
|
||||
capsules::rng::DRIVER_NUM => f(Some(self.rng)),
|
||||
capsules::ble_advertising_driver::DRIVER_NUM => f(Some(self.ble_radio)),
|
||||
capsules::ieee802154::DRIVER_NUM => f(Some(self.ieee802154_radio)),
|
||||
capsules::temperature::DRIVER_NUM => f(Some(self.temp)),
|
||||
capsules::analog_comparator::DRIVER_NUM => f(Some(self.analog_comparator)),
|
||||
nrf52840::nvmc::DRIVER_NUM => f(Some(self.nvmc)),
|
||||
capsules::usb::usb_ctap::DRIVER_NUM => f(Some(self.usb)),
|
||||
@@ -263,28 +248,6 @@ pub unsafe fn reset_handler() {
|
||||
// Create the debugger object that handles calls to `debug!()`.
|
||||
components::debug_writer::DebugWriterComponent::new(uart_mux).finalize(());
|
||||
|
||||
let ble_radio =
|
||||
nrf52_components::BLEComponent::new(board_kernel, &nrf52840::ble_radio::RADIO, mux_alarm)
|
||||
.finalize(());
|
||||
|
||||
let (ieee802154_radio, _mux_mac) = components::ieee802154::Ieee802154Component::new(
|
||||
board_kernel,
|
||||
&nrf52840::ieee802154_radio::RADIO,
|
||||
&nrf52840::aes::AESECB,
|
||||
PAN_ID,
|
||||
SRC_MAC,
|
||||
)
|
||||
.finalize(components::ieee802154_component_helper!(
|
||||
nrf52840::ieee802154_radio::Radio,
|
||||
nrf52840::aes::AesECB<'static>
|
||||
));
|
||||
|
||||
let temp = components::temperature::TemperatureComponent::new(
|
||||
board_kernel,
|
||||
&nrf52840::temperature::TEMP,
|
||||
)
|
||||
.finalize(());
|
||||
|
||||
let rng = components::rng::RngComponent::new(board_kernel, &nrf52840::trng::TRNG).finalize(());
|
||||
|
||||
// Initialize AC using AIN5 (P0.29) as VIN+ and VIN- as AIN0 (P0.02)
|
||||
@@ -355,14 +318,11 @@ pub unsafe fn reset_handler() {
|
||||
|
||||
let platform = Platform {
|
||||
button,
|
||||
ble_radio,
|
||||
ieee802154_radio,
|
||||
pconsole,
|
||||
console,
|
||||
led,
|
||||
gpio,
|
||||
rng,
|
||||
temp,
|
||||
alarm,
|
||||
analog_comparator,
|
||||
nvmc,
|
||||
|
||||
Reference in New Issue
Block a user