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