Age | Commit message (Collapse) | Author |
|
Signed-off-by: Nathaniel Graff <nathaniel.graff@sifive.com>
|
|
This example is fairly simple, but it does at least demonstrate how to
use a C-based preemptable interrupt handler that's been registered in
CLIC mode on a SiFive E21.
|
|
|
|
|
|
|
|
|
|
printf doesn't fit in the scratchpad, but since there's really no reason
to call it on constant strings it can be replaced with puts. With this
change, the "hello" example fits in the scratchpad.
|
|
Everything still defaults to the flash, but users can optionally select
the scratchpad. Note that you have to be pretty careful about your
scratchpad programs, most of them won't fit. For example, printf is too
big to fit in the scratchpad.
|
|
Since our loader doesn't support multiple sections anyway, there's
really no reason to have all these sections floating around. They're
causing trouble due to misalignment so it's easiest to just group them
together so we can properly enforce alignment.
|
|
|
|
I'm hoping this will make everything more likely to align. We can't use
the other mechanism because our loader is lazy and assumes all the
sections are contiguous.
|
|
Without these alignment directives the sections are only required to be
aligned on word-sized boundries, but we sometimes require double-word
alignment. This allows the linker to sanely emit these sections.
|
|
|
|
|
|
|