updated AMiRo-LLD and applied all required changes to AMiRo-OS and all modules.
Enhanced and fixed several module specific files.
Enhanced the #include tree. 'amiroos.h' is now the central header, which includes all dependencies.
Changed all header guards so they will not use unserscores as pre- and postfix.
Makefiles slightly enhanced
Optimized the #include tree
Enhanced the AMiRo-OS configuration: When AMIROOS_CFG_TESTS_ENABLE is set, the shell is enabled implicitely by AMiRo-OS.Before, this logic was handled in the aosconf.h file.
Introduced a macro AOS_IOEVENT_FLAG() in aos_types.h.This macro acts similar to EVENT_MASK() and should help to simplify development.The new macro was applied to existing code wherever possible.
All board.mk files have been integrated into the module Makefiles.
Added C++ system calls to the build toolchain in order to make AMiRo-OS fully compatible with C++ code.
Added new periphery hardware (PCAL6524 GPIO extender and AT42QT1050 touch sensor) to the PowerManagement, including unit tests.
PowerManagement: Introduced a configuration (board.h) to select the attached sensor ring module.
PowerManagement: fixed incorrect configuration for event propagation
Enhanced the main thread IO event configuration.Therefore a new macro AMIROOS_CFG_MAIN_LOOP_IOEVENT_MASK has been introduced.
PowerManagement: improved macros for selecting RAM regions
updated all file headers to 2019
Removed modules/flash.mk since flashing procedures highly depend on hardware.
all halconf.h files: removed redundant HAL_USE_QEU settings
Introduced a switch to completely disable SSSP (thanks to S. Welzel)
Added ChibiOS license handling to the makefiles.
Minor fixes and enhancements.
removed ChibiOS dependencies from build-tree: C++ wrappers and shell
Removed the extension of the optional BUILDDIR variable in the module makefiles.
Minor optimizations regarding memory utilization.
Some minor fixes and enhancements.Most importantly, the expected jitter (CH_CFG_ST_TIMEDELTA) was increased form 20 to 50us.
All contents of the os/ folder has been moved one directory up.
Reworked linker scripts.the os/hal/ directory was removed completely.Each module now has its own linker script, which again includes the fundamental liner scripts within ChibiOS.All makefiles have been adapted accordingly.
Review of the QEI driver patch (minor changes).
optimized fan out calculation of masks for GPIO initialization.
Added some basics to mask pads during GPIO initialization (wip)
Doxygen file documentation and modules.
Major rework of the recent changes.- optimized interrupt system (removed aos_interrupt.h/c)- updated AMiRo-LLD submodule- updated all config files to match the latest templates by ChibiOS- fixed several issues regarding the new timer system (intervals)
Updated Chibi-OS to version 18.2 and adapted AMiRo-OS accordingly: - Switched to new time conversion macros - Use PAL for interrupts instead of the EXT Driver - Use new kernel tests
Introduced an mechanism to measure clock skew during operation phase, if AMIROOS_CFG_PROFILE is enabled (non-master modules only).The low-pass filtered skew is printed via the module:info shell command.
RTC date/time is now synchronized on startup from the SSSP master module.Further changes: - several enhancements to the newly introduced module stack initialization procedure - several minor enhancements to core functionality
Introduced SSSP stage 3 of the startup phase (module stack initialization).
Several enhancements to memory structure, naming and code quality.AMiRo-OS is now prepared so the SSSP startup stage 3 (module stack initialization can be implemented).
Introduced the capability to set and get a date&time value via the shell.
prepended several macros with the 'AOS_' prefix
modified all relevant makefiles to adopt the new file structure
moved the /os/modles directory to /modules