opnsense-src/sys/riscv/include
Mitchell Horne 04a812ae94 riscv/stand: pass boot hart in loader metadata
Use the RISCV_EFI_BOOT_PROTOCOL to fetch the boot hart ID, and
communicate this to the kernel via new metadata field
(MODINFOMD_BOOT_HART).

If the boot hart is not found this way, fall back to the (now
deprecated) device-tree method.

The assumption that a hart ID can be represented with a 32-bit unsigned
integer is unchanged in the kernel, but from the loader we pass the full
64-bit value. This ensures that this API won't need to change in the
future, should the wider value become necessary.

Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D48887
2025-03-03 12:12:15 -04:00
..
_align.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_bus.h _bus.h: Use standard licnese text 2023-11-13 12:25:30 -07:00
_inttypes.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
_limits.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_stdint.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_types.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
asm.h riscv: T-HEAD early locore workaround 2024-11-25 17:08:04 -04:00
atomic.h atomics: Constify loads: riscv: Convert missed atomic_load_acq_64() 2025-01-20 16:49:45 +01:00
bus.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bus_dma.h Deprecate contigfree(9) in favour of free(9) 2024-07-26 10:45:01 +00:00
bus_dma_impl.h busdma: tidy bus_dma_run_filter() functions 2023-12-06 19:11:39 -04:00
clock.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
counter.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cpu.h riscv: T-HEAD early locore workaround 2024-11-25 17:08:04 -04:00
cpufunc.h riscv vmm: implement SBI RFNC extension. 2025-01-21 10:35:19 +00:00
db_machdep.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dump.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
efi.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
elf.h riscv/vmm: Initial import. 2024-10-31 20:24:12 +00:00
encoding.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
endian.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
exec.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
float.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
floatingpoint.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
fpe.h riscv: add FPE code. 2024-06-25 12:35:35 +01:00
frame.h riscv: Fix and generalise saving TP (PCPU pointer) whilst in userspace 2025-02-04 17:28:42 +00:00
gdb_machdep.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
ieeefp.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
ifunc.h riscv: Add machine/ifunc.h corresponding to rtld-elf's resolver interface 2024-08-22 20:36:45 +01:00
in_cksum.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
intr.h intrng: fix INTR_ROOT_* constants 2024-12-16 15:11:52 -04:00
kdb.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
machdep.h riscv: drop l1pt argument from pmap_bootstrap() 2024-06-20 15:33:19 -03:00
md_var.h riscv/vmm: Initial import. 2024-10-31 20:24:12 +00:00
memdev.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
metadata.h riscv/stand: pass boot hart in loader metadata 2025-03-03 12:12:15 -04:00
minidump.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ofw_machdep.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
param.h pci: cleanup __PCI_REROUTE_INTERRUPTS 2025-01-23 16:30:31 -04:00
pcb.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pcpu.h riscv: enable cpufreq_dt driver 2025-01-10 15:16:06 -04:00
pcpu_aux.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pmap.h riscv: drop l1pt argument from pmap_bootstrap() 2024-06-20 15:33:19 -03:00
pmc_mdep.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
proc.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
procctl.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
profile.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
psl.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
pte.h riscv: T-HEAD PBMT support 2024-11-25 17:08:04 -04:00
ptrace.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
reg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
reloc.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
resource.h Retire non-NEW_PCIB code and remove config option 2024-07-18 18:55:12 +01:00
riscvreg.h riscv/vmm: Initial import. 2024-10-31 20:24:12 +00:00
runq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sbi.h riscv: T-HEAD early locore workaround 2024-11-25 17:08:04 -04:00
sdt_machdep.h sdt: Implement SDT probes using hot-patching 2024-06-19 16:57:41 -04:00
setjmp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sf_buf.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sigframe.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
signal.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
smp.h riscv: Convert local interrupt controller to a newbus PIC 2024-01-24 23:49:54 +00:00
stack.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stdarg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sysarch.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
thead.h riscv: T-HEAD PBMT support 2024-11-25 17:08:04 -04:00
tls.h Add <machine/tls.h> header to hold MD constants and helpers for TLS. 2021-12-09 13:17:13 -08:00
trap.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
ucontext.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vdso.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vm.h riscv: Svpbmt extension support 2024-07-31 12:28:13 -03:00
vmm.h vmm: Consolidate code which manages guest memory regions 2025-02-18 16:00:07 +00:00
vmm_dev.h riscv/vmm: Fix the build after a97f683fe3 2024-11-05 04:23:49 +00:00
vmm_instruction_emul.h riscv/vmm: Initial import. 2024-10-31 20:24:12 +00:00
vmm_snapshot.h riscv/vmm: Initial import. 2024-10-31 20:24:12 +00:00
vmparam.h riscv: rework page table bootstrap 2024-06-20 15:33:19 -03:00