freebsd-skq/sys/riscv/include
Mitchell Horne 89f3492919 riscv: make use of SBI legacy replacement extensions
Version 0.2 of the SBI specification [1] marked the existing SBI
functions as "legacy" in order to move to a newer calling convention. It
also introduced a set of replacement extensions for some of the legacy
functionality. In particular, the TIME, IPI, and RFENCE extensions
implement and extend the semantics of their legacy counterparts, while
conforming to the newer version of the spec.

Update our SBI code to use the new replacement extensions when
available, and fall back to the legacy ones. These will eventually be
dropped, when support for version 0.2 is ubiquitous.

[1] https://github.com/riscv/riscv-sbi-doc/blob/master/riscv-sbi.adoc

Submitted by:	Danjel Q. <danq1222@gmail.com>
Reviewed by:	kp
Differential Revision:	https://reviews.freebsd.org/D26953
2020-10-26 19:13:22 +00:00
..
_align.h
_bus.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
_inttypes.h
_limits.h
_stdint.h
_types.h
asm.h Fix global pointer relaxations in the RISC-V kernel 2019-06-09 15:43:38 +00:00
atomic.h riscv: clean up empty lines in .c and .h files 2020-09-01 21:21:03 +00:00
bus_dma_impl.h
bus_dma.h
bus.h Add missing assignment forgotten in r365899 2020-09-20 15:11:52 +00:00
clock.h
counter.h Centralize __pcpu definitions. 2019-08-29 07:25:27 +00:00
cpu.h
cpufunc.h
db_machdep.h riscv: improve exception code naming 2020-10-24 20:57:13 +00:00
dump.h
efi.h
elf.h RISC-V: expose extension bits in AT_HWCAP 2019-06-11 00:55:54 +00:00
encoding.h
endian.h
exec.h
float.h
floatingpoint.h
fpe.h
frame.h
ieeefp.h libc: Provide sub fp(s|g)etmask() implementations for RISC-V 2020-08-03 12:48:51 +00:00
in_cksum.h
intr.h
kdb.h
machdep.h Handle load from loader(8) 2020-06-24 15:20:00 +00:00
md_var.h Move vm_page_dump bitset array definition to MI code 2020-09-21 22:20:37 +00:00
memdev.h riscv: Add memmmap so we can mmap /dev/mem 2020-10-01 15:04:55 +00:00
metadata.h RISC-V boot1.efi and loader.efi support 2020-07-06 18:19:42 +00:00
minidump.h Sparsify the vm_page_dump bitmap 2020-09-21 22:21:59 +00:00
ofw_machdep.h
param.h riscv: Define __PCI_REROUTE_INTERRUPT 2020-09-30 02:21:38 +00:00
pcb.h Remove unused fields from struct pcb. 2020-01-30 19:15:27 +00:00
pcpu_aux.h Correct padding length for RISC-V PCPU data. 2020-08-12 18:45:36 +00:00
pcpu.h Correct padding length for RISC-V PCPU data. 2020-08-12 18:45:36 +00:00
pmap.h Introduce vm_page_astate. 2019-12-10 18:14:50 +00:00
pmc_mdep.h
proc.h Get rid of sa->narg. It serves no purpose; use sa->callp->sy_narg instead. 2020-09-27 18:47:06 +00:00
procctl.h
profile.h riscv: fix uintfptr_t 2020-08-05 22:09:40 +00:00
psl.h
pte.h riscv pmap: zero reserved pte bits in ppn 2020-07-01 19:15:43 +00:00
ptrace.h
reg.h
reloc.h
resource.h Enable NEW_PCIB on riscv. 2020-01-24 16:50:51 +00:00
riscvreg.h riscv: improve exception code naming 2020-10-24 20:57:13 +00:00
runq.h
sbi.h riscv: make use of SBI legacy replacement extensions 2020-10-26 19:13:22 +00:00
setjmp.h
sf_buf.h
sigframe.h
signal.h
smp.h
stack.h Use uintptr_t instead of uint64_t for pointers in stack frames. 2020-08-12 20:29:49 +00:00
stdarg.h
sysarch.h
trap.h
ucontext.h
vdso.h
vm.h
vmparam.h Add a vmparam.h constant indicating pmap support for large pages. 2020-09-23 19:34:21 +00:00