Skip to content

Conversation

@lucasdietrich
Copy link
Owner

No description provided.

…logic

- Refactor tickless.c to improve scheduling and initialization, including new functions for scheduling and canceling tickless events.
- Update timer.h and timer.c to support new timer modes and improve interrupt handling.
- Added new fault codes for Rust panic and timing-related faults in fault.h and fault.c.
- Renamed ll_timer_clear_irq_flags to ll_timer_clear_all_irq_flags for clarity in timer.h.
- Updated k_flags_notify to use z_early_wake_up instead of z_wake_up for thread notifications in flags.c.
- Improved idle thread handling in idle.c with warnings for tickless mode.
- Enhanced initialization sequence in init.c to include debug messages and GPIO state clearing.
- Refactored kernel scheduling functions in kernel.c to improve clarity and maintainability, including renaming z_sched_enter to z_sched_point_enter.
- Updated tickless scheduling functions in tickless.c to use ticks instead of milliseconds for better precision.
- Introduced new tickless definitions in tickless_defs.h for better configuration management.
- Added support for elapsed ticks measurement since the last tickless event.
- Improved type definitions in types.h for better clarity and maintainability.
…ferences, add picture to illustrate the timings
* Fix ll_timer16_clear_irq_flag() function, only clear the flag if it is actually set in the TIFR register.

* Problem remaing: It appears that we are missing
SP if we schedule a new point few microseconds before
an already programmed one. This leads to a whole period miss (e.g. 32.768ms with prescaler = 8).
Decide what do it when the next SP is very near ? Improve logic, assembly code ?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants