1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21 22# 23# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 24# Copyright (c) 2013, Joyent, Inc. All rights reserved. 25# Copyright 2016 Nexenta Systems, Inc. 26# 27 28# 29# This Makefile defines all file modules and build rules for the 30# directory uts/intel and its children. These are the source files which 31# are specific to x86 processor architectures. 32# 33 34# 35# Core (unix) objects 36# 37CORE_OBJS += \ 38 arch_kdi.o \ 39 copy.o \ 40 copy_subr.o \ 41 cpc_subr.o \ 42 ddi_arch.o \ 43 ddi_i86.o \ 44 ddi_i86_asm.o \ 45 desctbls.o \ 46 desctbls_asm.o \ 47 exception.o \ 48 float.o \ 49 fmsmb.o \ 50 fpu.o \ 51 i86_subr.o \ 52 lock_prim.o \ 53 ovbcopy.o \ 54 polled_io.o \ 55 sseblk.o \ 56 sundep.o \ 57 swtch.o \ 58 sysi86.o 59 60# 61# 64-bit multiply/divide compiler helper routines 62# used only for ia32 63# 64 65SPECIAL_OBJS_32 += \ 66 muldiv.o 67 68# 69# Generic-unix Module 70# 71GENUNIX_OBJS += \ 72 archdep.o \ 73 getcontext.o \ 74 install_utrap.o \ 75 lwp_private.o \ 76 prom_enter.o \ 77 prom_exit.o \ 78 prom_panic.o \ 79 sendsig.o \ 80 syscall.o 81 82 83# 84# PROM Routines 85# 86GENUNIX_OBJS += \ 87 prom_env.o \ 88 prom_emul.o \ 89 prom_getchar.o \ 90 prom_init.o \ 91 prom_node.o \ 92 prom_printf.o \ 93 prom_prop.o \ 94 prom_putchar.o \ 95 prom_reboot.o \ 96 prom_version.o 97 98# 99# file system modules 100# 101CORE_OBJS += \ 102 prmachdep.o 103 104# 105# ZFS file system module 106# 107ZFS_OBJS += \ 108 spa_boot.o 109 110# 111# Decompression code 112# 113CORE_OBJS += decompress.o 114 115# 116# Microcode utilities 117# 118CORE_OBJS += ucode_utils.o 119 120# 121# Driver modules 122# 123AGPGART_OBJS += agpgart.o agp_kstat.o 124AGPTARGET_OBJS += agptarget.o 125AMD64GART_OBJS += amd64_gart.o 126ARCMSR_OBJS += arcmsr.o 127ATA_OBJS += $(GHD_OBJS) ata_blacklist.o ata_common.o ata_disk.o \ 128 ata_dma.o atapi.o atapi_fsm.o ata_debug.o \ 129 sil3xxx.o 130BSCBUS_OBJS += bscbus.o 131BSCV_OBJS += bscv.o 132CMDK_OBJS += cmdk.o 133CMLB_OBJS += cmlb.o 134CPUNEX_OBJS += cpunex.o 135DADK_OBJS += dadk.o 136DCOPY_OBJS += dcopy.o 137DNET_OBJS += dnet.o dnet_mii.o 138FD_OBJS += fd.o 139GDA_OBJS += gda.o 140GHD_OBJS += ghd.o ghd_debug.o ghd_dma.o ghd_queue.o ghd_scsa.o \ 141 ghd_scsi.o ghd_timer.o ghd_waitq.o ghd_gcmd.o 142I915_OBJS += i915_dma.o i915_drv.o i915_irq.o i915_mem.o \ 143 i915_gem.o i915_gem_debug.o i915_gem_tiling.o 144NSKERN_OBJS += nsc_asm.o 145PCICFG_OBJS += pcicfg.o 146PCI_PCINEXUS_OBJS += pci_pci.o 147PCIEB_OBJS += pcieb_x86.o 148PIT_BEEP_OBJS += pit_beep.o 149POWER_OBJS += power.o 150PCI_AUTOCONFIG_OBJS += pci_autoconfig.o pci_boot.o pcie_nvidia.o \ 151 pci_memlist.o pci_resource.o 152RADEON_OBJS += r300_cmdbuf.o radeon_cp.o radeon_drv.o \ 153 radeon_state.o radeon_irq.o radeon_mem.o 154SD_OBJS += sd.o sd_xbuf.o 155 156HECI_OBJS += \ 157 heci_init.o \ 158 heci_intr.o \ 159 heci_interface.o \ 160 io_heci.o \ 161 heci_main.o 162 163STRATEGY_OBJS += strategy.o 164UCODE_OBJS += ucode_drv.o 165VGATEXT_OBJS += vgatext.o vgasubr.o 166 167# 168# Kernel linker 169# 170KRTLD_OBJS += \ 171 bootfsops.o \ 172 bootrd.o \ 173 ufsops.o \ 174 hsfs.o \ 175 doreloc.o \ 176 kobj_boot.o \ 177 kobj_convrelstr.o \ 178 kobj_crt.o \ 179 kobj_isa.o \ 180 kobj_reloc.o 181 182# 183# misc. modules 184# 185ACPICA_OBJS += \ 186 dmbuffer.o dmcstyle.o dmdeferred.o dmnames.o dmopcode.o \ 187 dmresrc.o dmresrcl.o dmresrcl2.o dmresrcs.o dmutils.o \ 188 dmwalk.o \ 189 \ 190 dsargs.o dscontrol.o dsdebug.o dsfield.o dsinit.o \ 191 dsmethod.o dsmthdat.o dsobject.o dsopcode.o dsutils.o \ 192 dswexec.o dswload.o dswload2.o dswscope.o dswstate.o \ 193 \ 194 evevent.o evglock.o evgpe.o evgpeblk.o evgpeinit.o \ 195 evgpeutil.o evhandler.o evmisc.o evregion.o evrgnini.o \ 196 evsci.o evxface.o evxfevnt.o evxfgpe.o evxfregn.o \ 197 \ 198 exconcat.o exconfig.o exconvrt.o excreate.o exdebug.o \ 199 exdump.o exfield.o exfldio.o exmisc.o exmutex.o exnames.o \ 200 exoparg1.o exoparg2.o exoparg3.o exoparg6.o exprep.o \ 201 exregion.o exresnte.o exresolv.o exresop.o exstore.o \ 202 exstoren.o exstorob.o exsystem.o extrace.o exutils.o \ 203 \ 204 hwacpi.o hwesleep.o hwgpe.o hwpci.o hwregs.o hwsleep.o \ 205 hwtimer.o hwvalid.o hwxface.o hwxfsleep.o \ 206 \ 207 psargs.o psloop.o psobject.o psopcode.o psopinfo.o \ 208 psparse.o psscope.o pstree.o psutils.o pswalk.o psxface.o \ 209 \ 210 nsaccess.o nsalloc.o nsarguments.o nsconvert.o nsdump.o \ 211 nsdumpdv.o nseval.o nsinit.o nsload.o nsnames.o nsobject.o \ 212 nsparse.o nspredef.o nsprepkg.o nsrepair.o nsrepair2.o \ 213 nssearch.o nsutils.o nswalk.o nsxfeval.o nsxfname.o \ 214 nsxfobj.o \ 215 \ 216 rsaddr.o rscalc.o rscreate.o rsdump.o rsdumpinfo.o \ 217 rsinfo.o rsio.o rsirq.o rslist.o rsmemory.o rsmisc.o \ 218 rsserial.o rsutils.o rsxface.o \ 219 \ 220 tbdata.o tbfadt.o tbfind.o tbinstal.o tbprint.o tbutils.o \ 221 tbxface.o tbxfload.o tbxfroot.o \ 222 \ 223 utaddress.o utalloc.o utascii.o utbuffer.o utcache.o \ 224 utclib.o utcopy.o utdebug.o utdecode.o utdelete.o \ 225 uterror.o uteval.o utexcep.o utglobal.o uthex.o utids.o \ 226 utinit.o utlock.o utmath.o utmisc.o utmutex.o utnonansi.o \ 227 utobject.o utosi.o utownerid.o utpredef.o utprint.o \ 228 utresrc.o utstate.o utstring.o uttrack.o utuuid.o utxface.o \ 229 utxferror.o utxfinit.o utxfmutex.o \ 230 \ 231 acpi_enum.o acpica_ec.o acpica.o ahids.o master_ops.o \ 232 osl_ml.o osl.o 233 234 235AGP_OBJS += agpmaster.o 236FBT_OBJS += fbt.o 237SDT_OBJS += sdt.o 238 239# 240# AMD8111 NIC driver module 241# 242AMD8111S_OBJS += amd8111s_main.o amd8111s_hw.o 243 244# 245# Pentium Performance Counter BackEnd module 246# 247P123_PCBE_OBJS = p123_pcbe.o 248 249# 250# Pentium 4 Performance Counter BackEnd module 251# 252P4_PCBE_OBJS = p4_pcbe.o 253 254# 255# AMD Opteron/Athlon64 Performance Counter BackEnd module 256# 257OPTERON_PCBE_OBJS = opteron_pcbe.o 258 259# 260# Intel Core Architecture Performance Counter BackEnd module 261# 262CORE_PCBE_OBJS = core_pcbe.o 263 264# 265# AMR module 266# 267AMR_OBJS = amr.o 268 269# 270# IPMI module 271IPMI_OBJS += ipmi_main.o ipmi.o ipmi_kcs.o 272 273# 274# IOMMULIB module 275# 276IOMMULIB_OBJS = iommulib.o 277 278# 279# Brand modules 280# 281SN1_BRAND_OBJS = sn1_brand.o sn1_brand_asm.o 282S10_BRAND_OBJS = s10_brand.o s10_brand_asm.o 283 284# 285# special files 286# 287MODSTUB_OBJ += \ 288 modstubs.o 289 290BOOTDEV_OBJS += \ 291 bootdev.o 292 293INC_PATH += -I$(UTSBASE)/intel 294 295 296CPR_INTEL_OBJS += cpr_intel.o 297 298# 299# AMD family 0xf memory controller module 300# 301include $(SRC)/common/mc/mc-amd/Makefile.mcamd 302MCAMD_OBJS += \ 303 $(MCAMD_CMN_OBJS) \ 304 mcamd_drv.o \ 305 mcamd_dimmcfg.o \ 306 mcamd_subr.o \ 307 mcamd_pcicfg.o 308 309# 310# Intel Nehalem memory controller module 311# 312INTEL_NHM_OBJS += \ 313 nhm_init.o \ 314 mem_addr.o \ 315 intel_nhmdrv.o \ 316 nhm_pci_cfg.o \ 317 dimm_topo.o \ 318 intel_nhm.o 319 320# 321# Intel 5000/5100/5400/7300 chipset memory controller hub (MCH) module 322# 323INTEL_NB5000_OBJS += \ 324 intel_nb5000.o \ 325 intel_nbdrv.o \ 326 dimm_addr.o \ 327 nb_pci_cfg.o \ 328 nb5000_init.o 329 330# 331# VMware VMXNET3 virtual network device 332# 333VMXNET3S_OBJS = vmxnet3_main.o \ 334 vmxnet3_rx.o \ 335 vmxnet3_tx.o \ 336 vmxnet3_utils.o 337 338# 339# VMware PVSCSI SCSI Controller 340# 341PVSCSI_OBJS = pvscsi.o 342