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