Talking Tock 40
Release 1.1, Rust upgrade, svd2regs
by AmitThis is the 40 post in a series tracking the development of Tock, a safe multi-tasking operating system for microcontrollers.
1.1 Kernel Released
The April rolling release (version 1.1) has been tagged and pushed. The most significant improvements in this release are a new, more readable and less error prone regiter interface and a resource ownership based clock manager for the SAM4L. With both of these used now nearly ubiquitously in the kernel, SAM4L based boards automatically go to deep sleep when there are no active peripherals.
Ports to the nRF52 development kit and Hail and imix, based on the Atmel SAM4L, are considered stable and are backwards compatible with 1.0. An initial port to the CC26xx series of platforms is included but not yet stable. The stabilized system call ABI does not include any new peripherals since 1.0.
Pull Requests
Bolded pull requests were marked “P-Significant”
Merged
- (#895) Critical fix to Hail clock wakeup and minor overhaul of alarm virtualization stack
- (#851) Add receive callback to console system call driver
- (#859) Word-align section binaries in userspace
- (#873) Simplify BLE capsule
- (#877) Add svd2regs tool to generate registers from SVD files
- (#881) Update to Rust nightly 2018-04-02
- (#882) Fine tune kernel linker script to error if relocation is too large
- (#884) Build the SenSys course board in Travis
- (#885) Make
sleep
a method of the chip trait so it can be chip-specific - (#886) Charge the process for its Process struct in the kernel
- (#894) Nrf52 UART Receive
- (#898) Nrf52/uart support longer messages than 255 characters
Proposed
- (#903) 6LoWPAN and initial IP stack
- (#910) Improve systick precision
- (#902) Allow recursive access to peripherals