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