Page MenuHomeFreeBSD

riscv vmm: SBI timer support
Needs ReviewPublic

Authored by br on Wed, Dec 18, 4:06 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Dec 19, 6:06 PM
Unknown Object (File)
Wed, Dec 18, 5:15 PM

Details

Reviewers
mhorne
jrtc27
markj
Group Reviewers
bhyve
Summary

Add SBI timer implementation and rework interrupts handling.

This is needed for EIC7700 which does not have SSTC extension supported.

Add new "interrupts_pending" field. Use it for timer interrupt only for now, but later we can extend to store all pending interrupts (IPI and External).

Test Plan

With this I'm able to boot SMP guest on HiFive Premier P550.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

br requested review of this revision.Wed, Dec 18, 4:06 PM

Wait so you put up a patch to disable Sstc before an alternative was provided?

Wait so you put up a patch to disable Sstc before an alternative was provided?

:-)
Well it was still working in QEMU and Spike that both have SSTC.
On EIC7700 I needed to disable SSTC advertisement before I can work on SBI timer...otherwise the guest runs an invalid instruction.