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