Join GitHub today
kernel: make HAVE_WORK a member variable #1044
Now, before HAVE_WORK was a
Also, this moves the schedule function to a be a class function of
This pull request was tested by running hail on hail.
TODO or Help Wanted
referenced this pull request
Jun 28, 2018
In the spirit of our last weekly call, I think it's important to describe how these changes impact interfaces elsewhere.
I think given that #1043 is a tracking issue, it's good to work on these kinds of incremental changes, but would also just be good to document what someone getting an external port or capsule up to speed with a recent Tock version might need to change.
In this case, I believe the only required change is in the board configuration, where instead of calling
let board_kernel = static_init!(kernel::Kernel, kernel::Kernel::new()); board_kernel.kernel_loop(&tm4c1294, &mut chip, &mut PROCESSES, Some(&tm4c1294.ipc));
the arguments to
These changes have the
In general, my intuition is that parameterizing lifetimes will give us more flexibility to eventually take out shared static variables (this is an intuition, I don't have a good argument for why that is).
I think it's fine to leave this as-is, if we convince ourselves that clients of this interface (board