1 # $NetBSD: files.aarch64,v 1.46 2026/05/11 19:36:06 yurix Exp $ 2 3 defflag opt_cpuoptions.h AARCH64_ALIGNMENT_CHECK 4 defflag opt_cpuoptions.h AARCH64_EL0_STACK_ALIGNMENT_CHECK 5 defflag opt_cpuoptions.h AARCH64_EL1_STACK_ALIGNMENT_CHECK 6 defflag opt_cpuoptions.h AARCH64_HAVE_L2CTLR 7 defflag opt_cpuoptions.h AARCH64_DEVICE_MEM_NONPOSTED 8 defflag opt_cpuoptions.h ARMV81_HAFDBS 9 10 defflag opt_cputypes.h CPU_ARMV8 11 defflag opt_cputypes.h CPU_CORTEX: CPU_ARMV8 12 defflag opt_cputypes.h CPU_THUNDERX: CPU_ARMV8 13 14 # Interrupt implementation header definition 15 defparam opt_arm_intr_impl.h ARM_INTR_IMPL 16 17 # ARM-specific debug options (for compat arch/arm/*) 18 defflag opt_arm_debug.h ARM_LOCK_CAS_DEBUG 19 defflag opt_arm_debug.h VERBOSE_INIT_ARM 20 defparam opt_arm_debug.h EARLYCONS 21 22 # Timer options 23 defflag opt_arm_timer.h __HAVE_GENERIC_CPU_INITCLOCKS 24 defflag opt_arm_timer.h __HAVE_GENERIC_SETSTATCLOCKRATE 25 26 # Board-specific bus_space(9)/bus_dma(9) definitions 27 defflag opt_arm_bus_space.h __BUS_SPACE_HAS_STREAM_METHODS 28 __BUS_SPACE_HAS_PROBING_METHODS 29 _ARM32_NEED_BUS_DMA_BOUNCE 30 BUSDMA_COUNTERS 31 32 # Console options 33 defparam opt_console.h CONSADDR 34 defparam opt_console.h CONSPEED 35 defparam opt_console.h CONMODE 36 defparam opt_console.h CONADDR 37 38 # FP support 39 file arch/aarch64/aarch64/fpu.c 40 41 # SMC Calling Convention 42 define smccc 43 file arch/arm/arm/smccc.c smccc 44 45 # Power State Coordination Interface (PSCI) 46 device psci: smccc 47 file arch/arm/arm/psci.c psci 48 file arch/arm/arm/psci_arm.S psci 49 50 # EFI support 51 file arch/arm/arm/efi_runtime.c efi_runtime 52 53 # PMAP options 54 defflag opt_pmap.h PMAPHIST : KERNHIST 55 defflag opt_pmap.h PMAPCOUNTERS PMAP_STEAL_MEMORY 56 PMAP_NEED_ALLOC_POOLPAGE 57 defflag opt_pmapboot.h PMAPBOOT_DEBUG 58 59 # MI PMAP flags 60 # 61 defflag opt_pmap.h PMAP_MI 62 63 # MI support 64 file dev/cons.c 65 66 # DDB 67 file arch/aarch64/aarch64/db_disasm.c ddb 68 file arch/aarch64/aarch64/db_interface.c ddb|kgdb 69 file arch/aarch64/aarch64/db_trace.c ddb 70 file arch/aarch64/aarch64/db_machdep.c ddb 71 file arch/aarch64/aarch64/disasm.c ddb 72 #file arch/aarch64/aarch64/kgdb_machdep.c kgdb # XXX: not implemented 73 74 # mainbus files 75 device mainbus { [addr = -1], [size = 0], [intr = -1] } 76 77 device cpufeaturebus {} 78 device cpu { }: cpufeaturebus 79 file arch/aarch64/aarch64/cpu.c cpu 80 81 # VMware Tools driver 82 attach vmt at cpufeaturebus 83 file arch/aarch64/aarch64/vmt.c vmt 84 85 # bus_space(9) 86 define bus_space_generic 87 file arch/aarch64/aarch64/bus_space.c 88 file arch/aarch64/aarch64/bus_space_asm_generic.S # bus_space_generic 89 file arch/aarch64/aarch64/bus_space_notimpl.S 90 91 # Standard files 92 file arch/arm/arm/arm_cpu_topology.c 93 file arch/arm/arm/arm_generic_dma.c 94 file arch/arm/arm/bootconfig.c 95 file arch/arm/arm/bus_stubs.c 96 file arch/arm/arm/cpu_subr.c 97 file arch/arm/arm32/bus_dma.c 98 file arch/aarch64/aarch64/aarch64_machdep.c 99 file arch/aarch64/aarch64/aarch64_reboot.c 100 file arch/aarch64/aarch64/core_machdep.c coredump 101 file arch/aarch64/aarch64/copyinout.S 102 file arch/aarch64/aarch64/cpu_in_cksum.S (inet | inet6) & cpu_in_cksum 103 file arch/aarch64/aarch64/cpu_machdep.c 104 file arch/aarch64/aarch64/cpuswitch.S 105 file arch/aarch64/aarch64/cpufunc.c 106 file arch/aarch64/aarch64/cpufunc_asm_armv8.S 107 file arch/aarch64/aarch64/exec_machdep.c 108 file arch/aarch64/aarch64/fusu.S 109 file arch/aarch64/aarch64/idle_machdep.S 110 file arch/aarch64/aarch64/kobj_machdep.c modular 111 file arch/aarch64/aarch64/lock_stubs.S 112 file arch/aarch64/aarch64/process_machdep.c 113 file arch/aarch64/aarch64/procfs_machdep.c procfs 114 file arch/aarch64/aarch64/sig_machdep.c 115 file arch/aarch64/aarch64/sys_machdep.c 116 file arch/aarch64/aarch64/syscall.c 117 file arch/aarch64/aarch64/trap.c 118 file arch/aarch64/aarch64/fault.c 119 file arch/aarch64/aarch64/vectors.S 120 file arch/aarch64/aarch64/vm_machdep.c 121 122 # pmap 123 file arch/aarch64/aarch64/aarch64_tlb.c 124 file arch/aarch64/aarch64/pmap.c !pmap_mi 125 file arch/aarch64/aarch64/pmapboot.c 126 file arch/aarch64/aarch64/pmap_page.S 127 file arch/aarch64/aarch64/pmap_machdep.c pmap_mi 128 file uvm/pmap/pmap.c pmap_mi 129 file uvm/pmap/pmap_devmap.c 130 file uvm/pmap/pmap_pvt.c 131 file uvm/pmap/pmap_segtab.c pmap_mi 132 file uvm/pmap/pmap_tlb.c 133 134 # EFI runtime (machdep) 135 file arch/aarch64/aarch64/efi_machdep.c efi_runtime 136 137 # NetBSD 32-bit binary compatibility 138 include "compat/netbsd32/files.netbsd32" 139 file arch/aarch64/aarch64/netbsd32_machdep.c compat_netbsd32 140 file arch/aarch64/aarch64/netbsd32_syscall.c compat_netbsd32 141 142 # Linux binary compatibility (COMPAT_LINUX) 143 include "compat/ossaudio/files.ossaudio" 144 include "compat/linux/files.linux" 145 include "compat/linux/arch/aarch64/files.linux_aarch64" 146 file arch/aarch64/aarch64/linux_syscall.c compat_linux 147 148 # Linux 32 bit compatibility (COMPAT_LINUX32) 149 include "compat/linux32/files.linux32" 150 include "compat/linux32/arch/aarch64/files.linux32_aarch64" 151 file arch/aarch64/aarch64/linux32_syscall.c compat_linux32 152 153 # profiling support 154 file dev/tprof/tprof_armv8.c tprof needs-flag 155 156 # ARMv8.0-AES 157 include "crypto/aes/arch/arm/files.aesarmv8" 158 159 # vpaes with ARM NEON 160 include "crypto/aes/arch/arm/files.aesneon" 161 162 # ChaCha with ARM NEON 163 include "crypto/chacha/arch/arm/files.chacha_arm" 164