xref: /illumos-gate/usr/src/uts/intel/Makefile.files (revision dcbf3bd6a1f1360fc1afcee9e22c6dcff7844bf2)
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	+= dbcmds.o dbdisply.o \
186		   dbexec.o dbfileio.o dbhistry.o dbinput.o dbstats.o \
187		   dbutils.o dbxface.o evevent.o evgpe.o evgpeblk.o \
188		   evmisc.o evregion.o evrgnini.o evsci.o evxface.o \
189		   evxfevnt.o evxfregn.o hwacpi.o hwgpe.o hwregs.o \
190		   hwsleep.o hwtimer.o dsfield.o dsinit.o dsmethod.o \
191		   dsmthdat.o dsobject.o dsopcode.o dsutils.o dswexec.o \
192		   dswload.o dswscope.o dswstate.o exconfig.o exconvrt.o \
193		   excreate.o exdump.o exfield.o exfldio.o exmisc.o \
194		   exmutex.o exnames.o exoparg1.o exoparg2.o exoparg3.o \
195		   exoparg6.o exprep.o exregion.o exresnte.o exresolv.o \
196		   exresop.o exstore.o exstoren.o exstorob.o exsystem.o \
197		   exutils.o psargs.o psopcode.o psparse.o psscope.o \
198		   pstree.o psutils.o pswalk.o psxface.o nsaccess.o \
199		   nsalloc.o nsdump.o nsdumpdv.o nseval.o nsinit.o \
200		   nsload.o nsnames.o nsobject.o nsparse.o nssearch.o \
201		   nsutils.o nswalk.o nsxfeval.o nsxfname.o nsxfobj.o \
202		   rsaddr.o rscalc.o rscreate.o rsdump.o \
203		   rsinfo.o rsio.o rsirq.o rslist.o rsmemory.o rsmisc.o \
204		   rsutils.o rsxface.o tbfadt.o tbfind.o tbinstal.o  \
205		   tbutils.o tbxface.o tbxfroot.o \
206		   utalloc.o utclib.o utcopy.o utdebug.o utdelete.o \
207		   uteval.o utglobal.o utinit.o utmath.o utmisc.o \
208		   utobject.o utresrc.o utxface.o acpica.o acpi_enum.o \
209		   master_ops.o osl.o osl_ml.o acpica_ec.o utcache.o \
210		   utmutex.o utstate.o dmbuffer.o dmnames.o dmobject.o \
211		   dmopcode.o dmresrc.o dmresrcl.o dmresrcs.o dmutils.o \
212		   dmwalk.o psloop.o nspredef.o hwxface.o hwvalid.o \
213		   utlock.o utids.o nsrepair.o nsrepair2.o \
214		   dbmethod.o dbnames.o dsargs.o dscontrol.o dswload2.o \
215		   evglock.o evgpeinit.o evgpeutil.o evxfgpe.o exdebug.o \
216		   hwpci.o utdecode.o utosi.o utxferror.o
217
218
219AGP_OBJS += agpmaster.o
220FBT_OBJS += fbt.o
221SDT_OBJS += sdt.o
222
223#
224#	AMD8111 NIC driver module
225#
226AMD8111S_OBJS += amd8111s_main.o amd8111s_hw.o
227
228#
229#	Pentium Performance Counter BackEnd module
230#
231P123_PCBE_OBJS = p123_pcbe.o
232
233#
234#	Pentium 4 Performance Counter BackEnd module
235#
236P4_PCBE_OBJS = p4_pcbe.o
237
238#
239#	AMD Opteron/Athlon64 Performance Counter BackEnd module
240#
241OPTERON_PCBE_OBJS = opteron_pcbe.o
242
243#
244#	Intel Core Architecture Performance Counter BackEnd module
245#
246CORE_PCBE_OBJS = core_pcbe.o
247
248#
249#	AMR module
250#
251AMR_OBJS = amr.o
252
253#
254#	IPMI module
255IPMI_OBJS +=	ipmi_main.o ipmi.o ipmi_kcs.o
256
257#
258#	IOMMULIB module
259#
260IOMMULIB_OBJS = iommulib.o
261
262#
263#	Brand modules
264#
265SN1_BRAND_OBJS	=	sn1_brand.o sn1_brand_asm.o
266S10_BRAND_OBJS	=	s10_brand.o s10_brand_asm.o
267
268#
269#	special files
270#
271MODSTUB_OBJ +=	 	\
272	modstubs.o
273
274BOOTDEV_OBJS +=		\
275	bootdev.o
276
277INC_PATH	+= -I$(UTSBASE)/intel
278
279
280CPR_INTEL_OBJS +=	cpr_intel.o
281
282#
283# AMD family 0xf memory controller module
284#
285include $(SRC)/common/mc/mc-amd/Makefile.mcamd
286MCAMD_OBJS	+= \
287	$(MCAMD_CMN_OBJS) \
288	mcamd_drv.o \
289	mcamd_dimmcfg.o \
290	mcamd_subr.o \
291	mcamd_pcicfg.o
292
293#
294# Intel Nehalem memory controller module
295#
296INTEL_NHM_OBJS += \
297	nhm_init.o \
298	mem_addr.o \
299	intel_nhmdrv.o \
300	nhm_pci_cfg.o \
301	dimm_topo.o \
302	intel_nhm.o
303
304#
305# Intel 5000/5100/5400/7300 chipset memory controller hub (MCH) module
306#
307INTEL_NB5000_OBJS += \
308	intel_nb5000.o \
309	intel_nbdrv.o \
310	dimm_addr.o \
311	nb_pci_cfg.o \
312	nb5000_init.o
313
314#
315# VMware VMXNET3 virtual network device
316#
317VMXNET3S_OBJS =	vmxnet3_main.o \
318		vmxnet3_rx.o \
319		vmxnet3_tx.o \
320		vmxnet3_utils.o
321
322#
323# VMware PVSCSI SCSI Controller
324#
325PVSCSI_OBJS =	pvscsi.o
326