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