xref: /titanic_44/usr/src/uts/sun4v/Makefile.files (revision 72ca8cc954e6ca79da549736925d4569dc23b239)
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 2008 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26#	This Makefile defines all file modules for the directory uts/sun4v
27#	and it's children. These are the source files which are sun4u
28#	"implementation architecture" dependent.
29#
30
31#
32#	object lists
33#
34CORE_OBJS +=	bootops.o
35CORE_OBJS +=	cmp.o
36CORE_OBJS +=	cpc_hwreg.o
37CORE_OBJS +=	cpc_subr.o
38CORE_OBJS +=	error.o
39CORE_OBJS +=	fillsysinfo.o
40CORE_OBJS +=	forthdebug.o
41CORE_OBJS +=	hardclk.o
42CORE_OBJS +=	hat_sfmmu.o
43CORE_OBJS +=	hat_kdi.o
44CORE_OBJS +=	hsvc.o
45CORE_OBJS +=	lpad.o
46CORE_OBJS +=	mach_cpu_states.o
47CORE_OBJS +=	mach_ddi_impl.o
48CORE_OBJS +=	mach_descrip.o
49CORE_OBJS +=	mach_kpm.o
50CORE_OBJS +=	mach_mp_startup.o
51CORE_OBJS +=	mach_mp_states.o
52CORE_OBJS +=	mach_proc_init.o
53CORE_OBJS +=	mach_sfmmu.o
54CORE_OBJS +=	mach_startup.o
55CORE_OBJS +=	mach_subr_asm.o
56CORE_OBJS +=	mach_trap.o
57CORE_OBJS +=	mach_vm_dep.o
58CORE_OBJS +=	mach_xc.o
59CORE_OBJS +=	mem_cage.o
60CORE_OBJS +=	mem_config.o
61CORE_OBJS +=	memlist_new.o
62CORE_OBJS +=	mpo.o
63CORE_OBJS +=	ppage.o
64CORE_OBJS +=	promif_asr.o
65CORE_OBJS +=	promif_cpu.o
66CORE_OBJS +=	promif_emul.o
67CORE_OBJS +=	promif_mon.o
68CORE_OBJS +=	promif_io.o
69CORE_OBJS +=	promif_interp.o
70CORE_OBJS +=	promif_key.o
71CORE_OBJS +=	promif_power_off.o
72CORE_OBJS +=	promif_prop.o
73CORE_OBJS +=	promif_node.o
74CORE_OBJS +=	promif_reboot.o
75CORE_OBJS +=	promif_stree.o
76CORE_OBJS +=	promif_test.o
77CORE_OBJS +=	promif_version.o
78CORE_OBJS +=	sfmmu_kdi.o
79CORE_OBJS +=	swtch.o
80CORE_OBJS +=	wdt.o
81CORE_OBJS +=	xhat_sfmmu.o
82
83CORE_OBJS +=	mdesc_diff.o
84CORE_OBJS +=	mdesc_findname.o
85CORE_OBJS +=	mdesc_findnodeprop.o
86CORE_OBJS +=	mdesc_fini.o
87CORE_OBJS +=	mdesc_getbinsize.o
88CORE_OBJS +=	mdesc_getgen.o
89CORE_OBJS +=	mdesc_getpropdata.o
90CORE_OBJS +=	mdesc_getpropstr.o
91CORE_OBJS +=	mdesc_getpropval.o
92CORE_OBJS +=	mdesc_init_intern.o
93CORE_OBJS +=	mdesc_nodecount.o
94CORE_OBJS +=	mdesc_rootnode.o
95CORE_OBJS +=	mdesc_scandag.o
96
97#
98#	Some objects must be linked at the front of the image (or
99#	near other objects at the front of the image).
100#
101SPECIAL_OBJS +=	trap_table.o
102SPECIAL_OBJS +=	locore.o
103SPECIAL_OBJS +=	mach_locore.o
104SPECIAL_OBJS +=	sfmmu_asm.o
105SPECIAL_OBJS +=	mach_sfmmu_asm.o
106SPECIAL_OBJS +=	interrupt.o
107SPECIAL_OBJS +=	mach_interrupt.o
108SPECIAL_OBJS +=	wbuf.o
109SPECIAL_OBJS += hcall.o
110SPECIAL_OBJS += intrq.o
111
112#
113#			driver modules
114#
115ROOTNEX_OBJS	+= mach_rootnex.o
116PX_OBJS		+= px_lib4v.o px_err.o px_tools_4v.o px_hcall.o px_libhv.o
117FPC_OBJS	+= fpc-impl-4v.o fpc-asm-4v.o
118N2PIUPC_OBJS	+= n2piupc.o n2piupc_tables.o n2piupc_kstats.o \
119			n2piupc_biterr.o n2piupc_asm.o
120TRAPSTAT_OBJS	+= trapstat.o
121NIUMX_OBJS	+= niumx.o
122N2RNG_OBJS	+= n2rng.o n2rng_debug.o n2rng_hcall.o n2rng_kcf.o \
123		   n2rng_entp_algs.o n2rng_entp_setup.o n2rng_kstat.o \
124		   n2rng_provider.o
125
126#
127# 			CPU/Memory Error Injector (memtest) sun4v driver
128#
129MEMTEST_OBJS	+= memtest.o memtest_asm.o \
130			memtest_v.o memtest_v_asm.o \
131			memtest_ni.o memtest_ni_asm.o \
132			memtest_n2.o memtest_n2_asm.o \
133			memtest_vf.o
134
135#
136#			sun4v virtual devices
137#
138QCN_OBJS	= qcn.o
139VNEX_OBJS	= vnex.o
140CNEX_OBJS	= cnex.o
141GLVC_OBJS	= glvc.o glvc_hcall.o
142MDESC_OBJS	= mdesc.o
143LDC_OBJS	= ldc.o ldc_shm.o vio_util.o vdsk_common.o vgen_stats.o \
144			vnet_common.o
145NTWDT_OBJS	= ntwdt.o
146VLDC_OBJS	= vldc.o
147VCC_OBJS	= vcc.o
148VNET_OBJS	= vnet.o vnet_gen.o vnet_dds.o vnet_dds_hcall.o
149VSW_OBJS	= vsw.o vsw_ldc.o vsw_phys.o vsw_switching.o vsw_hio.o
150VDC_OBJS	= vdc.o
151VDS_OBJS	= vds.o
152DS_PRI_OBJS	= ds_pri.o
153DS_SNMP_OBJS	= ds_snmp.o
154VLDS_OBJS	= vlds.o
155
156#
157#			Misc modules
158#
159BOOTDEV_OBJS	+= bootdev.o
160DR_CPU_OBJS	+= dr_cpu.o
161DR_IO_OBJS	+= dr_io.o
162DRCTL_OBJS	= drctl.o drctl_impl.o dr_util.o
163DS_OBJS		= ds_common.o ds_drv.o
164FAULT_ISO_OBJS	= fault_iso.o
165OBPSYM_OBJS	+= obpsym.o obpsym_1275.o
166PLATSVC_OBJS	= platsvc.o mdeg.o
167
168#
169#			Brand modules
170#
171SN1_BRAND_OBJS		= sn1_brand.o sn1_brand_asm.o
172
173#
174#			Performance Counter BackEnd (PCBE) Modules
175#
176NI_PCBE_OBJS	= niagara_pcbe.o
177N2_PCBE_OBJS	= niagara2_pcbe.o
178RK_PCBE_OBJS	= rock_pcbe.o
179
180#
181#			cpu modules
182#
183CPU_OBJ		+= $(OBJS_DIR)/mach_cpu_module.o
184GENERIC_OBJS = generic.o generic_copy.o common_asm.o atomic.o
185NIAGARACPU_OBJS = niagara.o niagara_copy.o common_asm.o niagara_perfctr.o
186NIAGARACPU_OBJS += niagara_asm.o atomic.o
187NIAGARA2CPU_OBJS = niagara2.o niagara_copy.o common_asm.o niagara_perfctr.o
188NIAGARA2CPU_OBJS += niagara2_asm.o atomic.o
189ROCKCPU_OBJS = rock.o rock_copy.o common_asm.o rock_atomic.o rock_asm.o
190
191#
192#			platform module
193#
194PLATMOD_OBJS	= platmod.o
195
196#	Section 3:	Misc.
197#
198ALL_DEFS	+= -Dsun4u -Dsun4v
199INC_PATH	+= -I$(UTSBASE)/sun4v
200#
201# Since assym.h is a derived file, the dependency must be explicit for
202# all files including this file. (This is only actually required in the
203# instance when the .make.state file does not exist.) It may seem that
204# the lint targets should also have a similar dependency, but they don't
205# since only C headers are included when #defined(lint) is true.
206#
207ASSYM_DEPS	+= mach_locore.o
208ASSYM_DEPS	+= module_sfmmu_asm.o
209ASSYM_DEPS	+= generic_asm.o generic_copy.o
210ASSYM_DEPS	+= niagara_copy.o niagara_asm.o niagara2_asm.o
211ASSYM_DEPS	+= mach_subr_asm.o swtch.o
212ASSYM_DEPS	+= mach_interrupt.o mach_xc.o
213ASSYM_DEPS	+= trap_table.o wbuf.o
214ASSYM_DEPS	+= mach_sfmmu_asm.o sfmmu_asm.o
215
216#
217#			kernel cryptographic framework
218#
219
220ARCFOUR_OBJS	+= arcfour.o arcfour_crypt.o
221
222