Releases: outpost-os/sentry-kernel
Releases · outpost-os/sentry-kernel
v0.4.0
What's Changed
Tests and autotesting framework
- uapi: add support for complete systypes and cargo ecosystem by @pthierry-ledger in #101
Other Changes
- UAPI: move extern C to dediacted ffi_c module by @pthierry-ledger in #99
- rust: add linker to rustargs by @fvalette-ledger in #100
- cleaner kernel-user exchange area manipulation by @pthierry-ledger in #102
- uapi,ffi_c: fix copy_from/to API to more rust-homogeneous one by @pthierry-ledger in #103
- uapi: bump to homogeneous version w. kernel release by @pthierry-ledger in #104
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
Bugfixes
- uapi: fixing svc exchange mutable address access by @pthierry-ledger in #88
- autotest: fixing improper IRQn value assertion by @pthierry-ledger in #92
- stm32f4: fixing resource alignment in dts for pmsav7 by @pthierry-ledger in #93
- mpu: fixing invalid RNR value calculation by @pthierry-ledger in #94
Tests and autotesting framework
- autotest: testing userspace interrupts by @pthierry-ledger in #77
- robot: adding IRQ test suite by @pthierry-ledger in #86
Other Changes
- openssf: adding badge by @pthierry-ledger in #75
- Bump rust to stable by @fvalette-ledger in #83
- framac: fixing incorrect EVA explanation in doc by @pthierry-ledger in #76
- subprojects: remove unused Rust subprojects bitflags and paste by @fvalette-ledger in #84
- security: adding high level security flags by @pthierry-ledger in #87
- kconfig: Using Kconfig as global hardening selector by @pthierry-ledger in #89
- build(deps): bump fsfe/reuse-action from 4 to 5 by @dependabot in #91
- doc: full description of interrupts and DMA subsystems by @pthierry-ledger in #90
- uapi: remove println macro from uapi by @fvalette-ledger in #96
- uapi meson recipe cleanup by @fvalette-ledger in #97
- Install crate to local registry by @fvalette-ledger in #98
Full Changelog: v0.2.2...v0.3.0
v0.2.2
What's Changed
Bugfixes
- framac: fixes workflow using github-ready image by @pthierry-ledger in #4
- eintr: support for blocking syscall INTR (interrupted) mode by @pthierry-ledger in #13
- doc: fixing sample setup line to be fully functional by @pthierry-ledger in #11
- ci: fixing pip upgrade bug on Deb-based distros by @pthierry-ledger in #19
- dts: removing autotest-relative shm from non-autotest build by @pthierry-ledger in #22
- robot: adding configurable firmware and probe variables by @pthierry-ledger in #29
- asm,cortex-m: Add warning at configure time if soc bus definition is missing by @fvalette-ledger in #59
- support/meson/version: fix case where there is no tags by @fvalette-ledger in #63
- ci: fixing jf upload path by @pthierry-ledger in #57
- robot: fixing typo in robot suite by @pthierry-ledger in #70
- fix: fixing EINTR usage for early termination of waitforevent() by @pthierry-ledger in #71
Tests and autotesting framework
- dma: support for TDD model basics by @pthierry-ledger in #26
- dma: Add support for DMA API: IRQ+assign/startup part by @pthierry-ledger in #44
- dma: building exchange api by @pthierry-ledger in #58
- dma: support for sys_dma_get_stream_info syscall by @pthierry-ledger in #67
- DMA: support for complete DMA sequence by @pthierry-ledger in #69
CI/CD evolutions and fixes
- Add missing robot tests, enhanced test suites by @pthierry-ledger in #25
- reuse: add missing SPDX headers by @pthierry-ledger in #33
- ci: adding reuse check for PR by @pthierry-ledger in #34
- ci: deploy sdist tarball at push-main event by @pthierry-ledger in #56
- artifact: in autotest mode, add firmware.hex to install target by @pthierry-ledger in #55
Other Changes
- Enhanced README by @pthierry-ledger in #9
- ci: adding macos build by @pthierry-ledger in #7
- sysgate: ipc: deadlock check to avoid any inter-task deadlocks by @pthierry-ledger in #14
- uapi: adding platform header as CPP helper for userspace tasks by @pthierry-ledger in #15
- meson: install preprocessed dts file to SDK by @fvalette-ledger in #16
- tools: add robotframework suite, as installable data by @pthierry-ledger in #18
- Hotfix/debug console not working on nucleo by @fvalette-ledger in #20
- robot: add flash before test in testsuite by @pthierry-ledger in #21
- dma: adding interrupts support for DMA subystem by @pthierry-ledger in #12
- meson.build: remove dunamai dependency and use meson 1.4 dynamic vers… by @fvalette-ledger in #27
- sysgate: support for sys_get_dmahandle() by @pthierry-ledger in #28
- Dts documentation by @fvalette-ledger in #32
- doc: rdt config, manually set version by now by @pthierry-ledger in #35
- doc: adding usual badges by @pthierry-ledger in #36
- Add reuse badge by @fvalette-ledger in #37
- doc: enhanced 'adding new soc' part by @pthierry-ledger in #38
- SHM: adding sys_shm_get_infos() syscall by @pthierry-ledger in #41
- mroper: fix Wlimit warning when no shm or device declared by @pthierry-ledger in #62
- tools: fix parseelf and add dump to stdout support by @pthierry-ledger in #46
- uapi: documentation for the uapi crate by @pthierry-ledger in #65
- security: adding security policy by @pthierry-ledger in #73
- doc: update README, adding contribution and conduct standard files by @pthierry-ledger in #74
New Contributors
- @fvalette-ledger made their first contribution in #16
Full Changelog: v0.2.1...v0.2.2
v0.2.1
What's Changed
Other Changes
- gh: finishing publication fixes by @pthierry-ledger in #3
- build(deps): update dunamai requirement from ~=1.16.1 to ~=1.21.2 by @dependabot in #1
New Contributors
- @pthierry-ledger made their first contribution in #3
- @dependabot made their first contribution in #1
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
Breaking Changes
- syscall: adding pm_setclock syscall by @philippe-thierry in pull/272
- syscall: support periodic alarms by @philippe-thierry in pull/277
- fix: adding source to event header, instead of data by @philippe-thierry in pull/284
- syscall: support for synchronous, non-blocking waitforevent by @philippe-thierry in pull/285
Bugfixes
- fix: fixing sysreturn update when handling ipc push by @philippe-thierry in pull/263
- cortex-m,mpu: fix free slot hunting by @florent-valette in pull/275
- bug: fixing delay management when awakeing delayed jobs by @philippe-thierry in pull/276
- fix: avoid double-add of a task in the scheduler by @philippe-thierry in pull/278
- task core: do not change task state on IPC push by @florent-valette in pull/280
- Fixing autotest found bugs by @philippe-thierry in pull/290
- Proof: add rte autodetect by @philippe-thierry in pull/291
- fix: compare identifiers instead of handle (dts-based) by @philippe-thierry in pull/299
- fix: fix signal source assignment by @philippe-thierry in pull/303
- fix: allows tool building without kernel building by @philippe-thierry in pull/309
Tests and autotesting framework
- proof: clean svc noRTE traversal by @philippe-thierry in pull/292
- Issue 269: reenable ownership checks by @florent-valette in pull/296
Formal proof and correctness
- Proof: reenable Frama-C tests by @philippe-thierry in pull/247
- proof: add clean entrypoint input garbage by @philippe-thierry in pull/297
- libs: separate kernel subcomponents in libraries by @philippe-thierry in pull/298
Build system
- fix: adding task generic kconfig export to SDK by @philippe-thierry in pull/250
- Get rid of cbindgen by @victor-servant in pull/248
- uapi,kconfig: add TASK_LABEL config entry by @florent-valette in pull/256
- Feature/add soc to kconfig choice by @florent-valette in pull/260
- gate: moving to full C kernel core by @philippe-thierry in pull/261
- Add task magic value in task kconfig by @florent-valette in pull/293
- Issue/308 rename devicetree parser by @florent-valette in pull/311
- 321 save defconfig in example configs dir by @florent-valette in pull/322
Other Changes
- Demo without perms and owners by @philippe-thierry in pull/251
- install uapi_h as before by @victor-servant in pull/252
- STM32U5 boost mode by @florent-valette in pull/249
- fix: disable ownership check in debug mode for gpio by @philippe-thierry in pull/255
- debug: add support for semihosting debug output by @philippe-thierry in pull/257
- fix: remove inexistant symbol usage in do_panic in jtag mode by @philippe-thierry in pull/258
- fix: set APB1 freq to 40Mhz while dts-based not yet added by @philippe-thierry in pull/262
- fix: export exchange header to userspace by @philippe-thierry in pull/264
- Deploy uapi into a local rust repository by @philippe-thierry in pull/265
- uapi: adding STATUS_TIMEOUT for timeouting async syscalls by @philippe-thierry in pull/266
- stm32u599,rcc: Change PLL3 config to fit ganyB0 demo by @florent-valette in pull/267
- STM32U599 fix pll3 configuration by @florent-valette in pull/271
- Select clocksource mux backend by @florent-valette in pull/273
- manager,device: temporarily disabling ownership check in debug by @florent-valette in pull/274
- syscall: allow access with no capa in debug mode by @philippe-thierry in pull/282
- doc: adding new pm_clock_set syscall by @philippe-thierry in pull/281
- support for installing the kernel concepts and uapi rustdoc by @philippe-thierry in pull/268
- syscall: enhancement for wfe, through macros by @philippe-thierry in pull/286
- Use new devicetree jinja filters by @florent-valette in pull/287
- Add metadata tools by @florent-valette in pull/289
- Feature/issue 294 rename task magic value by @florent-valette in pull/295
- doc: adding manpages generation for UAPI (man2) by @philippe-thierry in pull/302
- log: adding some debug and error logs to syscalls by @philippe-thierry in pull/300
- CODEOWNERS: remove people that left Ledger by @florent-valette in pull/305
- fix: activate device lookup only if needed by @philippe-thierry in pull/306
- Allow debug build with no output by @philippe-thierry in pull/314
- clearing svc exchange area after copy to user by @philippe-thierry in pull/316
- uapi: add svc exchange usable length size getter by @philippe-thierry in pull/317
- Feature/stm32 lpuart driver by @florent-valette in pull/319
- adding interrupt-related syscalls by @philippe-thierry in pull/326
- handler: using LUT-based gate access, optimizing syscalls perf by @philippe-thierry in pull/327
- doc: fix readme file with defconfig usage by @philippe-thierry in pull/328
- SHM: adding syscalls implementation by @philippe-thierry in pull/330
- autotest: SHM validation by @philippe-thierry in pull/331
- shm: initial SHM support for memory manager, to complete by @philippe-thierry in pull/329
- doc: adding SHM-related documentation by @philippe-thierry in pull/332
Full Changelog: compare/v0.1.0...v0.2.0
v0.1.0
What's Changed
Breaking Changes
- SSP and userspace argument support in entrypoint by @philippe-thierry in pull/165
- task: moving handler to u32 opaque downto task manager by @philippe-thierry in pull/215
- Using separated handle and label for tasks by @philippe-thierry in pull/216
- device: make devh_t an u32 opaque downto device manager by @philippe-thierry in pull/219
- io: removing useless ioh_t, io_info_t is used instead by @philippe-thierry in pull/220
- events: removing ipch_t, sigh_t and irqh_t, as they are not ressources by @philippe-thierry in pull/222
- removing shm and dma handlers as structured types by @philippe-thierry in pull/223
- syscalls: gpio and associated needed backend by @philippe-thierry in pull/239
Bugfixes
- fixing stack generation to correct place by @philippe-thierry in pull/1
- fixing min requirements and missing from sentry reqs by @philippe-thierry in pull/33
- framac: updating proof README by @philippe-thierry in pull/44
- sonar: fixing some technical dept by @philippe-thierry in pull/46
- removing redundancy stdatomic onclude, should be protected by @philippe-thierry in pull/53
- Feature/stm32f401 support by @florent-valette in pull/66
- Bugfix: fixing fedora, remove opensuse and update compilers list by @philippe-thierry in pull/102
- fix github home invalid clean between jobs by @philippe-thierry in pull/109
- fixing infra bug: github home clean by @philippe-thierry in pull/110
- configs: convert defconfig to config file by @florent-valette in pull/113
- uapi.h: fix uapi header generation by @florent-valette in pull/123
- meson: fix pc file generation for uapi by @florent-valette in pull/130
- add release profile build to CI by @philippe-thierry in pull/133
- task: fixing sonar issue by @philippe-thierry in pull/142
- sched: null deref if get_current while no task had never been sheduled at all by @philippe-thierry in pull/143
- update job frame when a context switch happen by @philippe-thierry in pull/150
- handler: updated the handler entry to auto switch tasks context by @philippe-thierry in pull/151
- delay: set job state at end of delay, before schedule by @philippe-thierry in pull/152
- cleaning: fix delay alignment, remove various debug by @philippe-thierry in pull/156
- User task loading by @florent-valette in pull/175
- sysgate,rust: preserve target endianness on copy to svcexchange by @florent-valette in pull/198
- Initial task sp oob by @florent-valette in pull/205
- Bugfix/idle start leads to instr fetch violation by @florent-valette in pull/210
- bitglags: update to 2.4.2 - warning fix by @philippe-thierry in pull/214
- meson: fix cbindgen custom target. by @florent-valette in pull/224
- ci: fixing doc deployment when no diff exists by @philippe-thierry in pull/218
- lang,rust: remove paste proc-macro deps by @florent-valette in pull/227
- uapi: fixing local uapi header inclusion by @philippe-thierry in pull/228
- manager bindings: Fix Cargo build by @florent-valette in pull/235
- uapi: add dependency between cbindgen and rlib for uapi internal by @florent-valette in pull/241
- fix: signal and ipc gate waitforevent state check by @philippe-thierry in pull/240
- ci: fixing deploy script by @philippe-thierry in pull/246
Tests and autotesting framework
- adding rust CI by @philippe-thierry in pull/82
- Feature/task mgr unit tests by @philippe-thierry in pull/91
- autotest app and mode by @philippe-thierry in pull/131
- printf in autotest by @philippe-thierry in pull/159
- autotest: init autotest lib by @philippe-thierry in pull/213
New target support
- STM32l476 (Nucleo-64) support by @philippe-thierry in pull/62
- PLL driver refactoring by @florent-valette in pull/187
- Feature/stm32u5 kconfig support by @florent-valette in pull/193
Formal proof and correctness
- add proof as test suite by @philippe-thierry in pull/34
- adding Frama-C generated for all composition proofs by @philippe-thierry in pull/36
Build system
- enhance build workflow by @philippe-thierry in pull/7
- add generated layout and irq defs from svd by @philippe-thierry in pull/13
- RNG driver plus crc&pgc32 backend support by @philippe-thierry in pull/14
- Frama-C: proof integration by @philippe-thierry in pull/15
- Initial Sentry managers architecture by @philippe-thierry in pull/25
- SoC bus listing generation by @philippe-thierry in pull/27
- adding cleaner rcc+pwr drivers by @philippe-thierry in pull/32
- support for gtest unit testing by @philippe-thierry in pull/42
- SVD based vtor table generation by @florent-valette in pull/54
- DTS based ldscript generation by @florent-valette in pull/55
- Feature/clockout debug gpio by @florent-valette in pull/65
- cleaning entrypoint through managers usage by @philippe-thierry in pull/72
- meson.build: add ffunction-sections and fdata-sections build opts by @florent-valette in pull/77
- initial device manager starting point by @philippe-thierry in pull/96
- Add install target by @florent-valette in pull/128
- Time manager: support for time and delay abstraction by @philippe-thierry in pull/136
- make sched an autonomous module by @philippe-thierry in pull/137
- Make security management code fully handled in security manager by @philippe-thierry in pull/138
- cleaning: move zlib to independent dir by @philippe-thierry in pull/139
- Sort in zlib: Linux-like model by @philippe-thierry in pull/140
CI/CD evolutions and fixes
- install Rust toolchain in CI for build by @philippe-thierry in pull/105
- ci: adding dependabot config by @philippe-thierry in pull/185
- adding nucleo config for autotest by @philippe-thierry in pull/208
- cd: adding doc deploy to github pages by @philippe-thierry in pull/212
- ci: adding u5a5 build to ci by @philippe-thierry in pull/217
- ci: adding release file formatting mechanism by @philippe-thierry in pull/229
Other Changes
- addming codeowners file to kernel by @philippe-thierry in pull/3
- add support for initial documentation generation by @philippe-thierry in pull/10
- workflow, build: use generic actions from embedded-devops orga by @florent-valette in pull/11
- Fixing few typo by @ilya-artemov in pull/8
- support for startup code and ELF generation by @philippe-thierry in pull/4
- Add kconfig meson handling by @florent-valette in pull/12
- adding syscfg, generic-based iowrite by @philippe-thierry in pull/20
- pcg & crc implementation by @philippe-thierry in pull/22
- add GPIO driver support for STM32 by @philippe-thierry in pull/23
- add exti driver implementation by @philippe-thierry in pull/24
- fix warning on entrypoint that do not return by @philippe-thierry in pull/26
- add rcc clock enable/disable support by @philippe-thierry in pull/28
- fix gpio driver probe function by @philippe-thierry in pull/29
- replacing stub main par Sentry _entrypoint directly by @philippe-thierry in pull/30
- add wp for composition-based formal proof by @philippe-thierry in pull/35
- framac: enhance entropy source to fully defined framaC api by @philippe-thierry in pull/37
- adding various other BSP drivers framac wp coverage by @philippe-thierry in pull/38
- codequal git config fails on spectra dedicated, using classic by @philippe-thierry in pull/43
- meson.build: add dts parse infrastructure by @florent-valette in pull/31
- add C-based handlers by @philippe-thierry in pull/47
- build: multi-toolchain support by @philippe-thierry in pull/45
- clocks dts configuration by @florent-valette in pull/57
- driver,stm32-rcc: fix register read after selecting system clock source by @florent-valette in pull/58
- Feature/flash wait state by @florent-valette in pull/59
- codeowners: update codeowners with Rust part by @philippe-thierry in pull/64
- sched: adding FIFO sched by @philippe-thierry in pull/63
- Feature/uapi by @victor-servant in pull/61
- drv-usart: adding usart driver, tx only by @philippe-thierry in pull/39
- noPIC/noPIE build by @florent-valette in pull/71
- adding security manager to handle entropy by @philippe-thierry in pull/73
- log: linux-like API by @philippe-thierry in pull/74
- task: staring task support by @philippe-thierry in pull/67
- Add sonar-project.properties file by @florent-valette in pull/75
- Build as no-builtin but link w/ libgcc by @florent-valette in pull/78
- Bugfix: Wrong target arch at linktime by @florent-valette in pull/81
- started cleaner irq handling and dispatch by @philippe-thierry in pull/79
- adding exported asm-generic panic() symbol for overall kernel by @philippe-thierry in pull/85
- adding task manager to entrypoint by @philippe-thierry in pull/76
- Sonar: fix reliability bugs by @philippe-thierry in pull/86
- adding systick start at boot, with initial period by @philippe-thierry in pull/87
- sonar: fixing strlen with strnlen by @philippe-thierry in pull/88
- adding coverage support by @philippe-thierry in pull/89
- Feature: syscall gate by @victor-servant in pull/83
- UAPI capability header with capa list and basic helpers by @philippe-thierry in pull/94
- enhancing handle manipulation by @philippe-thierry in pull/95
- initial MPU support, memory manager first pass by @philippe-thierry in pull/93
- add raw log API for syscall by @philippe-thierry in pull/99
- initial documentation structure and concept content by @philippe-thierry in pull/84
- Feature/enhanced device mapping by @philippe-thierry in pull/98
- fixing codequal to support generic image by @philippe-thierry in pull/107
- Move to PSP-based userspace tasks at boot by @philippe-thierry in pull/104
- vanilla meson build for Rust components by @victor-servant in pull/106
- Feature/svc handler by @victor-servant in pull/90
- add support for cycle counting (DWT based) by @philippe-thierry in pull/112
- RRMQ scheduler by @philippe-thierry in pull/111
- make idle using uapi by @phil...