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