1# $FreeBSD$ 2cloudabi32_vdso.o optional compat_cloudabi32 \ 3 dependency "$S/contrib/cloudabi/cloudabi_vdso_armv6_on_64bit.S" \ 4 compile-with "${CC} -x assembler-with-cpp -m32 -shared -nostdinc -nostdlib -Wl,-T$S/compat/cloudabi/cloudabi_vdso.lds $S/contrib/cloudabi/cloudabi_vdso_armv6_on_64bit.S -o ${.TARGET}" \ 5 no-obj no-implicit-rule \ 6 clean "cloudabi32_vdso.o" 7# 8cloudabi32_vdso_blob.o optional compat_cloudabi32 \ 9 dependency "cloudabi32_vdso.o" \ 10 compile-with "${OBJCOPY} --input-target binary --output-target elf64-littleaarch64 --binary-architecture aarch64 cloudabi32_vdso.o ${.TARGET}" \ 11 no-implicit-rule \ 12 clean "cloudabi32_vdso_blob.o" 13# 14cloudabi64_vdso.o optional compat_cloudabi64 \ 15 dependency "$S/contrib/cloudabi/cloudabi_vdso_aarch64.S" \ 16 compile-with "${CC} -x assembler-with-cpp -shared -nostdinc -nostdlib -Wl,-T$S/compat/cloudabi/cloudabi_vdso.lds $S/contrib/cloudabi/cloudabi_vdso_aarch64.S -o ${.TARGET}" \ 17 no-obj no-implicit-rule \ 18 clean "cloudabi64_vdso.o" 19# 20cloudabi64_vdso_blob.o optional compat_cloudabi64 \ 21 dependency "cloudabi64_vdso.o" \ 22 compile-with "${OBJCOPY} --input-target binary --output-target elf64-littleaarch64 --binary-architecture aarch64 cloudabi64_vdso.o ${.TARGET}" \ 23 no-implicit-rule \ 24 clean "cloudabi64_vdso_blob.o" 25# 26 27# Allwinner common files 28arm/allwinner/a10_ehci.c optional ehci aw_ehci fdt 29arm/allwinner/a10_timer.c optional a10_timer fdt 30arm/allwinner/a10_codec.c optional sound a10_codec 31arm/allwinner/a31_dmac.c optional a31_dmac 32arm/allwinner/sunxi_dma_if.m optional a31_dmac 33arm/allwinner/aw_cir.c optional evdev aw_cir fdt 34arm/allwinner/aw_gpio.c optional gpio aw_gpio fdt 35arm/allwinner/aw_mmc.c optional mmc aw_mmc fdt | mmccam aw_mmc fdt 36arm/allwinner/aw_nmi.c optional aw_nmi fdt \ 37 compile-with "${NORMAL_C} -I$S/gnu/dts/include" 38arm/allwinner/aw_pwm.c optional aw_pwm fdt 39arm/allwinner/aw_rsb.c optional aw_rsb fdt 40arm/allwinner/aw_rtc.c optional aw_rtc fdt 41arm/allwinner/aw_sid.c optional aw_sid nvmem fdt 42arm/allwinner/aw_spi.c optional aw_spi fdt 43arm/allwinner/aw_syscon.c optional aw_syscon ext_resources syscon fdt 44arm/allwinner/aw_thermal.c optional aw_thermal nvmem fdt 45arm/allwinner/aw_usbphy.c optional ehci aw_usbphy fdt 46arm/allwinner/aw_wdog.c optional aw_wdog fdt 47arm/allwinner/axp81x.c optional axp81x fdt 48arm/allwinner/if_awg.c optional awg ext_resources syscon aw_sid nvmem fdt 49 50# Allwinner clock driver 51arm/allwinner/clkng/aw_ccung.c optional aw_ccu fdt 52arm/allwinner/clkng/aw_clk_frac.c optional aw_ccu fdt 53arm/allwinner/clkng/aw_clk_m.c optional aw_ccu fdt 54arm/allwinner/clkng/aw_clk_nkmp.c optional aw_ccu fdt 55arm/allwinner/clkng/aw_clk_nm.c optional aw_ccu fdt 56arm/allwinner/clkng/aw_clk_prediv_mux.c optional aw_ccu fdt 57arm/allwinner/clkng/ccu_a64.c optional soc_allwinner_a64 aw_ccu fdt 58arm/allwinner/clkng/ccu_h3.c optional soc_allwinner_h5 aw_ccu fdt 59arm/allwinner/clkng/ccu_sun8i_r.c optional aw_ccu fdt 60arm/allwinner/clkng/ccu_de2.c optional aw_ccu fdt 61 62# Allwinner padconf files 63arm/allwinner/a64/a64_padconf.c optional soc_allwinner_a64 fdt 64arm/allwinner/a64/a64_r_padconf.c optional soc_allwinner_a64 fdt 65arm/allwinner/h3/h3_padconf.c optional soc_allwinner_h5 fdt 66arm/allwinner/h3/h3_r_padconf.c optional soc_allwinner_h5 fdt 67 68arm/annapurna/alpine/alpine_ccu.c optional al_ccu fdt 69arm/annapurna/alpine/alpine_nb_service.c optional al_nb_service fdt 70arm/annapurna/alpine/alpine_pci.c optional al_pci fdt 71arm/annapurna/alpine/alpine_pci_msix.c optional al_pci fdt 72arm/annapurna/alpine/alpine_serdes.c optional al_serdes fdt \ 73 no-depend \ 74 compile-with "${CC} -c -o ${.TARGET} ${CFLAGS} -I$S/contrib/alpine-hal -I$S/contrib/alpine-hal/eth ${PROF} ${.IMPSRC}" 75arm/arm/generic_timer.c standard 76arm/arm/gic.c standard 77arm/arm/gic_acpi.c optional acpi 78arm/arm/gic_fdt.c optional fdt 79arm/arm/pmu.c standard 80arm/arm/physmem.c standard 81arm/broadcom/bcm2835/bcm2835_audio.c optional sound vchiq fdt \ 82 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 83arm/broadcom/bcm2835/bcm2835_bsc.c optional bcm2835_bsc soc_brcm_bcm2837 fdt 84arm/broadcom/bcm2835/bcm2835_cpufreq.c optional soc_brcm_bcm2837 fdt 85arm/broadcom/bcm2835/bcm2835_dma.c optional soc_brcm_bcm2837 fdt 86arm/broadcom/bcm2835/bcm2835_fbd.c optional vt soc_brcm_bcm2837 fdt 87arm/broadcom/bcm2835/bcm2835_ft5406.c optional evdev bcm2835_ft5406 soc_brcm_bcm2837 fdt 88arm/broadcom/bcm2835/bcm2835_gpio.c optional gpio soc_brcm_bcm2837 fdt 89arm/broadcom/bcm2835/bcm2835_intr.c optional soc_brcm_bcm2837 fdt 90arm/broadcom/bcm2835/bcm2835_mbox.c optional soc_brcm_bcm2837 fdt 91arm/broadcom/bcm2835/bcm2835_rng.c optional !random_loadable soc_brcm_bcm2837 fdt 92arm/broadcom/bcm2835/bcm2835_sdhci.c optional sdhci soc_brcm_bcm2837 fdt 93arm/broadcom/bcm2835/bcm2835_sdhost.c optional sdhci soc_brcm_bcm2837 fdt 94arm/broadcom/bcm2835/bcm2835_spi.c optional bcm2835_spi soc_brcm_bcm2837 fdt 95arm/broadcom/bcm2835/bcm2835_vcio.c optional soc_brcm_bcm2837 fdt 96arm/broadcom/bcm2835/bcm2835_wdog.c optional soc_brcm_bcm2837 fdt 97arm/broadcom/bcm2835/bcm2836.c optional soc_brcm_bcm2837 fdt 98arm/broadcom/bcm2835/bcm283x_dwc_fdt.c optional dwcotg fdt soc_brcm_bcm2837 99arm/mv/a37x0_gpio.c optional a37x0_gpio gpio fdt 100arm/mv/gpio.c optional mv_gpio fdt 101arm/mv/mvebu_pinctrl.c optional mvebu_pinctrl fdt 102arm/mv/mv_cp110_icu.c optional mv_cp110_icu fdt 103arm/mv/mv_ap806_gicp.c optional mv_ap806_gicp fdt 104arm/mv/mv_ap806_clock.c optional SOC_MARVELL_8K fdt 105arm/mv/mv_cp110_clock.c optional SOC_MARVELL_8K fdt 106arm/mv/mv_thermal.c optional SOC_MARVELL_8K mv_thermal fdt 107arm/mv/armada38x/armada38x_rtc.c optional mv_rtc fdt 108arm/xilinx/uart_dev_cdnc.c optional uart soc_xilinx_zynq 109arm64/acpica/acpi_iort.c optional acpi 110arm64/acpica/acpi_machdep.c optional acpi 111arm64/acpica/OsdEnvironment.c optional acpi 112arm64/acpica/acpi_wakeup.c optional acpi 113arm64/acpica/pci_cfgreg.c optional acpi pci 114arm64/arm64/autoconf.c standard 115arm64/arm64/bus_machdep.c standard 116arm64/arm64/bus_space_asm.S standard 117arm64/arm64/busdma_bounce.c standard 118arm64/arm64/busdma_machdep.c standard 119arm64/arm64/bzero.S standard 120arm64/arm64/clock.c standard 121arm64/arm64/copyinout.S standard 122arm64/arm64/copystr.c standard 123arm64/arm64/cpu_errata.c standard 124arm64/arm64/cpufunc_asm.S standard 125arm64/arm64/db_disasm.c optional ddb 126arm64/arm64/db_interface.c optional ddb 127arm64/arm64/db_trace.c optional ddb 128arm64/arm64/debug_monitor.c optional ddb 129arm64/arm64/disassem.c optional ddb 130arm64/arm64/dump_machdep.c standard 131arm64/arm64/efirt_machdep.c optional efirt 132arm64/arm64/elf32_machdep.c optional compat_freebsd32 133arm64/arm64/elf_machdep.c standard 134arm64/arm64/exception.S standard 135arm64/arm64/freebsd32_machdep.c optional compat_freebsd32 136arm64/arm64/gicv3_its.c optional intrng fdt 137arm64/arm64/gic_v3.c standard 138arm64/arm64/gic_v3_acpi.c optional acpi 139arm64/arm64/gic_v3_fdt.c optional fdt 140arm64/arm64/identcpu.c standard 141arm64/arm64/in_cksum.c optional inet | inet6 142arm64/arm64/locore.S standard no-obj 143arm64/arm64/machdep.c standard 144arm64/arm64/mem.c standard 145arm64/arm64/memcpy.S standard 146arm64/arm64/memmove.S standard 147arm64/arm64/minidump_machdep.c standard 148arm64/arm64/mp_machdep.c optional smp 149arm64/arm64/nexus.c standard 150arm64/arm64/ofw_machdep.c optional fdt 151arm64/arm64/pmap.c standard 152arm64/arm64/stack_machdep.c optional ddb | stack 153arm64/arm64/support.S standard 154arm64/arm64/swtch.S standard 155arm64/arm64/sys_machdep.c standard 156arm64/arm64/trap.c standard 157arm64/arm64/uio_machdep.c standard 158arm64/arm64/uma_machdep.c standard 159arm64/arm64/undefined.c standard 160arm64/arm64/unwind.c optional ddb | kdtrace_hooks | stack 161arm64/arm64/vfp.c standard 162arm64/arm64/vm_machdep.c standard 163arm64/cavium/thunder_pcie_fdt.c optional soc_cavm_thunderx pci fdt 164arm64/cavium/thunder_pcie_pem.c optional soc_cavm_thunderx pci 165arm64/cavium/thunder_pcie_pem_fdt.c optional soc_cavm_thunderx pci fdt 166arm64/cavium/thunder_pcie_common.c optional soc_cavm_thunderx pci 167arm64/cloudabi32/cloudabi32_sysvec.c optional compat_cloudabi32 168arm64/cloudabi64/cloudabi64_sysvec.c optional compat_cloudabi64 169arm64/coresight/coresight.c standard 170arm64/coresight/coresight_if.m standard 171arm64/coresight/coresight-cmd.c standard 172arm64/coresight/coresight-cpu-debug.c standard 173arm64/coresight/coresight-dynamic-replicator.c standard 174arm64/coresight/coresight-etm4x.c standard 175arm64/coresight/coresight-funnel.c standard 176arm64/coresight/coresight-tmc.c standard 177arm64/qualcomm/qcom_gcc.c optional qcom_gcc fdt 178contrib/vchiq/interface/compat/vchi_bsd.c optional vchiq soc_brcm_bcm2837 \ 179 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 180contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c optional vchiq soc_brcm_bcm2837 \ 181 compile-with "${NORMAL_C} -Wno-unused -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 182contrib/vchiq/interface/vchiq_arm/vchiq_arm.c optional vchiq soc_brcm_bcm2837 \ 183 compile-with "${NORMAL_C} -Wno-unused -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 184contrib/vchiq/interface/vchiq_arm/vchiq_connected.c optional vchiq soc_brcm_bcm2837 \ 185 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 186contrib/vchiq/interface/vchiq_arm/vchiq_core.c optional vchiq soc_brcm_bcm2837 \ 187 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 188contrib/vchiq/interface/vchiq_arm/vchiq_kern_lib.c optional vchiq soc_brcm_bcm2837 \ 189 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 190contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c optional vchiq soc_brcm_bcm2837 \ 191 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 192contrib/vchiq/interface/vchiq_arm/vchiq_shim.c optional vchiq soc_brcm_bcm2837 \ 193 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 194contrib/vchiq/interface/vchiq_arm/vchiq_util.c optional vchiq soc_brcm_bcm2837 \ 195 compile-with "${NORMAL_C} -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -I$S/contrib/vchiq" 196crypto/armv8/armv8_crypto.c optional armv8crypto 197armv8_crypto_wrap.o optional armv8crypto \ 198 dependency "$S/crypto/armv8/armv8_crypto_wrap.c" \ 199 compile-with "${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc:N-mgeneral-regs-only} -I$S/crypto/armv8/ ${WERROR} ${NO_WCAST_QUAL} ${PROF} -march=armv8-a+crypto ${.IMPSRC}" \ 200 no-implicit-rule \ 201 clean "armv8_crypto_wrap.o" 202crypto/blowfish/bf_enc.c optional crypto | ipsec | ipsec_support 203crypto/des/des_enc.c optional crypto | ipsec | ipsec_support | netsmb 204dev/acpica/acpi_bus_if.m optional acpi 205dev/acpica/acpi_if.m optional acpi 206dev/acpica/acpi_pci_link.c optional acpi pci 207dev/acpica/acpi_pcib.c optional acpi pci 208dev/acpica/acpi_pxm.c optional acpi 209dev/ahci/ahci_generic.c optional ahci 210dev/altera/dwc/if_dwc_socfpga.c optional fdt dwc_socfpga 211dev/axgbe/if_axgbe.c optional axgbe 212dev/axgbe/xgbe-desc.c optional axgbe 213dev/axgbe/xgbe-dev.c optional axgbe 214dev/axgbe/xgbe-drv.c optional axgbe 215dev/axgbe/xgbe-mdio.c optional axgbe 216dev/cpufreq/cpufreq_dt.c optional cpufreq fdt 217dev/iicbus/sy8106a.c optional sy8106a fdt 218dev/iicbus/twsi/mv_twsi.c optional twsi fdt 219dev/iicbus/twsi/a10_twsi.c optional twsi fdt 220dev/iicbus/twsi/twsi.c optional twsi fdt 221dev/hwpmc/hwpmc_arm64.c optional hwpmc 222dev/hwpmc/hwpmc_arm64_md.c optional hwpmc 223dev/mbox/mbox_if.m optional soc_brcm_bcm2837 224dev/mmc/host/dwmmc.c optional dwmmc fdt 225dev/mmc/host/dwmmc_altera.c optional dwmmc fdt dwmmc_altera 226dev/mmc/host/dwmmc_hisi.c optional dwmmc fdt soc_hisi_hi6220 227dev/mmc/host/dwmmc_rockchip.c optional dwmmc fdt soc_rockchip_rk3328 228dev/neta/if_mvneta_fdt.c optional neta fdt 229dev/neta/if_mvneta.c optional neta mdio mii 230dev/ofw/ofw_cpu.c optional fdt 231dev/ofw/ofwpci.c optional fdt pci 232dev/pci/pci_host_generic.c optional pci 233dev/pci/pci_host_generic_acpi.c optional pci acpi 234dev/pci/pci_host_generic_fdt.c optional pci fdt 235dev/psci/psci.c standard 236dev/psci/psci_arm64.S standard 237dev/psci/smccc.c standard 238dev/sdhci/sdhci_xenon.c optional sdhci_xenon sdhci fdt 239dev/uart/uart_cpu_arm64.c optional uart 240dev/uart/uart_dev_mu.c optional uart uart_mu 241dev/uart/uart_dev_pl011.c optional uart pl011 242dev/usb/controller/dwc_otg_hisi.c optional dwcotg fdt soc_hisi_hi6220 243dev/usb/controller/ehci_mv.c optional ehci_mv fdt 244dev/usb/controller/generic_ehci.c optional ehci acpi 245dev/usb/controller/generic_ohci.c optional ohci fdt 246dev/usb/controller/generic_usb_if.m optional ohci fdt 247dev/usb/controller/usb_nop_xceiv.c optional fdt ext_resources 248dev/usb/controller/generic_xhci.c optional xhci 249dev/usb/controller/generic_xhci_acpi.c optional xhci acpi 250dev/usb/controller/generic_xhci_fdt.c optional xhci fdt 251dev/vnic/mrml_bridge.c optional vnic fdt 252dev/vnic/nic_main.c optional vnic pci 253dev/vnic/nicvf_main.c optional vnic pci pci_iov 254dev/vnic/nicvf_queues.c optional vnic pci pci_iov 255dev/vnic/thunder_bgx_fdt.c optional vnic fdt 256dev/vnic/thunder_bgx.c optional vnic pci 257dev/vnic/thunder_mdio_fdt.c optional vnic fdt 258dev/vnic/thunder_mdio.c optional vnic 259dev/vnic/lmac_if.m optional inet | inet6 | vnic 260kern/kern_clocksource.c standard 261kern/msi_if.m optional intrng 262kern/pic_if.m optional intrng 263kern/subr_devmap.c standard 264kern/subr_intr.c optional intrng 265libkern/bcmp.c standard 266libkern/memcmp.c standard 267libkern/memset.c standard 268libkern/arm64/crc32c_armv8.S standard 269cddl/contrib/opensolaris/common/atomic/aarch64/opensolaris_atomic.S optional zfs | dtrace compile-with "${CDDL_C}" 270cddl/dev/dtrace/aarch64/dtrace_asm.S optional dtrace compile-with "${DTRACE_S}" 271cddl/dev/dtrace/aarch64/dtrace_subr.c optional dtrace compile-with "${DTRACE_C}" 272cddl/dev/fbt/aarch64/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}" 273 274# RockChip Drivers 275arm64/rockchip/rk3399_emmcphy.c optional fdt rk_emmcphy soc_rockchip_rk3399 276arm64/rockchip/rk_i2c.c optional fdt rk_i2c soc_rockchip_rk3328 | fdt rk_i2c soc_rockchip_rk3399 277arm64/rockchip/rk805.c optional fdt rk805 soc_rockchip_rk3328 | fdt rk805 soc_rockchip_rk3399 278arm64/rockchip/rk_grf.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 279arm64/rockchip/rk_pinctrl.c optional fdt rk_pinctrl soc_rockchip_rk3328 | fdt rk_pinctrl soc_rockchip_rk3399 280arm64/rockchip/rk_gpio.c optional fdt rk_gpio soc_rockchip_rk3328 | fdt rk_gpio soc_rockchip_rk3399 281arm64/rockchip/if_dwc_rk.c optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 282dev/dwc/if_dwc.c optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 283dev/dwc/if_dwc_if.m optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 284 285# RockChip Clock support 286arm64/rockchip/clk/rk_cru.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 287arm64/rockchip/clk/rk_clk_armclk.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 288arm64/rockchip/clk/rk_clk_composite.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 289arm64/rockchip/clk/rk_clk_gate.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 290arm64/rockchip/clk/rk_clk_mux.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 291arm64/rockchip/clk/rk_clk_pll.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 292arm64/rockchip/clk/rk3328_cru.c optional fdt soc_rockchip_rk3328 293arm64/rockchip/clk/rk3399_cru.c optional fdt soc_rockchip_rk3399 294arm64/rockchip/clk/rk3399_pmucru.c optional fdt soc_rockchip_rk3399 295