summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosef 'Jeff' Sipek <jeffpc@josefsipek.net>2014-01-06 13:34:20 -0500
committerRobert Mustacchi <rm@joyent.com>2014-01-06 10:37:31 -0800
commit2063d9c01c4a721994a3cb528444d7f328135869 (patch)
tree1d7a65e67c689eee9f5d273323185e93bff8b767
parent34ae5cdf42c9fd8bc75aedb3a91cc2fba8d5182c (diff)
downloadillumos-joyent-2063d9c01c4a721994a3cb528444d7f328135869.tar.gz
4266 remove Makefile*.shared nonsense in uts
Reviewed by: Richard Lowe <richlowe@richlowe.net> Approved by: Robert Mustacchi <rm@joyent.com>
-rw-r--r--usr/src/uts/README5
-rw-r--r--usr/src/uts/common/io/1394/inc.flg4
-rw-r--r--usr/src/uts/common/io/ib/inc.flg6
-rw-r--r--usr/src/uts/i86pc/Makefile.i86pc309
-rw-r--r--usr/src/uts/i86pc/Makefile.i86pc.shared329
-rw-r--r--usr/src/uts/i86pc/Makefile.targ21
-rw-r--r--usr/src/uts/i86pc/Makefile.targ.shared46
-rw-r--r--usr/src/uts/i86xpv/Makefile.i86xpv298
-rw-r--r--usr/src/uts/i86xpv/Makefile.i86xpv.shared320
-rw-r--r--usr/src/uts/i86xpv/Makefile.targ20
-rw-r--r--usr/src/uts/i86xpv/Makefile.targ.shared44
-rw-r--r--usr/src/uts/intel/Makefile.intel695
-rw-r--r--usr/src/uts/intel/Makefile.intel.shared714
-rw-r--r--usr/src/uts/intel/Makefile.targ19
-rw-r--r--usr/src/uts/intel/Makefile.targ.shared44
-rw-r--r--usr/src/uts/intel/kmech_krb5/req.flg4
-rw-r--r--usr/src/uts/sparc/Makefile.sparc474
-rw-r--r--usr/src/uts/sparc/Makefile.sparc.shared494
-rw-r--r--usr/src/uts/sparc/Makefile.targ21
-rw-r--r--usr/src/uts/sparc/Makefile.targ.shared46
-rw-r--r--usr/src/uts/sparc/kmech_krb5/req.flg4
-rw-r--r--usr/src/uts/sparc/req.flg4
-rw-r--r--usr/src/uts/sun/io/scsi/inc.flg2
-rw-r--r--usr/src/uts/sun4u/Makefile.sun4u461
-rw-r--r--usr/src/uts/sun4u/Makefile.sun4u.shared476
-rw-r--r--usr/src/uts/sun4u/Makefile.targ25
-rw-r--r--usr/src/uts/sun4u/Makefile.targ.shared50
-rw-r--r--usr/src/uts/sun4u/blade/Makefile.blade107
-rw-r--r--usr/src/uts/sun4u/blade/Makefile.blade.shared122
-rw-r--r--usr/src/uts/sun4u/blade/Makefile.targ65
-rw-r--r--usr/src/uts/sun4u/blade/Makefile.targ.shared80
-rw-r--r--usr/src/uts/sun4u/grover/Makefile.grover69
-rw-r--r--usr/src/uts/sun4u/grover/Makefile.grover.shared84
-rw-r--r--usr/src/uts/sun4u/grover/Makefile.targ65
-rw-r--r--usr/src/uts/sun4u/grover/Makefile.targ.shared80
-rw-r--r--usr/src/uts/sun4u/javelin/Makefile.javelin61
-rw-r--r--usr/src/uts/sun4u/javelin/Makefile.javelin.shared76
-rw-r--r--usr/src/uts/sun4u/javelin/Makefile.targ67
-rw-r--r--usr/src/uts/sun4u/javelin/Makefile.targ.shared82
-rw-r--r--usr/src/uts/sun4u/montecarlo/Makefile.montecarlo83
-rw-r--r--usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared100
-rw-r--r--usr/src/uts/sun4u/montecarlo/Makefile.targ77
-rw-r--r--usr/src/uts/sun4u/montecarlo/Makefile.targ.shared92
-rw-r--r--usr/src/uts/sun4u/mpxu/Makefile.mpxu111
-rw-r--r--usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared125
-rw-r--r--usr/src/uts/sun4u/mpxu/Makefile.targ82
-rw-r--r--usr/src/uts/sun4u/mpxu/Makefile.targ.shared95
-rw-r--r--usr/src/uts/sun4u/opl/Makefile.opl162
-rw-r--r--usr/src/uts/sun4u/opl/Makefile.opl.shared180
-rw-r--r--usr/src/uts/sun4u/opl/Makefile.targ83
-rw-r--r--usr/src/uts/sun4u/opl/Makefile.targ.shared101
-rw-r--r--usr/src/uts/sun4u/serengeti/Makefile.serengeti134
-rw-r--r--usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared150
-rw-r--r--usr/src/uts/sun4u/serengeti/Makefile.targ81
-rw-r--r--usr/src/uts/sun4u/serengeti/Makefile.targ.shared96
-rw-r--r--usr/src/uts/sun4u/starcat/Makefile.starcat140
-rw-r--r--usr/src/uts/sun4u/starcat/Makefile.starcat.shared157
-rw-r--r--usr/src/uts/sun4u/starcat/Makefile.targ81
-rw-r--r--usr/src/uts/sun4u/starcat/Makefile.targ.shared96
-rw-r--r--usr/src/uts/sun4u/sunfire/Makefile.sunfire58
-rw-r--r--usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared83
-rw-r--r--usr/src/uts/sun4u/sunfire/Makefile.targ56
-rw-r--r--usr/src/uts/sun4u/sunfire/Makefile.targ.shared79
-rw-r--r--usr/src/uts/sun4u/tazmo/Makefile.targ65
-rw-r--r--usr/src/uts/sun4u/tazmo/Makefile.targ.shared80
-rw-r--r--usr/src/uts/sun4u/tazmo/Makefile.tazmo72
-rw-r--r--usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared87
-rw-r--r--usr/src/uts/sun4v/Makefile.sun4v424
-rw-r--r--usr/src/uts/sun4v/Makefile.sun4v.shared439
-rw-r--r--usr/src/uts/sun4v/Makefile.targ25
-rw-r--r--usr/src/uts/sun4v/Makefile.targ.shared50
71 files changed, 4330 insertions, 5307 deletions
diff --git a/usr/src/uts/README b/usr/src/uts/README
index 0c1d4fd795..90ce373f22 100644
--- a/usr/src/uts/README
+++ b/usr/src/uts/README
@@ -23,7 +23,6 @@
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
KERNEL MAKEFILE STRUCTURE
-------------------------
@@ -152,10 +151,6 @@ uts/sun4c/unix.static/Makefile
to build multiple configurations. This configuration is roughly
equivalent to the GENERIC kernel of SunOS 4.x.
-uts/*/Makefile.?.shared
- These denote Makefile contents which are shared between open and
- closed builds.
-
The Makefiles are verbosely commented. It is desired that they should
stay this way.
diff --git a/usr/src/uts/common/io/1394/inc.flg b/usr/src/uts/common/io/1394/inc.flg
index 7519eaa338..5c0ff64f53 100644
--- a/usr/src/uts/common/io/1394/inc.flg
+++ b/usr/src/uts/common/io/1394/inc.flg
@@ -25,8 +25,6 @@
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
-
# This file brings down all that is needed to build just
# 1394 drivers.
#
@@ -76,9 +74,7 @@ echo_file usr/src/uts/sparc/Makefile
echo_file usr/src/uts/sparc/Makefile.files
echo_file usr/src/uts/sparc/Makefile.rules
echo_file usr/src/uts/sparc/Makefile.sparc
-echo_file usr/src/uts/sparc/Makefile.sparc.shared
echo_file usr/src/uts/sparc/Makefile.targ
-echo_file usr/src/uts/sparc/Makefile.targ.shared
echo_file usr/src/uts/sparc/ml/sparc.il
echo_file usr/src/uts/sparc/req.flg
diff --git a/usr/src/uts/common/io/ib/inc.flg b/usr/src/uts/common/io/ib/inc.flg
index 19641d2763..a7fbf4569a 100644
--- a/usr/src/uts/common/io/ib/inc.flg
+++ b/usr/src/uts/common/io/ib/inc.flg
@@ -106,18 +106,14 @@ echo_file usr/src/uts/sparc/Makefile
echo_file usr/src/uts/sparc/Makefile.files
echo_file usr/src/uts/sparc/Makefile.rules
echo_file usr/src/uts/sparc/Makefile.sparc
-echo_file usr/src/uts/sparc/Makefile.sparc.shared
echo_file usr/src/uts/sparc/Makefile.targ
-echo_file usr/src/uts/sparc/Makefile.targ.shared
echo_file usr/src/uts/sparc/ml/sparc.il
echo_file usr/src/uts/sparc/req.flg
echo_file usr/src/uts/intel/Makefile
echo_file usr/src/uts/intel/Makefile.files
echo_file usr/src/uts/intel/Makefile.rules
echo_file usr/src/uts/intel/Makefile.intel
-echo_file usr/src/uts/intel/Makefile.intel.shared
echo_file usr/src/uts/intel/Makefile.targ
-echo_file usr/src/uts/intel/Makefile.targ.shared
echo_file usr/src/uts/intel/ia32/ml/ia32.il
echo_file usr/src/uts/sun4/Makefile.files
echo_file usr/src/uts/sun4/Makefile.rules
@@ -125,9 +121,7 @@ echo_file usr/src/uts/sun4u/Makefile
echo_file usr/src/uts/sun4u/Makefile.files
echo_file usr/src/uts/sun4u/Makefile.rules
echo_file usr/src/uts/sun4u/Makefile.sun4u
-echo_file usr/src/uts/sun4u/Makefile.sun4u.shared
echo_file usr/src/uts/sun4u/Makefile.targ
-echo_file usr/src/uts/sun4u/Makefile.targ.shared
echo_file usr/src/uts/sun4u/Makefile.workarounds
echo_file usr/src/uts/sfmmu/Makefile.files
echo_file usr/src/uts/sfmmu/Makefile.rules
diff --git a/usr/src/uts/i86pc/Makefile.i86pc b/usr/src/uts/i86pc/Makefile.i86pc
index 041f425e02..9a5a625b4c 100644
--- a/usr/src/uts/i86pc/Makefile.i86pc
+++ b/usr/src/uts/i86pc/Makefile.i86pc
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -19,12 +20,310 @@
#
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
+# uts/i86pc/Makefile.i86pc
+#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+#
+#
+# This makefile contains the common definitions for the i86pc unix
+# and all i86pc implementation architecture dependent modules.
+#
+
+#
+# Machine type (implementation architecture):
+#
+PLATFORM = i86pc
+
+#
+# uname -m value
+#
+UNAME_M = $(PLATFORM)
+
+#
+# Definitions for the platform-specific /platform directories.
+#
+# IMPLEMENTATIONS is used to designate i86pc machines which have
+# platform specific modules. All code specific to a given implementation
+# resides in the appropriately named subdirectory. This requires
+# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS,
+# USR_PLAT_DIRS, etc.
+#
+IMPLEMENTATIONS = i86hvm
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
+GENLIB_DIR = $(UTSBASE)/intel/genunix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
+GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
+
+LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
+LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
+
+DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
+DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
+
+SYM_MOD = $(OBJS_DIR)/unix.sym
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln
+GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
#
-# ident "%Z%%M% %I% %E% SMI"
+include $(UTSBASE)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/intel/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
-UTSTREE=$(UTSBASE)
+#
+# Define supported builds
+#
+DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
+ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
-include $(UTSBASE)/i86pc/Makefile.i86pc.shared
+#
+# x86 or amd64 inline templates
+#
+INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \
+ $(UTSBASE)/$(PLATFORM)/ml/ia32.il
+INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \
+ $(UTSBASE)/$(PLATFORM)/ml/amd64.il
+INLINES += $(INLINES_$(CLASS))
+
+#
+# kernel-specific optimizations; override default in Makefile.master
+#
+
+CFLAGS_XARCH_32 = $(i386_CFLAGS)
+CFLAGS_XARCH_64 = $(amd64_CFLAGS)
+CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
+
+COPTFLAG_32 = $(COPTFLAG)
+COPTFLAG_64 = $(COPTFLAG64)
+COPTIMIZE = $(COPTFLAG_$(CLASS))
+
+CFLAGS = $(CFLAGS_XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CFLAGS_uts)
+CFLAGS += -xstrconst
+
+ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
+ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
+ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
+
+ASFLAGS += $(ASFLAGS_XARCH)
+
+AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
+
+#
+# The following must be defined for all implementations:
+#
+# MAPFILE: ld mapfile for the build of kernel/unix.
+# MODSTUBS: Module stubs source file.
+# GENASSYM_SRC: genassym.c
+#
+MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile
+MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
+GENASSYM_SRC = $(UTSBASE)/$(PLATFORM)/ml/genassym.c
+OFFSETS_SRC = $(UTSBASE)/$(PLATFORM)/ml/offsets.in
+PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in
+PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in
+PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS))
+KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP
+
+#
+# Software workarounds for hardware "features"
+#
+
+include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
+
+#
+# Debugging level
+#
+# Special knowledge of which special debugging options effect which
+# file is used to optimize the build if these flags are changed.
+#
+# XXX: The above could possibly be done for more flags and files, but
+# is left as an experiment to the interested reader. Be forewarned,
+# that excessive use could lead to maintenance difficulties.
+#
+DEBUG_DEFS_OBJ32 =
+DEBUG_DEFS_DBG32 = -DDEBUG
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
+
+DEBUG_COND_OBJ32 = $(POUND_SIGN)
+DEBUG_COND_DBG32 =
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
+
+$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE
+$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
+$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
+$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
+ $(OPTION_DEFS)
+GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \
+ -_gcc=-fno-eliminate-unused-debug-symbols \
+ -_gcc=-fno-eliminate-unused-debug-types
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
+#
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# the base kernel but should soon become kmods.
+#
+# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever
+# made into a module. If it is made MT safe before being made
+# into a module, it should be added to this list. It was in
+# this list pre ON-4.0.
+#
+#
+MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Machine Specific Driver Modules (/kernel/drv)
+# DRV_KMODS are built both 32-bit and 64-bit
+# DRV_KMODS_32 are built only 32-bit
+# DRV_KMODS_64 are built only 64-bit
+#
+DRV_KMODS += rootnex
+DRV_KMODS += isa
+DRV_KMODS += pcplusmp
+DRV_KMODS += apix
+DRV_KMODS += cpc
+DRV_KMODS += pci
+DRV_KMODS += npe
+DRV_KMODS += pci-ide
+DRV_KMODS += xsvc
+DRV_KMODS += tzmon
+DRV_KMODS += acpi_drv
+DRV_KMODS += acpinex
+DRV_KMODS += amd_iommu
+DRV_KMODS += dr
+DRV_KMODS += ioat
+DRV_KMODS += fipe
+
+DRV_KMODS += cpudrv
+
+
+#
+# Platform Power Modules
+#
+DRV_KMODS += ppm acpippm
+
+#
+# CPU Modules
+#
+CPU_KMODS += amd_opteron
+CPU_KMODS += generic_cpu
+CPU_KMODS += authenticamd
+CPU_KMODS += genuineintel
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS +=
+
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS +=
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS +=
+
+#
+# Streams Modules (/kernel/strmod):
+#
+STRMOD_KMODS +=
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS +=
+
+#
+# 'Misc' Modules (/kernel/misc):
+#
+MISC_KMODS += gfx_private pcie
+MISC_KMODS += acpidev
+MISC_KMODS += drmach_acpi
+
+#
+# 'Dacf' modules (/kernel/dacf)
+#
+DACF_KMODS += consconfig_dacf
+
+#
+# 'Mach' Modules (/kernel/mach):
+#
+MACH_KMODS += uppc
+
+#
+# CPR Misc Module.
+#
+MISC_KMODS += cpr
diff --git a/usr/src/uts/i86pc/Makefile.i86pc.shared b/usr/src/uts/i86pc/Makefile.i86pc.shared
deleted file mode 100644
index f8c63c2763..0000000000
--- a/usr/src/uts/i86pc/Makefile.i86pc.shared
+++ /dev/null
@@ -1,329 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# uts/i86pc/Makefile.i86pc
-#
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-#
-#
-# This makefile contains the common definitions for the i86pc unix
-# and all i86pc implementation architecture dependent modules.
-#
-
-#
-# Machine type (implementation architecture):
-#
-PLATFORM = i86pc
-
-#
-# uname -m value
-#
-UNAME_M = $(PLATFORM)
-
-#
-# Definitions for the platform-specific /platform directories.
-#
-# IMPLEMENTATIONS is used to designate i86pc machines which have
-# platform specific modules. All code specific to a given implementation
-# resides in the appropriately named subdirectory. This requires
-# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS,
-# USR_PLAT_DIRS, etc.
-#
-IMPLEMENTATIONS = i86hvm
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
-GENLIB_DIR = $(UTSBASE)/intel/genunix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
-GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
-
-LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
-LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
-
-DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
-DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
-
-SYM_MOD = $(OBJS_DIR)/unix.sym
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln
-GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSTREE)/$(PLATFORM)/Makefile.files
-include $(UTSTREE)/intel/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
-ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
-
-#
-# x86 or amd64 inline templates
-#
-INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \
- $(UTSBASE)/$(PLATFORM)/ml/ia32.il
-INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \
- $(UTSBASE)/$(PLATFORM)/ml/amd64.il
-INLINES += $(INLINES_$(CLASS))
-
-#
-# kernel-specific optimizations; override default in Makefile.master
-#
-
-CFLAGS_XARCH_32 = $(i386_CFLAGS)
-CFLAGS_XARCH_64 = $(amd64_CFLAGS)
-CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
-
-COPTFLAG_32 = $(COPTFLAG)
-COPTFLAG_64 = $(COPTFLAG64)
-COPTIMIZE = $(COPTFLAG_$(CLASS))
-
-CFLAGS = $(CFLAGS_XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CFLAGS_uts)
-CFLAGS += -xstrconst
-
-ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
-ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
-ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
-
-ASFLAGS += $(ASFLAGS_XARCH)
-
-AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
-
-#
-# The following must be defined for all implementations:
-#
-# MAPFILE: ld mapfile for the build of kernel/unix.
-# MODSTUBS: Module stubs source file.
-# GENASSYM_SRC: genassym.c
-#
-MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile
-MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
-GENASSYM_SRC = $(UTSBASE)/$(PLATFORM)/ml/genassym.c
-OFFSETS_SRC = $(UTSBASE)/$(PLATFORM)/ml/offsets.in
-PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in
-PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in
-PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS))
-KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP
-
-#
-# Software workarounds for hardware "features"
-#
-
-include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options effect which
-# file is used to optimize the build if these flags are changed.
-#
-# XXX: The above could possibly be done for more flags and files, but
-# is left as an experiment to the interested reader. Be forewarned,
-# that excessive use could lead to maintenance difficulties.
-#
-DEBUG_DEFS_OBJ32 =
-DEBUG_DEFS_DBG32 = -DDEBUG
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ32 = $(POUND_SIGN)
-DEBUG_COND_DBG32 =
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE
-$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
-$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
-$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
- $(OPTION_DEFS)
-GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \
- -_gcc=-fno-eliminate-unused-debug-symbols \
- -_gcc=-fno-eliminate-unused-debug-types
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# the base kernel but should soon become kmods.
-#
-# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever
-# made into a module. If it is made MT safe before being made
-# into a module, it should be added to this list. It was in
-# this list pre ON-4.0.
-#
-#
-MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Machine Specific Driver Modules (/kernel/drv)
-# DRV_KMODS are built both 32-bit and 64-bit
-# DRV_KMODS_32 are built only 32-bit
-# DRV_KMODS_64 are built only 64-bit
-#
-DRV_KMODS += rootnex
-DRV_KMODS += isa
-DRV_KMODS += pcplusmp
-DRV_KMODS += apix
-DRV_KMODS += cpc
-DRV_KMODS += pci
-DRV_KMODS += npe
-DRV_KMODS += pci-ide
-DRV_KMODS += xsvc
-DRV_KMODS += tzmon
-DRV_KMODS += acpi_drv
-DRV_KMODS += acpinex
-DRV_KMODS += amd_iommu
-DRV_KMODS += dr
-DRV_KMODS += ioat
-DRV_KMODS += fipe
-
-DRV_KMODS += cpudrv
-
-
-#
-# Platform Power Modules
-#
-DRV_KMODS += ppm acpippm
-
-#
-# CPU Modules
-#
-CPU_KMODS += amd_opteron
-CPU_KMODS += generic_cpu
-CPU_KMODS += authenticamd
-CPU_KMODS += genuineintel
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS +=
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS +=
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS +=
-
-#
-# Streams Modules (/kernel/strmod):
-#
-STRMOD_KMODS +=
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS +=
-
-#
-# 'Misc' Modules (/kernel/misc):
-#
-MISC_KMODS += gfx_private pcie
-MISC_KMODS += acpidev
-MISC_KMODS += drmach_acpi
-
-#
-# 'Dacf' modules (/kernel/dacf)
-#
-DACF_KMODS += consconfig_dacf
-
-#
-# 'Mach' Modules (/kernel/mach):
-#
-MACH_KMODS += uppc
-
-#
-# CPR Misc Module.
-#
-MISC_KMODS += cpr
diff --git a/usr/src/uts/i86pc/Makefile.targ b/usr/src/uts/i86pc/Makefile.targ
index 3e889bbbcc..e82166c1ba 100644
--- a/usr/src/uts/i86pc/Makefile.targ
+++ b/usr/src/uts/i86pc/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,12 +19,26 @@
#
# CDDL HEADER END
#
+#
+# uts/i86pc/Makefile.targ
+#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the i86pc "implementation architecture".
+#
+
+#
+# Targets for all implementations:
#
+include $(UTSBASE)/Makefile.targ
-UTSTREE=$(UTSBASE)
+#
+# Target set for i86pc (order is not important, as it is with the
+# isomorphic Makefile.files set).
+#
+include $(UTSBASE)/i86pc/Makefile.rules
+include $(UTSBASE)/intel/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
-include $(UTSBASE)/i86pc/Makefile.targ.shared
diff --git a/usr/src/uts/i86pc/Makefile.targ.shared b/usr/src/uts/i86pc/Makefile.targ.shared
deleted file mode 100644
index 4ffd2669d6..0000000000
--- a/usr/src/uts/i86pc/Makefile.targ.shared
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/i86pc/Makefile.targ
-#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the i86pc "implementation architecture".
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for i86pc (order is not important, as it is with the
-# isomorphic Makefile.files set).
-#
-include $(UTSTREE)/i86pc/Makefile.rules
-include $(UTSTREE)/intel/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules
-
diff --git a/usr/src/uts/i86xpv/Makefile.i86xpv b/usr/src/uts/i86xpv/Makefile.i86xpv
index 04a37c2d10..b26dde3710 100644
--- a/usr/src/uts/i86xpv/Makefile.i86xpv
+++ b/usr/src/uts/i86xpv/Makefile.i86xpv
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -19,12 +20,301 @@
#
#
-# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+# uts/i86xpv/Makefile.i86xpv
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+#
+
+#
+# This makefile contains the common definitions for the i86xpv unix
+# and all i86xpv implementation architecture dependent modules.
+#
+
+#
+# Machine type (implementation architecture):
+#
+PLATFORM = i86xpv
+
+#
+# uname -m value
+#
+UNAME_M = i86pc
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
+GENLIB_DIR = $(UTSBASE)/intel/genunix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
+GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
+
+DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
+DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
+
+SYM_MOD = $(OBJS_DIR)/unix.sym
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln
+GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln
+
+LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
+LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/intel/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
+#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
+
#
-# ident "%Z%%M% %I% %E% SMI"
+# Define supported builds
#
+DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
+ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
-UTSTREE=$(UTSBASE)
+#
+# x86 or amd64 inline templates
+#
+INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \
+ $(UTSBASE)/$(PLATFORM)/ml/ia32.il
+INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \
+ $(UTSBASE)/$(PLATFORM)/ml/amd64.il
+INLINES += $(INLINES_$(CLASS))
+
+#
+# kernel-specific optimizations; override default in Makefile.master
+#
+
+CFLAGS_XARCH_32 = $(i386_CFLAGS)
+CFLAGS_XARCH_64 = $(amd64_CFLAGS)
+CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
+
+COPTFLAG_32 = $(COPTFLAG)
+COPTFLAG_64 = $(COPTFLAG64)
+COPTIMIZE = $(COPTFLAG_$(CLASS))
+
+CFLAGS = $(CFLAGS_XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CFLAGS_uts)
+
+ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
+ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
+ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
+
+ASFLAGS += $(ASFLAGS_XARCH)
+
+AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
+
+#
+# The following must be defined for all implementations:
+#
+# MAPFILE: ld mapfile for the build of kernel/unix.
+# MODSTUBS: Module stubs source file.
+# GENASSYM_SRC: genassym.c
+
+MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile
+MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
+GENASSYM_SRC = $(UTSBASE)/i86pc/ml/genassym.c
+OFFSETS_SRC = $(UTSBASE)/i86pc/ml/offsets.in
-include $(UTSBASE)/i86xpv/Makefile.i86xpv.shared
+#PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in
+PLATFORM_OFFSETS_32 = $(UTSBASE)/i86pc/ml/mach_offsets.in
+PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in
+PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS))
+KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D__$(PLATFORM) -D__xpv -D_MACHDEP
+
+#
+# Software workarounds for hardware "features"
+#
+
+include $(UTSBASE)/i86pc/Makefile.workarounds
+
+#
+# Debugging level
+#
+# Special knowledge of which special debugging options effect which
+# file is used to optimize the build if these flags are changed.
+#
+# XXX: The above could possibly be done for more flags and files, but
+# is left as an experiment to the interested reader. Be forewarned,
+# that excessive use could lead to maintenance difficulties.
+#
+DEBUG_DEFS_OBJ32 =
+DEBUG_DEFS_DBG32 = -DDEBUG
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
+
+DEBUG_COND_OBJ32 = $(POUND_SIGN)
+DEBUG_COND_DBG32 =
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
+
+$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE
+$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
+$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
+$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)hyperevent.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_DEBUG_OBJ)evtchn.o := DEBUG_DEFS += -DTRAPTRACE
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
+ $(OPTION_DEFS)
+GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \
+ -_gcc=-fno-eliminate-unused-debug-symbols \
+ -_gcc=-fno-eliminate-unused-debug-types
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
+#
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# the base kernel but should soon become kmods.
+#
+# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever
+# made into a module. If it is made MT safe before being made
+# into a module, it should be added to this list. It was in
+# this list pre ON-4.0.
+#
+#
+MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Machine Specific Driver Modules (/kernel/drv):
+# DRV_KMODS are built both 32-bit and 64-bit
+# DRV_KMODS_32 are built only 32-bit
+# DRV_KMODS_64 are built only 64-bit
+#
+
+DRV_KMODS += rootnex
+DRV_KMODS += ioat
+DRV_KMODS += isa
+DRV_KMODS += pci
+DRV_KMODS += pit_beep
+DRV_KMODS += npe
+DRV_KMODS += pci-ide
+DRV_KMODS += xsvc
+DRV_KMODS += xenbus
+DRV_KMODS += xencons
+DRV_KMODS += xpvd
+DRV_KMODS += xnbe
+DRV_KMODS += xnbo
+DRV_KMODS += xnbu
+DRV_KMODS += xnf
+DRV_KMODS += xdb
+DRV_KMODS += xdf
+DRV_KMODS += privcmd
+DRV_KMODS += domcaps
+DRV_KMODS += evtchn
+DRV_KMODS += balloon
+DRV_KMODS += xpvtap
+DRV_KMODS += xdt
+
+#
+# CPU Modules
+#
+CPU_KMODS += generic_cpu
+CPU_KMODS += amd_opteron
+CPU_KMODS += genuineintel
+CPU_KMODS += authenticamd
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS +=
+
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS +=
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS +=
+
+#
+# Streams Modules (/kernel/strmod):
+#
+STRMOD_KMODS +=
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS +=
+
+#
+# 'Misc' Modules (/kernel/misc):
+#
+MISC_KMODS += xpv_autoconfig gfx_private xnb
+
+# 'Dacf' modules (/kernel/dacf)
+#
+DACF_KMODS += consconfig_dacf
+
+#
+# 'Mach' Modules (/kernel/mach):
+#
+MACH_KMODS += xpv_psm xpv_uppc
+
+#
+# 'TOD' modules (/platform/.../kernel/tod):
+#
+TOD_KMODS += xpvtod
diff --git a/usr/src/uts/i86xpv/Makefile.i86xpv.shared b/usr/src/uts/i86xpv/Makefile.i86xpv.shared
deleted file mode 100644
index 83d3991147..0000000000
--- a/usr/src/uts/i86xpv/Makefile.i86xpv.shared
+++ /dev/null
@@ -1,320 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# uts/i86xpv/Makefile.i86xpv.shared
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-#
-
-#
-# This makefile contains the common definitions for the i86xpv unix
-# and all i86xpv implementation architecture dependent modules.
-#
-
-#
-# Machine type (implementation architecture):
-#
-PLATFORM = i86xpv
-
-#
-# uname -m value
-#
-UNAME_M = i86pc
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
-GENLIB_DIR = $(UTSBASE)/intel/genunix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
-GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
-
-DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
-DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
-
-SYM_MOD = $(OBJS_DIR)/unix.sym
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln
-GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln
-
-LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
-LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSTREE)/$(PLATFORM)/Makefile.files
-include $(UTSTREE)/intel/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
-ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
-
-#
-# x86 or amd64 inline templates
-#
-INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \
- $(UTSBASE)/$(PLATFORM)/ml/ia32.il
-INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \
- $(UTSBASE)/$(PLATFORM)/ml/amd64.il
-INLINES += $(INLINES_$(CLASS))
-
-#
-# kernel-specific optimizations; override default in Makefile.master
-#
-
-CFLAGS_XARCH_32 = $(i386_CFLAGS)
-CFLAGS_XARCH_64 = $(amd64_CFLAGS)
-CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
-
-COPTFLAG_32 = $(COPTFLAG)
-COPTFLAG_64 = $(COPTFLAG64)
-COPTIMIZE = $(COPTFLAG_$(CLASS))
-
-CFLAGS = $(CFLAGS_XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CFLAGS_uts)
-
-ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
-ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
-ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
-
-ASFLAGS += $(ASFLAGS_XARCH)
-
-AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
-
-#
-# The following must be defined for all implementations:
-#
-# MAPFILE: ld mapfile for the build of kernel/unix.
-# MODSTUBS: Module stubs source file.
-# GENASSYM_SRC: genassym.c
-
-MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile
-MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
-GENASSYM_SRC = $(UTSBASE)/i86pc/ml/genassym.c
-OFFSETS_SRC = $(UTSBASE)/i86pc/ml/offsets.in
-
-#PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in
-PLATFORM_OFFSETS_32 = $(UTSBASE)/i86pc/ml/mach_offsets.in
-PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in
-PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS))
-KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D__$(PLATFORM) -D__xpv -D_MACHDEP
-
-#
-# Software workarounds for hardware "features"
-#
-
-include $(UTSBASE)/i86pc/Makefile.workarounds
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options effect which
-# file is used to optimize the build if these flags are changed.
-#
-# XXX: The above could possibly be done for more flags and files, but
-# is left as an experiment to the interested reader. Be forewarned,
-# that excessive use could lead to maintenance difficulties.
-#
-DEBUG_DEFS_OBJ32 =
-DEBUG_DEFS_DBG32 = -DDEBUG
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ32 = $(POUND_SIGN)
-DEBUG_COND_DBG32 =
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE
-$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
-$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE
-$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)hyperevent.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_DEBUG_OBJ)evtchn.o := DEBUG_DEFS += -DTRAPTRACE
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
- $(OPTION_DEFS)
-GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \
- -_gcc=-fno-eliminate-unused-debug-symbols \
- -_gcc=-fno-eliminate-unused-debug-types
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# the base kernel but should soon become kmods.
-#
-# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever
-# made into a module. If it is made MT safe before being made
-# into a module, it should be added to this list. It was in
-# this list pre ON-4.0.
-#
-#
-MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Machine Specific Driver Modules (/kernel/drv):
-# DRV_KMODS are built both 32-bit and 64-bit
-# DRV_KMODS_32 are built only 32-bit
-# DRV_KMODS_64 are built only 64-bit
-#
-
-DRV_KMODS += rootnex
-DRV_KMODS += ioat
-DRV_KMODS += isa
-DRV_KMODS += pci
-DRV_KMODS += pit_beep
-DRV_KMODS += npe
-DRV_KMODS += pci-ide
-DRV_KMODS += xsvc
-DRV_KMODS += xenbus
-DRV_KMODS += xencons
-DRV_KMODS += xpvd
-DRV_KMODS += xnbe
-DRV_KMODS += xnbo
-DRV_KMODS += xnbu
-DRV_KMODS += xnf
-DRV_KMODS += xdb
-DRV_KMODS += xdf
-DRV_KMODS += privcmd
-DRV_KMODS += domcaps
-DRV_KMODS += evtchn
-DRV_KMODS += balloon
-DRV_KMODS += xpvtap
-DRV_KMODS += xdt
-
-#
-# CPU Modules
-#
-CPU_KMODS += generic_cpu
-CPU_KMODS += amd_opteron
-CPU_KMODS += genuineintel
-CPU_KMODS += authenticamd
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS +=
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS +=
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS +=
-
-#
-# Streams Modules (/kernel/strmod):
-#
-STRMOD_KMODS +=
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS +=
-
-#
-# 'Misc' Modules (/kernel/misc):
-#
-MISC_KMODS += xpv_autoconfig gfx_private xnb
-
-# 'Dacf' modules (/kernel/dacf)
-#
-DACF_KMODS += consconfig_dacf
-
-#
-# 'Mach' Modules (/kernel/mach):
-#
-MACH_KMODS += xpv_psm xpv_uppc
-
-#
-# 'TOD' modules (/platform/.../kernel/tod):
-#
-TOD_KMODS += xpvtod
diff --git a/usr/src/uts/i86xpv/Makefile.targ b/usr/src/uts/i86xpv/Makefile.targ
index 57dfd94b6d..09ac6b0616 100644
--- a/usr/src/uts/i86xpv/Makefile.targ
+++ b/usr/src/uts/i86xpv/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -17,12 +18,25 @@
#
# CDDL HEADER END
#
+
+#
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the i86xpv "implementation architecture".
+#
+
+#
+# Targets for all implementations:
#
+include $(UTSBASE)/Makefile.targ
-UTSTREE=$(UTSBASE)
+#
+# Target set for i86xpv (order is not important, as it is with the
+# isomorphic Makefile.files set).
+#
+include $(UTSBASE)/i86xpv/Makefile.rules
+include $(UTSBASE)/intel/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
-include $(UTSBASE)/i86xpv/Makefile.targ.shared
diff --git a/usr/src/uts/i86xpv/Makefile.targ.shared b/usr/src/uts/i86xpv/Makefile.targ.shared
deleted file mode 100644
index 133f6abff0..0000000000
--- a/usr/src/uts/i86xpv/Makefile.targ.shared
+++ /dev/null
@@ -1,44 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the i86xpv "implementation architecture".
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for i86xpv (order is not important, as it is with the
-# isomorphic Makefile.files set).
-#
-include $(UTSTREE)/i86xpv/Makefile.rules
-include $(UTSTREE)/intel/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules
-
diff --git a/usr/src/uts/intel/Makefile.intel b/usr/src/uts/intel/Makefile.intel
index 1f515c8086..01574125b2 100644
--- a/usr/src/uts/intel/Makefile.intel
+++ b/usr/src/uts/intel/Makefile.intel
@@ -1,4 +1,3 @@
-#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -19,14 +18,700 @@
# CDDL HEADER END
#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012 Nexenta Systems, Inc. All rights reserved.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+
+#
+# This makefile contains the common definitions for all intel
+# implementation architecture independent modules.
+#
+
+#
+# Machine type (implementation architecture):
+#
+PLATFORM = i86pc
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o.
+# Note that unix.o must currently be selected from among the possible
+# "implementation architectures". Note further, that unix.o is only
+# used as an optional error check for undefines so (theoretically)
+# any "implementation architectures" could be used. We choose i86pc
+# because it is the reference port.
+#
+UNIX_DIR = $(UTSBASE)/i86pc/unix
+GENLIB_DIR = $(UTSBASE)/intel/genunix
+IPDRV_DIR = $(UTSBASE)/intel/ip
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+LINT_LIB = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln
+GEN_LINT_LIB = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/intel/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
#
-# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# genunix but which might someday become kmods. This must be
+# defined before we include Makefile.uts, or else genunix's build
+# won't be as parallel as we might like.
#
+NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
+
+#
+# The following must be defined for all implementations:
+#
+MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
+
+#
+# Define supported builds
+#
+DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
+ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
+
+#
+# x86 or amd64 inline templates
+#
+INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il
+INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il
+INLINES += $(INLINES_$(CLASS))
+
+#
+# kernel-specific optimizations; override default in Makefile.master
+#
+
+CFLAGS_XARCH_32 = $(i386_CFLAGS)
+CFLAGS_XARCH_64 = $(amd64_CFLAGS)
+CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
+
+COPTFLAG_32 = $(COPTFLAG)
+COPTFLAG_64 = $(COPTFLAG64)
+COPTIMIZE = $(COPTFLAG_$(CLASS))
-UTSTREE=$(UTSBASE)
+CFLAGS = $(CFLAGS_XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CFLAGS_uts)
+CFLAGS += -xstrconst
-include $(UTSBASE)/intel/Makefile.intel.shared
+ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
+ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
+ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
+
+ASFLAGS += $(ASFLAGS_XARCH)
+
+#
+# Define the base directory for installation.
+#
+BASE_INS_DIR = $(ROOT)
+
+#
+# Debugging level
+#
+# Special knowledge of which special debugging options affect which
+# file is used to optimize the build if these flags are changed.
+#
+DEBUG_DEFS_OBJ32 =
+DEBUG_DEFS_DBG32 = -DDEBUG
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
+
+DEBUG_COND_OBJ32 = $(POUND_SIGN)
+DEBUG_COND_DBG32 =
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
+
+$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE
+$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(DEBUG_DEFS) $(OPTION_DEFS)
+
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Common Drivers (usually pseudo drivers) (/kernel/drv)
+# DRV_KMODS are built both 32-bit and 64-bit
+# DRV_KMODS_32 are built only 32-bit
+# DRV_KMODS_64 are built only 64-bit
+#
+DRV_KMODS += aac
+DRV_KMODS += aggr
+DRV_KMODS += ahci
+DRV_KMODS += amd64_gart
+DRV_KMODS += amr
+DRV_KMODS += agpgart
+DRV_KMODS += srn
+DRV_KMODS += agptarget
+DRV_KMODS += arn
+DRV_KMODS += arp
+DRV_KMODS += asy
+DRV_KMODS += ata
+DRV_KMODS += ath
+DRV_KMODS += atu
+DRV_KMODS += audio
+DRV_KMODS += audio1575
+DRV_KMODS += audio810
+DRV_KMODS += audiocmi
+DRV_KMODS += audiocmihd
+DRV_KMODS += audioemu10k
+DRV_KMODS += audioens
+DRV_KMODS += audiohd
+DRV_KMODS += audioixp
+DRV_KMODS += audiols
+DRV_KMODS += audiop16x
+DRV_KMODS += audiopci
+DRV_KMODS += audiosolo
+DRV_KMODS += audiots
+DRV_KMODS += audiovia823x
+DRV_KMODS_32 += audiovia97
+DRV_KMODS += bl
+DRV_KMODS += blkdev
+DRV_KMODS += bge
+DRV_KMODS += bofi
+DRV_KMODS += bpf
+DRV_KMODS += bridge
+DRV_KMODS += bscbus
+DRV_KMODS += bscv
+DRV_KMODS += chxge
+DRV_KMODS += cxgbe
+DRV_KMODS += ntxn
+DRV_KMODS += myri10ge
+DRV_KMODS += clone
+DRV_KMODS += cmdk
+DRV_KMODS += cn
+DRV_KMODS += conskbd
+DRV_KMODS += consms
+DRV_KMODS += cpqary3
+DRV_KMODS += cpuid
+DRV_KMODS += cpunex
+DRV_KMODS += crypto
+DRV_KMODS += cryptoadm
+DRV_KMODS += dca
+DRV_KMODS += devinfo
+DRV_KMODS += dld
+DRV_KMODS += dlpistub
+DRV_KMODS_32 += dnet
+DRV_KMODS += dump
+DRV_KMODS += ecpp
+DRV_KMODS += emlxs
+DRV_KMODS += fd
+DRV_KMODS += fdc
+DRV_KMODS += fm
+DRV_KMODS += fssnap
+DRV_KMODS += hxge
+DRV_KMODS += i8042
+DRV_KMODS += i915
+DRV_KMODS += icmp
+DRV_KMODS += icmp6
+DRV_KMODS += intel_nb5000
+DRV_KMODS += intel_nhm
+DRV_KMODS += ip
+DRV_KMODS += ip6
+DRV_KMODS += ipd
+DRV_KMODS += ipf
+DRV_KMODS += ipnet
+DRV_KMODS += ippctl
+DRV_KMODS += ipsecah
+DRV_KMODS += ipsecesp
+DRV_KMODS += ipw
+DRV_KMODS += iwh
+DRV_KMODS += iwi
+DRV_KMODS += iwk
+DRV_KMODS += iwp
+DRV_KMODS += iwscn
+DRV_KMODS += kb8042
+DRV_KMODS += keysock
+DRV_KMODS += kssl
+DRV_KMODS += kstat
+DRV_KMODS += ksyms
+DRV_KMODS += kmdb
+DRV_KMODS += llc1
+DRV_KMODS += lofi
+DRV_KMODS += log
+DRV_KMODS += logindmux
+DRV_KMODS += mega_sas
+DRV_KMODS += mc-amd
+DRV_KMODS += mm
+DRV_KMODS += mouse8042
+DRV_KMODS += mpt_sas
+DRV_KMODS += mr_sas
+DRV_KMODS += mwl
+DRV_KMODS += nca
+DRV_KMODS += nsmb
+DRV_KMODS += nulldriver
+DRV_KMODS += nv_sata
+DRV_KMODS += nxge
+DRV_KMODS += oce
+DRV_KMODS += openeepr
+DRV_KMODS += pci_pci
+DRV_KMODS += pcic
+DRV_KMODS += pcieb
+DRV_KMODS += physmem
+DRV_KMODS += pit_beep
+DRV_KMODS += pm
+DRV_KMODS += poll
+DRV_KMODS += pool
+DRV_KMODS += power
+DRV_KMODS += pseudo
+DRV_KMODS += ptc
+DRV_KMODS += ptm
+DRV_KMODS += pts
+DRV_KMODS += ptsl
+DRV_KMODS += qlge
+DRV_KMODS += radeon
+DRV_KMODS += ral
+DRV_KMODS += ramdisk
+DRV_KMODS += random
+DRV_KMODS += rds
+DRV_KMODS += rdsv3
+DRV_KMODS += rpcib
+DRV_KMODS += rsm
+DRV_KMODS += rts
+DRV_KMODS += rtw
+DRV_KMODS += rum
+DRV_KMODS += rwd
+DRV_KMODS += rwn
+DRV_KMODS += sad
+DRV_KMODS += sd
+DRV_KMODS += sdhost
+DRV_KMODS += sgen
+DRV_KMODS += si3124
+DRV_KMODS += smbios
+DRV_KMODS += softmac
+DRV_KMODS += spdsock
+DRV_KMODS += smbsrv
+DRV_KMODS += smp
+DRV_KMODS += sppp
+DRV_KMODS += sppptun
+DRV_KMODS += srpt
+DRV_KMODS += st
+DRV_KMODS += sy
+DRV_KMODS += sysevent
+DRV_KMODS += sysmsg
+DRV_KMODS += tcp
+DRV_KMODS += tcp6
+DRV_KMODS += tl
+DRV_KMODS += tnf
+DRV_KMODS += tpm
+DRV_KMODS += trill
+DRV_KMODS += udp
+DRV_KMODS += udp6
+DRV_KMODS += ucode
+DRV_KMODS += ural
+DRV_KMODS += uath
+DRV_KMODS += urtw
+DRV_KMODS += vgatext
+DRV_KMODS += heci
+DRV_KMODS += vnic
+DRV_KMODS += vscan
+DRV_KMODS += wc
+DRV_KMODS += winlock
+DRV_KMODS += wpi
+DRV_KMODS += xge
+DRV_KMODS += yge
+DRV_KMODS += zcons
+DRV_KMODS += zyd
+DRV_KMODS += simnet
+DRV_KMODS += stmf
+DRV_KMODS += stmf_sbd
+DRV_KMODS += fct
+DRV_KMODS += fcoe
+DRV_KMODS += fcoet
+DRV_KMODS += fcoei
+DRV_KMODS += qlt
+DRV_KMODS += iscsit
+DRV_KMODS += pppt
+DRV_KMODS += ncall nsctl sdbc nskern sv
+DRV_KMODS += ii rdc rdcsrv rdcstub
+DRV_KMODS += iptun
+
+#
+# Common code drivers
+#
+
+DRV_KMODS += afe
+DRV_KMODS += atge
+DRV_KMODS += bfe
+DRV_KMODS += dmfe
+DRV_KMODS += e1000g
+DRV_KMODS += efe
+DRV_KMODS += elxl
+DRV_KMODS += hme
+DRV_KMODS += mxfe
+DRV_KMODS += nge
+DRV_KMODS += pcn
+DRV_KMODS += rge
+DRV_KMODS += rtls
+DRV_KMODS += sfe
+DRV_KMODS += amd8111s
+DRV_KMODS += igb
+DRV_KMODS += ipmi
+DRV_KMODS += iprb
+DRV_KMODS += ixgbe
+DRV_KMODS += vr
+
+#
+# Virtio drivers
+#
+
+# Virtio core
+DRV_KMODS += virtio
+
+# Virtio block driver
+DRV_KMODS += vioblk
+
+#
+# DTrace and DTrace Providers
+#
+DRV_KMODS += dtrace
+DRV_KMODS += fbt
+DRV_KMODS += lockstat
+DRV_KMODS += profile
+DRV_KMODS += sdt
+DRV_KMODS += systrace
+DRV_KMODS += fasttrap
+DRV_KMODS += dcpc
+
+#
+# I/O framework test drivers
+#
+DRV_KMODS += pshot
+DRV_KMODS += gen_drv
+DRV_KMODS += tvhci tphci tclient
+DRV_KMODS += emul64
+
+#
+# Machine Specific Driver Modules (/kernel/drv):
+#
+DRV_KMODS += options
+DRV_KMODS += scsi_vhci
+DRV_KMODS += pmcs
+DRV_KMODS += pmcs8001fw
+DRV_KMODS += arcmsr
+DRV_KMODS += fcp
+DRV_KMODS += fcip
+DRV_KMODS += fcsm
+DRV_KMODS += fp
+DRV_KMODS += qlc
+DRV_KMODS += iscsi
+
+#
+# PCMCIA specific module(s)
+#
+DRV_KMODS += pcs
+MISC_KMODS += cardbus
+
+#
+# SCSI Enclosure Services driver
+#
+DRV_KMODS += ses
+
+#
+# USB specific modules
+#
+DRV_KMODS += hid
+DRV_KMODS += hwarc hwahc
+DRV_KMODS += hubd
+DRV_KMODS += uhci
+DRV_KMODS += ehci
+DRV_KMODS += ohci
+DRV_KMODS += usb_mid
+DRV_KMODS += usb_ia
+DRV_KMODS += scsa2usb
+DRV_KMODS += usbprn
+DRV_KMODS += ugen
+DRV_KMODS += usbser
+DRV_KMODS += usbsacm
+DRV_KMODS += usbsksp
+DRV_KMODS += usbsprl
+DRV_KMODS += usb_ac
+DRV_KMODS += usb_as
+DRV_KMODS += usbskel
+DRV_KMODS += usbvc
+DRV_KMODS += usbftdi
+DRV_KMODS += wusb_df
+DRV_KMODS += wusb_ca
+DRV_KMODS += usbecm
+
+#
+# 1394 modules
+#
+MISC_KMODS += s1394 sbp2
+DRV_KMODS += hci1394 scsa1394
+DRV_KMODS += av1394
+DRV_KMODS += dcam1394
+
+#
+# InfiniBand pseudo drivers
+#
+DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
+DRV_KMODS += sol_umad
+
+#
+# LVM modules
+#
+DRV_KMODS += md
+MISC_KMODS += md_stripe md_hotspares md_mirror md_raid md_trans md_notify
+MISC_KMODS += md_sp
+
+#
+# Brand modules
+#
+BRAND_KMODS += sn1_brand s10_brand
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS += elfexec intpexec shbinexec javaexec
+
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS += IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL SDC
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS += autofs cachefs ctfs dcfs dev devfs fdfs fifofs hsfs lofs
+FS_KMODS += mntfs namefs nfs objfs zfs zut
+FS_KMODS += pcfs procfs sockfs specfs tmpfs udfs ufs sharefs
+FS_KMODS += smbfs
+
+#
+# Streams Modules (/kernel/strmod):
+#
+STRMOD_KMODS += bufmod connld dedump ldterm pckt pfmod pipemod
+STRMOD_KMODS += ptem redirmod rpcmod rlmod telmod timod
+STRMOD_KMODS += spppasyn spppcomp
+STRMOD_KMODS += tirdwr ttcompat
+STRMOD_KMODS += usbkbm
+STRMOD_KMODS += usbms
+STRMOD_KMODS += usbwcm
+STRMOD_KMODS += usb_ah
+STRMOD_KMODS += drcompat
+STRMOD_KMODS += cryptmod
+STRMOD_KMODS += vuid2ps2
+STRMOD_KMODS += vuid3ps2
+STRMOD_KMODS += vuidm3p
+STRMOD_KMODS += vuidm4p
+STRMOD_KMODS += vuidm5p
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS += c2audit
+SYS_KMODS += doorfs
+SYS_KMODS += exacctsys
+SYS_KMODS += inst_sync
+SYS_KMODS += kaio
+SYS_KMODS += msgsys
+SYS_KMODS += pipe
+SYS_KMODS += portfs
+SYS_KMODS += pset
+SYS_KMODS += semsys
+SYS_KMODS += shmsys
+SYS_KMODS += sysacct
+SYS_KMODS += acctctl
+
+#
+# 'Misc' Modules (/kernel/misc)
+# MISC_KMODS are built both 32-bit and 64-bit
+# MISC_KMODS_32 are built only 32-bit
+# MISC_KMODS_64 are built only 64-bit
+#
+MISC_KMODS += ac97
+MISC_KMODS += acpica
+MISC_KMODS += agpmaster
+MISC_KMODS += bignum
+MISC_KMODS += bootdev
+MISC_KMODS += busra
+MISC_KMODS += cmlb
+MISC_KMODS += consconfig
+MISC_KMODS += ctf
+MISC_KMODS += dadk
+MISC_KMODS += dcopy
+MISC_KMODS += dls
+MISC_KMODS += drm
+MISC_KMODS += fssnap_if
+MISC_KMODS += gda
+MISC_KMODS += gld
+MISC_KMODS += hidparser
+MISC_KMODS += hook
+MISC_KMODS += hpcsvc
+MISC_KMODS += ibcm
+MISC_KMODS += ibdm
+MISC_KMODS += ibdma
+MISC_KMODS += ibmf
+MISC_KMODS += ibtl
+MISC_KMODS += idm
+MISC_KMODS += idmap
+MISC_KMODS += iommulib
+MISC_KMODS += ipc
+MISC_KMODS += kbtrans
+MISC_KMODS += kcf
+MISC_KMODS += kgssapi
+MISC_KMODS += kmech_dummy
+MISC_KMODS += kmech_krb5
+MISC_KMODS += ksocket
+MISC_KMODS += mac
+MISC_KMODS += mii
+MISC_KMODS += mwlfw
+MISC_KMODS += net80211
+MISC_KMODS += nfs_dlboot
+MISC_KMODS += nfssrv
+MISC_KMODS += neti
+MISC_KMODS += pci_autoconfig
+MISC_KMODS += pcicfg
+MISC_KMODS += pcihp
+MISC_KMODS += pcmcia
+MISC_KMODS += rpcsec
+MISC_KMODS += rpcsec_gss
+MISC_KMODS += rsmops
+MISC_KMODS += sata
+MISC_KMODS += scsi
+MISC_KMODS += sda
+MISC_KMODS += sol_ofs
+MISC_KMODS += spuni
+MISC_KMODS += strategy
+MISC_KMODS += strplumb
+MISC_KMODS += tem
+MISC_KMODS += tlimod
+MISC_KMODS += usba usba10 usbs49_fw
+MISC_KMODS += scsi_vhci_f_sym_hds
+MISC_KMODS += scsi_vhci_f_sym
+MISC_KMODS += scsi_vhci_f_tpgs
+MISC_KMODS += scsi_vhci_f_asym_sun
+MISC_KMODS += scsi_vhci_f_tape
+MISC_KMODS += scsi_vhci_f_tpgs_tape
+MISC_KMODS += fctl
+MISC_KMODS += emlxs_fw
+MISC_KMODS += qlc_fw_2200
+MISC_KMODS += qlc_fw_2300
+MISC_KMODS += qlc_fw_2400
+MISC_KMODS += qlc_fw_2500
+MISC_KMODS += qlc_fw_6322
+MISC_KMODS += qlc_fw_8100
+MISC_KMODS += hwa1480_fw
+MISC_KMODS += uathfw
+MISC_KMODS += uwba
+
+MISC_KMODS += klmmod klmops
+
+#
+# Software Cryptographic Providers (/kernel/crypto):
+#
+CRYPTO_KMODS += aes
+CRYPTO_KMODS += arcfour
+CRYPTO_KMODS += blowfish
+CRYPTO_KMODS += des
+CRYPTO_KMODS += ecc
+CRYPTO_KMODS += md4
+CRYPTO_KMODS += md5
+CRYPTO_KMODS += rsa
+CRYPTO_KMODS += sha1
+CRYPTO_KMODS += sha2
+CRYPTO_KMODS += swrand
+
+#
+# IP Policy Modules (/kernel/ipp)
+#
+IPP_KMODS += dlcosmk
+IPP_KMODS += flowacct
+IPP_KMODS += ipgpc
+IPP_KMODS += dscpmk
+IPP_KMODS += tokenmt
+IPP_KMODS += tswtclmt
+
+#
+# generic-unix module (/kernel/genunix):
+#
+GENUNIX_KMODS += genunix
+
+#
+# Modules eXcluded from the product:
+#
+
+#
+# 'Dacf' Modules (/kernel/dacf):
+#
+
+#
+# Performance Counter BackEnd modules (/usr/kernel/pcbe)
+#
+PCBE_KMODS += p123_pcbe p4_pcbe opteron_pcbe core_pcbe
+
+#
+# MAC-Type Plugin Modules (/kernel/mac)
+#
+MAC_KMODS += mac_6to4
+MAC_KMODS += mac_ether
+MAC_KMODS += mac_ipv4
+MAC_KMODS += mac_ipv6
+MAC_KMODS += mac_wifi
+MAC_KMODS += mac_ib
+
+#
+# socketmod (kernel/socketmod)
+#
+SOCKET_KMODS += sockpfp
+SOCKET_KMODS += socksctp
+SOCKET_KMODS += socksdp
+SOCKET_KMODS += sockrds
+SOCKET_KMODS += ksslf
+
+#
+# kiconv modules (/kernel/kiconv):
+#
+KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
+
+#
+# 'Dacf' Modules (/kernel/dacf):
+#
+DACF_KMODS += net_dacf
#
# Ensure that the variable member of the cpu_t (cpu_m) is defined
diff --git a/usr/src/uts/intel/Makefile.intel.shared b/usr/src/uts/intel/Makefile.intel.shared
deleted file mode 100644
index dcacab9221..0000000000
--- a/usr/src/uts/intel/Makefile.intel.shared
+++ /dev/null
@@ -1,714 +0,0 @@
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012 Nexenta Systems, Inc. All rights reserved.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-
-#
-# This makefile contains the common definitions for all intel
-# implementation architecture independent modules.
-#
-
-#
-# Machine type (implementation architecture):
-#
-PLATFORM = i86pc
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o.
-# Note that unix.o must currently be selected from among the possible
-# "implementation architectures". Note further, that unix.o is only
-# used as an optional error check for undefines so (theoretically)
-# any "implementation architectures" could be used. We choose i86pc
-# because it is the reference port.
-#
-UNIX_DIR = $(UTSBASE)/i86pc/unix
-GENLIB_DIR = $(UTSBASE)/intel/genunix
-IPDRV_DIR = $(UTSBASE)/intel/ip
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-LINT_LIB = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln
-GEN_LINT_LIB = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSTREE)/intel/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# genunix but which might someday become kmods. This must be
-# defined before we include Makefile.uts, or else genunix's build
-# won't be as parallel as we might like.
-#
-NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-#
-# The following must be defined for all implementations:
-#
-MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32)
-ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32)
-
-#
-# x86 or amd64 inline templates
-#
-INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il
-INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il
-INLINES += $(INLINES_$(CLASS))
-
-#
-# kernel-specific optimizations; override default in Makefile.master
-#
-
-CFLAGS_XARCH_32 = $(i386_CFLAGS)
-CFLAGS_XARCH_64 = $(amd64_CFLAGS)
-CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS))
-
-COPTFLAG_32 = $(COPTFLAG)
-COPTFLAG_64 = $(COPTFLAG64)
-COPTIMIZE = $(COPTFLAG_$(CLASS))
-
-CFLAGS = $(CFLAGS_XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CFLAGS_uts)
-CFLAGS += -xstrconst
-
-ASFLAGS_XARCH_32 = $(i386_ASFLAGS)
-ASFLAGS_XARCH_64 = $(amd64_ASFLAGS)
-ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS))
-
-ASFLAGS += $(ASFLAGS_XARCH)
-
-#
-# Define the base directory for installation.
-#
-BASE_INS_DIR = $(ROOT)
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options affect which
-# file is used to optimize the build if these flags are changed.
-#
-DEBUG_DEFS_OBJ32 =
-DEBUG_DEFS_DBG32 = -DDEBUG
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ32 = $(POUND_SIGN)
-DEBUG_COND_DBG32 =
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE
-$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(DEBUG_DEFS) $(OPTION_DEFS)
-
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Common Drivers (usually pseudo drivers) (/kernel/drv)
-# DRV_KMODS are built both 32-bit and 64-bit
-# DRV_KMODS_32 are built only 32-bit
-# DRV_KMODS_64 are built only 64-bit
-#
-DRV_KMODS += aac
-DRV_KMODS += aggr
-DRV_KMODS += ahci
-DRV_KMODS += amd64_gart
-DRV_KMODS += amr
-DRV_KMODS += agpgart
-DRV_KMODS += srn
-DRV_KMODS += agptarget
-DRV_KMODS += arn
-DRV_KMODS += arp
-DRV_KMODS += asy
-DRV_KMODS += ata
-DRV_KMODS += ath
-DRV_KMODS += atu
-DRV_KMODS += audio
-DRV_KMODS += audio1575
-DRV_KMODS += audio810
-DRV_KMODS += audiocmi
-DRV_KMODS += audiocmihd
-DRV_KMODS += audioemu10k
-DRV_KMODS += audioens
-DRV_KMODS += audiohd
-DRV_KMODS += audioixp
-DRV_KMODS += audiols
-DRV_KMODS += audiop16x
-DRV_KMODS += audiopci
-DRV_KMODS += audiosolo
-DRV_KMODS += audiots
-DRV_KMODS += audiovia823x
-DRV_KMODS_32 += audiovia97
-DRV_KMODS += bl
-DRV_KMODS += blkdev
-DRV_KMODS += bge
-DRV_KMODS += bofi
-DRV_KMODS += bpf
-DRV_KMODS += bridge
-DRV_KMODS += bscbus
-DRV_KMODS += bscv
-DRV_KMODS += chxge
-DRV_KMODS += cxgbe
-DRV_KMODS += ntxn
-DRV_KMODS += myri10ge
-DRV_KMODS += clone
-DRV_KMODS += cmdk
-DRV_KMODS += cn
-DRV_KMODS += conskbd
-DRV_KMODS += consms
-DRV_KMODS += cpqary3
-DRV_KMODS += cpuid
-DRV_KMODS += cpunex
-DRV_KMODS += crypto
-DRV_KMODS += cryptoadm
-DRV_KMODS += dca
-DRV_KMODS += devinfo
-DRV_KMODS += dld
-DRV_KMODS += dlpistub
-DRV_KMODS_32 += dnet
-DRV_KMODS += dump
-DRV_KMODS += ecpp
-DRV_KMODS += emlxs
-DRV_KMODS += fd
-DRV_KMODS += fdc
-DRV_KMODS += fm
-DRV_KMODS += fssnap
-DRV_KMODS += hxge
-DRV_KMODS += i8042
-DRV_KMODS += i915
-DRV_KMODS += icmp
-DRV_KMODS += icmp6
-DRV_KMODS += intel_nb5000
-DRV_KMODS += intel_nhm
-DRV_KMODS += ip
-DRV_KMODS += ip6
-DRV_KMODS += ipd
-DRV_KMODS += ipf
-DRV_KMODS += ipnet
-DRV_KMODS += ippctl
-DRV_KMODS += ipsecah
-DRV_KMODS += ipsecesp
-DRV_KMODS += ipw
-DRV_KMODS += iwh
-DRV_KMODS += iwi
-DRV_KMODS += iwk
-DRV_KMODS += iwp
-DRV_KMODS += iwscn
-DRV_KMODS += kb8042
-DRV_KMODS += keysock
-DRV_KMODS += kssl
-DRV_KMODS += kstat
-DRV_KMODS += ksyms
-DRV_KMODS += kmdb
-DRV_KMODS += llc1
-DRV_KMODS += lofi
-DRV_KMODS += log
-DRV_KMODS += logindmux
-DRV_KMODS += mega_sas
-DRV_KMODS += mc-amd
-DRV_KMODS += mm
-DRV_KMODS += mouse8042
-DRV_KMODS += mpt_sas
-DRV_KMODS += mr_sas
-DRV_KMODS += mwl
-DRV_KMODS += nca
-DRV_KMODS += nsmb
-DRV_KMODS += nulldriver
-DRV_KMODS += nv_sata
-DRV_KMODS += nxge
-DRV_KMODS += oce
-DRV_KMODS += openeepr
-DRV_KMODS += pci_pci
-DRV_KMODS += pcic
-DRV_KMODS += pcieb
-DRV_KMODS += physmem
-DRV_KMODS += pit_beep
-DRV_KMODS += pm
-DRV_KMODS += poll
-DRV_KMODS += pool
-DRV_KMODS += power
-DRV_KMODS += pseudo
-DRV_KMODS += ptc
-DRV_KMODS += ptm
-DRV_KMODS += pts
-DRV_KMODS += ptsl
-DRV_KMODS += qlge
-DRV_KMODS += radeon
-DRV_KMODS += ral
-DRV_KMODS += ramdisk
-DRV_KMODS += random
-DRV_KMODS += rds
-DRV_KMODS += rdsv3
-DRV_KMODS += rpcib
-DRV_KMODS += rsm
-DRV_KMODS += rts
-DRV_KMODS += rtw
-DRV_KMODS += rum
-DRV_KMODS += rwd
-DRV_KMODS += rwn
-DRV_KMODS += sad
-DRV_KMODS += sd
-DRV_KMODS += sdhost
-DRV_KMODS += sgen
-DRV_KMODS += si3124
-DRV_KMODS += smbios
-DRV_KMODS += softmac
-DRV_KMODS += spdsock
-DRV_KMODS += smbsrv
-DRV_KMODS += smp
-DRV_KMODS += sppp
-DRV_KMODS += sppptun
-DRV_KMODS += srpt
-DRV_KMODS += st
-DRV_KMODS += sy
-DRV_KMODS += sysevent
-DRV_KMODS += sysmsg
-DRV_KMODS += tcp
-DRV_KMODS += tcp6
-DRV_KMODS += tl
-DRV_KMODS += tnf
-DRV_KMODS += tpm
-DRV_KMODS += trill
-DRV_KMODS += udp
-DRV_KMODS += udp6
-DRV_KMODS += ucode
-DRV_KMODS += ural
-DRV_KMODS += uath
-DRV_KMODS += urtw
-DRV_KMODS += vgatext
-DRV_KMODS += heci
-DRV_KMODS += vnic
-DRV_KMODS += vscan
-DRV_KMODS += wc
-DRV_KMODS += winlock
-DRV_KMODS += wpi
-DRV_KMODS += xge
-DRV_KMODS += yge
-DRV_KMODS += zcons
-DRV_KMODS += zyd
-DRV_KMODS += simnet
-DRV_KMODS += stmf
-DRV_KMODS += stmf_sbd
-DRV_KMODS += fct
-DRV_KMODS += fcoe
-DRV_KMODS += fcoet
-DRV_KMODS += fcoei
-DRV_KMODS += qlt
-DRV_KMODS += iscsit
-DRV_KMODS += pppt
-DRV_KMODS += ncall nsctl sdbc nskern sv
-DRV_KMODS += ii rdc rdcsrv rdcstub
-DRV_KMODS += iptun
-
-#
-# Common code drivers
-#
-
-DRV_KMODS += afe
-DRV_KMODS += atge
-DRV_KMODS += bfe
-DRV_KMODS += dmfe
-DRV_KMODS += e1000g
-DRV_KMODS += efe
-DRV_KMODS += elxl
-DRV_KMODS += hme
-DRV_KMODS += mxfe
-DRV_KMODS += nge
-DRV_KMODS += pcn
-DRV_KMODS += rge
-DRV_KMODS += rtls
-DRV_KMODS += sfe
-DRV_KMODS += amd8111s
-DRV_KMODS += igb
-DRV_KMODS += ipmi
-DRV_KMODS += iprb
-DRV_KMODS += ixgbe
-DRV_KMODS += vr
-
-#
-# Virtio drivers
-#
-
-# Virtio core
-DRV_KMODS += virtio
-
-# Virtio block driver
-DRV_KMODS += vioblk
-
-#
-# DTrace and DTrace Providers
-#
-DRV_KMODS += dtrace
-DRV_KMODS += fbt
-DRV_KMODS += lockstat
-DRV_KMODS += profile
-DRV_KMODS += sdt
-DRV_KMODS += systrace
-DRV_KMODS += fasttrap
-DRV_KMODS += dcpc
-
-#
-# I/O framework test drivers
-#
-DRV_KMODS += pshot
-DRV_KMODS += gen_drv
-DRV_KMODS += tvhci tphci tclient
-DRV_KMODS += emul64
-
-#
-# Machine Specific Driver Modules (/kernel/drv):
-#
-DRV_KMODS += options
-DRV_KMODS += scsi_vhci
-DRV_KMODS += pmcs
-DRV_KMODS += pmcs8001fw
-DRV_KMODS += arcmsr
-DRV_KMODS += fcp
-DRV_KMODS += fcip
-DRV_KMODS += fcsm
-DRV_KMODS += fp
-DRV_KMODS += qlc
-DRV_KMODS += iscsi
-
-#
-# PCMCIA specific module(s)
-#
-DRV_KMODS += pcs
-MISC_KMODS += cardbus
-
-#
-# SCSI Enclosure Services driver
-#
-DRV_KMODS += ses
-
-#
-# USB specific modules
-#
-DRV_KMODS += hid
-DRV_KMODS += hwarc hwahc
-DRV_KMODS += hubd
-DRV_KMODS += uhci
-DRV_KMODS += ehci
-DRV_KMODS += ohci
-DRV_KMODS += usb_mid
-DRV_KMODS += usb_ia
-DRV_KMODS += scsa2usb
-DRV_KMODS += usbprn
-DRV_KMODS += ugen
-DRV_KMODS += usbser
-DRV_KMODS += usbsacm
-DRV_KMODS += usbsksp
-DRV_KMODS += usbsprl
-DRV_KMODS += usb_ac
-DRV_KMODS += usb_as
-DRV_KMODS += usbskel
-DRV_KMODS += usbvc
-DRV_KMODS += usbftdi
-DRV_KMODS += wusb_df
-DRV_KMODS += wusb_ca
-DRV_KMODS += usbecm
-
-#
-# 1394 modules
-#
-MISC_KMODS += s1394 sbp2
-DRV_KMODS += hci1394 scsa1394
-DRV_KMODS += av1394
-DRV_KMODS += dcam1394
-
-#
-# InfiniBand pseudo drivers
-#
-DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
-DRV_KMODS += sol_umad
-
-#
-# LVM modules
-#
-DRV_KMODS += md
-MISC_KMODS += md_stripe md_hotspares md_mirror md_raid md_trans md_notify
-MISC_KMODS += md_sp
-
-#
-# Brand modules
-#
-BRAND_KMODS += sn1_brand s10_brand
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS += elfexec intpexec shbinexec javaexec
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS += IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL SDC
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS += autofs cachefs ctfs dcfs dev devfs fdfs fifofs hsfs lofs
-FS_KMODS += mntfs namefs nfs objfs zfs zut
-FS_KMODS += pcfs procfs sockfs specfs tmpfs udfs ufs sharefs
-FS_KMODS += smbfs
-
-#
-# Streams Modules (/kernel/strmod):
-#
-STRMOD_KMODS += bufmod connld dedump ldterm pckt pfmod pipemod
-STRMOD_KMODS += ptem redirmod rpcmod rlmod telmod timod
-STRMOD_KMODS += spppasyn spppcomp
-STRMOD_KMODS += tirdwr ttcompat
-STRMOD_KMODS += usbkbm
-STRMOD_KMODS += usbms
-STRMOD_KMODS += usbwcm
-STRMOD_KMODS += usb_ah
-STRMOD_KMODS += drcompat
-STRMOD_KMODS += cryptmod
-STRMOD_KMODS += vuid2ps2
-STRMOD_KMODS += vuid3ps2
-STRMOD_KMODS += vuidm3p
-STRMOD_KMODS += vuidm4p
-STRMOD_KMODS += vuidm5p
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS += c2audit
-SYS_KMODS += doorfs
-SYS_KMODS += exacctsys
-SYS_KMODS += inst_sync
-SYS_KMODS += kaio
-SYS_KMODS += msgsys
-SYS_KMODS += pipe
-SYS_KMODS += portfs
-SYS_KMODS += pset
-SYS_KMODS += semsys
-SYS_KMODS += shmsys
-SYS_KMODS += sysacct
-SYS_KMODS += acctctl
-
-#
-# 'Misc' Modules (/kernel/misc)
-# MISC_KMODS are built both 32-bit and 64-bit
-# MISC_KMODS_32 are built only 32-bit
-# MISC_KMODS_64 are built only 64-bit
-#
-MISC_KMODS += ac97
-MISC_KMODS += acpica
-MISC_KMODS += agpmaster
-MISC_KMODS += bignum
-MISC_KMODS += bootdev
-MISC_KMODS += busra
-MISC_KMODS += cmlb
-MISC_KMODS += consconfig
-MISC_KMODS += ctf
-MISC_KMODS += dadk
-MISC_KMODS += dcopy
-MISC_KMODS += dls
-MISC_KMODS += drm
-MISC_KMODS += fssnap_if
-MISC_KMODS += gda
-MISC_KMODS += gld
-MISC_KMODS += hidparser
-MISC_KMODS += hook
-MISC_KMODS += hpcsvc
-MISC_KMODS += ibcm
-MISC_KMODS += ibdm
-MISC_KMODS += ibdma
-MISC_KMODS += ibmf
-MISC_KMODS += ibtl
-MISC_KMODS += idm
-MISC_KMODS += idmap
-MISC_KMODS += iommulib
-MISC_KMODS += ipc
-MISC_KMODS += kbtrans
-MISC_KMODS += kcf
-MISC_KMODS += kgssapi
-MISC_KMODS += kmech_dummy
-MISC_KMODS += kmech_krb5
-MISC_KMODS += ksocket
-MISC_KMODS += mac
-MISC_KMODS += mii
-MISC_KMODS += mwlfw
-MISC_KMODS += net80211
-MISC_KMODS += nfs_dlboot
-MISC_KMODS += nfssrv
-MISC_KMODS += neti
-MISC_KMODS += pci_autoconfig
-MISC_KMODS += pcicfg
-MISC_KMODS += pcihp
-MISC_KMODS += pcmcia
-MISC_KMODS += rpcsec
-MISC_KMODS += rpcsec_gss
-MISC_KMODS += rsmops
-MISC_KMODS += sata
-MISC_KMODS += scsi
-MISC_KMODS += sda
-MISC_KMODS += sol_ofs
-MISC_KMODS += spuni
-MISC_KMODS += strategy
-MISC_KMODS += strplumb
-MISC_KMODS += tem
-MISC_KMODS += tlimod
-MISC_KMODS += usba usba10 usbs49_fw
-MISC_KMODS += scsi_vhci_f_sym_hds
-MISC_KMODS += scsi_vhci_f_sym
-MISC_KMODS += scsi_vhci_f_tpgs
-MISC_KMODS += scsi_vhci_f_asym_sun
-MISC_KMODS += scsi_vhci_f_tape
-MISC_KMODS += scsi_vhci_f_tpgs_tape
-MISC_KMODS += fctl
-MISC_KMODS += emlxs_fw
-MISC_KMODS += qlc_fw_2200
-MISC_KMODS += qlc_fw_2300
-MISC_KMODS += qlc_fw_2400
-MISC_KMODS += qlc_fw_2500
-MISC_KMODS += qlc_fw_6322
-MISC_KMODS += qlc_fw_8100
-MISC_KMODS += hwa1480_fw
-MISC_KMODS += uathfw
-MISC_KMODS += uwba
-
-MISC_KMODS += klmmod klmops
-
-#
-# Software Cryptographic Providers (/kernel/crypto):
-#
-CRYPTO_KMODS += aes
-CRYPTO_KMODS += arcfour
-CRYPTO_KMODS += blowfish
-CRYPTO_KMODS += des
-CRYPTO_KMODS += ecc
-CRYPTO_KMODS += md4
-CRYPTO_KMODS += md5
-CRYPTO_KMODS += rsa
-CRYPTO_KMODS += sha1
-CRYPTO_KMODS += sha2
-CRYPTO_KMODS += swrand
-
-#
-# IP Policy Modules (/kernel/ipp)
-#
-IPP_KMODS += dlcosmk
-IPP_KMODS += flowacct
-IPP_KMODS += ipgpc
-IPP_KMODS += dscpmk
-IPP_KMODS += tokenmt
-IPP_KMODS += tswtclmt
-
-#
-# generic-unix module (/kernel/genunix):
-#
-GENUNIX_KMODS += genunix
-
-#
-# Modules eXcluded from the product:
-#
-
-#
-# 'Dacf' Modules (/kernel/dacf):
-#
-
-#
-# Performance Counter BackEnd modules (/usr/kernel/pcbe)
-#
-PCBE_KMODS += p123_pcbe p4_pcbe opteron_pcbe core_pcbe
-
-#
-# MAC-Type Plugin Modules (/kernel/mac)
-#
-MAC_KMODS += mac_6to4
-MAC_KMODS += mac_ether
-MAC_KMODS += mac_ipv4
-MAC_KMODS += mac_ipv6
-MAC_KMODS += mac_wifi
-MAC_KMODS += mac_ib
-
-#
-# socketmod (kernel/socketmod)
-#
-SOCKET_KMODS += sockpfp
-SOCKET_KMODS += socksctp
-SOCKET_KMODS += socksdp
-SOCKET_KMODS += sockrds
-SOCKET_KMODS += ksslf
-
-#
-# kiconv modules (/kernel/kiconv):
-#
-KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
-
-#
-# 'Dacf' Modules (/kernel/dacf):
-#
-DACF_KMODS += net_dacf
diff --git a/usr/src/uts/intel/Makefile.targ b/usr/src/uts/intel/Makefile.targ
index 36c3ab4216..d1e77fb7e0 100644
--- a/usr/src/uts/intel/Makefile.targ
+++ b/usr/src/uts/intel/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,12 +19,24 @@
#
# CDDL HEADER END
#
+#
+# uts/intel/Makefile.targ
+#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the intel "implementation architecture".
#
-UTSTREE=$(UTSBASE)
+#
+# Targets for all implementations:
+#
+include $(UTSBASE)/Makefile.targ
-include $(UTSBASE)/intel/Makefile.targ.shared
+#
+# Target set for intel (order is not important, as it is with the
+# isomorphic Makefile.files set).
+#
+include $(UTSBASE)/intel/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
diff --git a/usr/src/uts/intel/Makefile.targ.shared b/usr/src/uts/intel/Makefile.targ.shared
deleted file mode 100644
index 8c63e6e95f..0000000000
--- a/usr/src/uts/intel/Makefile.targ.shared
+++ /dev/null
@@ -1,44 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/intel/Makefile.targ
-#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the intel "implementation architecture".
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for intel (order is not important, as it is with the
-# isomorphic Makefile.files set).
-#
-include $(UTSTREE)/intel/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules
diff --git a/usr/src/uts/intel/kmech_krb5/req.flg b/usr/src/uts/intel/kmech_krb5/req.flg
index b7ac8da3cf..55c983ba48 100644
--- a/usr/src/uts/intel/kmech_krb5/req.flg
+++ b/usr/src/uts/intel/kmech_krb5/req.flg
@@ -21,17 +21,13 @@
# CDDL HEADER END
#
#
-# ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
echo_file usr/src/uts/intel/Makefile
echo_file usr/src/uts/intel/Makefile.files
echo_file usr/src/uts/intel/Makefile.intel
-echo_file usr/src/uts/intel/Makefile.intel.shared
echo_file usr/src/uts/intel/Makefile.rules
echo_file usr/src/uts/intel/Makefile.targ
-echo_file usr/src/uts/intel/Makefile.targ.shared
echo_file usr/src/uts/common/Makefile.files
echo_file usr/src/uts/common/Makefile.rules
diff --git a/usr/src/uts/sparc/Makefile.sparc b/usr/src/uts/sparc/Makefile.sparc
index c5e313e0b9..600e8f07ee 100644
--- a/usr/src/uts/sparc/Makefile.sparc
+++ b/usr/src/uts/sparc/Makefile.sparc
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,14 +19,479 @@
# CDDL HEADER END
#
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+
+
+#
+# This makefile contains the common definitions for all sparc
+# implementation architecture independent modules.
+#
+
+#
+# Define supported builds
+#
+DEF_BUILDS = $(DEF_BUILDS64)
+ALL_BUILDS = $(ALL_BUILDS64)
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o.
+# Note that unix.o must currently be selected from among the possible
+# "implementation architectures". Note further, that unix.o is only
+# used as an optional error check for undefines so (theoretically)
+# any "implementation architectures" could be used. We choose sun4u
+# because it is the reference port.
+#
+UNIX_DIR = $(UTSBASE)/sun4u/unix
+GENLIB_DIR = $(UTSBASE)/sun4u/genunix
+IPDRV_DIR = $(UTSBASE)/sparc/ip
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UNIX_DIR)
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR)
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+GENLIB = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/libgenunix.so
+
+LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
+GEN_LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
+
+LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
+GEN_LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
+
+LINT_LIB = $(LINT_LIB_$(CLASS))
+GEN_LINT_LIB = $(GEN_LINT_LIB_$(CLASS))
+
+LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
+LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
+
+LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
+LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/sparc/Makefile.files
+include $(UTSBASE)/sparc/v9/Makefile.files
+include $(UTSBASE)/sun/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
+#
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# genunix but which might someday become kmods. This must be
+# defined before we include Makefile.uts, or else genunix's build
+# won't be as parallel as we might like.
+#
+NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
+
+#
+# machine specific optimization, override default in Makefile.master
+#
+XARCH_32 = -xarch=v8
+XARCH_64 = -m64
+XARCH = $(XARCH_$(CLASS))
+
+COPTIMIZE_32 = -xO3
+COPTIMIZE_64 = -xO3
+COPTIMIZE = $(COPTIMIZE_$(CLASS))
+
+CCMODE = -Xa
+
+CFLAGS_32 = -xcg92
+CFLAGS_64 = -xchip=ultra $(CCABS32) $(CCREGSYM)
+CFLAGS = $(CFLAGS_$(CLASS))
+
+CFLAGS += $(XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(EXTRA_CFLAGS)
+CFLAGS += $(XAOPT)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CERRWARN)
+CFLAGS += $(CTF_FLAGS_$(CLASS))
+CFLAGS += $(C99MODE)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CCSTATICSYM)
+CFLAGS += $(CC32BITCALLERS)
+CFLAGS += $(CCNOAUTOINLINE)
+CFLAGS += $(IROPTFLAG)
+CFLAGS += $(CGLOBALSTATIC)
+CFLAGS += -xregs=no%float
+CFLAGS += -xstrconst
+CFLAGS += $(CSOURCEDEBUGFLAGS)
+CFLAGS += $(CUSERFLAGS)
+
+ASFLAGS += $(XARCH)
+
+LINT_DEFS_32 =
+LINT_DEFS_64 = -m64
+LINT_DEFS += $(LINT_DEFS_$(CLASS))
+
+#
+# The following must be defined for all implementations:
+#
+# MODSTUBS: Module stubs source file.
+#
+MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
+
+#
+# Define the actual specific platforms - obviously none.
+#
+MACHINE_DEFS =
+
+#
+# Debugging level
+#
+# Special knowledge of which special debugging options effect which
+# file is used to optimize the build if these flags are changed.
#
-# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
+# XXX: The above could possibly be done for more flags and files, but
+# is left as an experiment to the interested reader. Be forewarned,
+# that excessive use could lead to maintenance difficulties.
#
+DEBUG_DEFS_OBJ32 =
+DEBUG_DEFS_DBG32 = -DDEBUG
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-UTSTREE=$(UTSBASE)
+DEBUG_COND_OBJ32 = $(POUND_SIGN)
+DEBUG_COND_DBG32 =
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-include $(UTSBASE)/sparc/Makefile.sparc.shared
+$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE
+$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1
+
+# Comment these out if you don't want dispatcher lock statistics.
+
+# $(IF_DEBUG_OBJ)disp_lock.o := DEBUG_DEFS += -DDISP_LOCK_STATS
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(MACHINE_DEFS) $(DEBUG_DEFS) $(OPTION_DEFS)
+#
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Common Drivers (usually pseudo drivers) (/kernel/drv):
+#
+DRV_KMODS += aggr arp audio bl blkdev bofi clone cn conskbd consms cpuid
+DRV_KMODS += crypto cryptoadm devinfo dump
+DRV_KMODS += dtrace fasttrap fbt lockstat profile sdt systrace dcpc
+DRV_KMODS += fssnap icmp icmp6 ip ip6 ipnet ipsecah
+DRV_KMODS += ipsecesp iptun iwscn keysock kmdb kstat ksyms llc1
+DRV_KMODS += lofi
+DRV_KMODS += log logindmux kssl mm nca physmem pm poll pool
+DRV_KMODS += pseudo ptc ptm pts ptsl ramdisk random rsm rts sad
+DRV_KMODS += simnet softmac sppp sppptun sy sysevent sysmsg
+DRV_KMODS += spdsock
+DRV_KMODS += tcp tcp6 tl tnf ttymux udp udp6 wc winlock zcons
+DRV_KMODS += ippctl
+DRV_KMODS += dld
+DRV_KMODS += ipf
+DRV_KMODS += rpcib
+DRV_KMODS += dlpistub
+DRV_KMODS += vnic
+DRV_KMODS += xge
+DRV_KMODS += rds
+DRV_KMODS += rdsv3
+DRV_KMODS += chxge
+DRV_KMODS += smbsrv
+DRV_KMODS += vscan
+DRV_KMODS += nsmb
+DRV_KMODS += fm
+DRV_KMODS += nulldriver
+DRV_KMODS += bridge trill
+DRV_KMODS += bpf
+DRV_KMODS += dca
+
+#
+# Hardware Drivers in common space
+#
+
+DRV_KMODS += afe
+DRV_KMODS += audio1575
+DRV_KMODS += audioens
+DRV_KMODS += audiols
+DRV_KMODS += audiop16x
+DRV_KMODS += audiopci
+DRV_KMODS += audiots
+DRV_KMODS += e1000g
+DRV_KMODS += efe
+DRV_KMODS += hxge
+DRV_KMODS += mxfe
+DRV_KMODS += rge
+DRV_KMODS += rtls
+DRV_KMODS += sfe
+DRV_KMODS += aac
+DRV_KMODS += igb
+DRV_KMODS += ixgbe
+DRV_KMODS += vr
+DRV_KMODS += mr_sas
+DRV_KMODS += yge
+
+#
+# Machine Specific Driver Modules (/kernel/drv):
+#
+DRV_KMODS += audiocs
+DRV_KMODS += bge dmfe eri fas hme qfe
+DRV_KMODS += openeepr options sd ses st
+DRV_KMODS += ssd
+DRV_KMODS += ecpp
+DRV_KMODS += hid hubd ehci ohci uhci usb_mid usb_ia scsa2usb usbprn ugen
+DRV_KMODS += usbser usbsacm usbsksp usbsprl
+DRV_KMODS += usb_as usb_ac
+DRV_KMODS += usbskel
+DRV_KMODS += usbvc
+DRV_KMODS += usbftdi
+DRV_KMODS += wusb_df hwahc hwarc wusb_ca
+DRV_KMODS += usbecm
+DRV_KMODS += hci1394 av1394 scsa1394 dcam1394
+DRV_KMODS += sbp2
+DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
+DRV_KMODS += sol_umad
+DRV_KMODS += pci_pci pcieb pcieb_bcm
+DRV_KMODS += i8042 kb8042 mouse8042
+DRV_KMODS += fcode
+DRV_KMODS += mpt_sas
+DRV_KMODS += socal
+DRV_KMODS += sgen
+DRV_KMODS += myri10ge
+DRV_KMODS += smp
+DRV_KMODS += dad
+DRV_KMODS += scsi_vhci
+DRV_KMODS += fcp
+DRV_KMODS += fcip
+DRV_KMODS += fcsm
+DRV_KMODS += fp
+DRV_KMODS += qlc
+DRV_KMODS += qlge
+DRV_KMODS += stmf
+DRV_KMODS += stmf_sbd
+DRV_KMODS += fct
+DRV_KMODS += fcoe
+DRV_KMODS += fcoet
+DRV_KMODS += fcoei
+DRV_KMODS += qlt
+DRV_KMODS += iscsit
+DRV_KMODS += pppt
+DRV_KMODS += ncall nsctl sdbc nskern sv
+DRV_KMODS += ii rdc rdcsrv rdcstub
+DRV_KMODS += iscsi
+DRV_KMODS += emlxs
+DRV_KMODS += oce
+DRV_KMODS += srpt
+DRV_KMODS += pmcs
+DRV_KMODS += pmcs8001fw
+
+#
+# I/O framework test drivers
+#
+DRV_KMODS += pshot
+DRV_KMODS += gen_drv
+DRV_KMODS += tvhci tphci tclient
+DRV_KMODS += emul64
+
+#
+# PCMCIA specific module(s)
+#
+DRV_KMODS += pcs
+MISC_KMODS += busra cardbus dada pcmcia
+DRV_KMODS += pcic
+
+# Add lvm
+#
+DRV_KMODS += md
+MISC_KMODS += md_mirror md_stripe md_hotspares md_raid md_trans md_notify
+MISC_KMODS += md_sp
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS += aoutexec elfexec intpexec shbinexec javaexec
+
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS += RT TS RT_DPTBL TS_DPTBL IA FSS FX FX_DPTBL SDC
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS += dev devfs fdfs fifofs hsfs lofs namefs nfs pcfs tmpfs zfs
+FS_KMODS += zut specfs udfs ufs autofs cachefs procfs sockfs mntfs
+FS_KMODS += ctfs objfs sharefs dcfs smbfs
+
+#
+# Streams Modules (/kernel/strmod):
+#
+STRMOD_KMODS += bufmod connld dedump ldterm ms pckt pfmod
+STRMOD_KMODS += pipemod ptem redirmod rpcmod rlmod telmod timod
+STRMOD_KMODS += spppasyn spppcomp
+STRMOD_KMODS += tirdwr ttcompat
+STRMOD_KMODS += usbkbm usbms usbwcm usb_ah
+STRMOD_KMODS += drcompat
+STRMOD_KMODS += cryptmod
+STRMOD_KMODS += vuid3ps2
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS += c2audit
+SYS_KMODS += exacctsys
+SYS_KMODS += inst_sync kaio msgsys semsys shmsys sysacct pipe
+SYS_KMODS += doorfs pset acctctl portfs
+
+#
+# 'User' Modules (/kernel/misc):
+#
+MISC_KMODS += ac97
+MISC_KMODS += bignum
+MISC_KMODS += consconfig gld ipc nfs_dlboot nfssrv scsi
+MISC_KMODS += strplumb swapgeneric tlimod
+MISC_KMODS += rpcsec rpcsec_gss kgssapi kmech_dummy
+MISC_KMODS += kmech_krb5
+MISC_KMODS += fssnap_if
+MISC_KMODS += hidparser kbtrans usba usba10 usbs49_fw
+MISC_KMODS += s1394
+MISC_KMODS += hpcsvc pcihp
+MISC_KMODS += rsmops
+MISC_KMODS += kcf
+MISC_KMODS += ksocket
+MISC_KMODS += ibcm
+MISC_KMODS += ibdm
+MISC_KMODS += ibdma
+MISC_KMODS += ibmf
+MISC_KMODS += ibtl
+MISC_KMODS += sol_ofs
+MISC_KMODS += idm
+MISC_KMODS += idmap
+MISC_KMODS += hook
+MISC_KMODS += neti
+MISC_KMODS += ctf
+MISC_KMODS += mac dls
+MISC_KMODS += cmlb
+MISC_KMODS += tem
+MISC_KMODS += pcicfg fcodem fcpci
+MISC_KMODS += scsi_vhci_f_sym scsi_vhci_f_tpgs scsi_vhci_f_asym_sun
+MISC_KMODS += scsi_vhci_f_sym_hds
+MISC_KMODS += scsi_vhci_f_tape scsi_vhci_f_tpgs_tape
+MISC_KMODS += fctl
+MISC_KMODS += emlxs_fw
+MISC_KMODS += qlc_fw_2200
+MISC_KMODS += qlc_fw_2300
+MISC_KMODS += qlc_fw_2400
+MISC_KMODS += qlc_fw_2500
+MISC_KMODS += qlc_fw_6322
+MISC_KMODS += qlc_fw_8100
+MISC_KMODS += spuni
+MISC_KMODS += hwa1480_fw uwba
+MISC_KMODS += mii
+
+MISC_KMODS += klmmod klmops
+
+#
+# Software Cryptographic Providers (/kernel/crypto):
+#
+CRYPTO_KMODS += aes
+CRYPTO_KMODS += arcfour
+CRYPTO_KMODS += blowfish
+CRYPTO_KMODS += des
+CRYPTO_KMODS += md4
+CRYPTO_KMODS += md5
+CRYPTO_KMODS += ecc
+CRYPTO_KMODS += rsa
+CRYPTO_KMODS += sha1
+CRYPTO_KMODS += sha2
+CRYPTO_KMODS += swrand
+
+#
+# IP Policy Modules (/kernel/ipp):
+#
+IPP_KMODS += dlcosmk
+IPP_KMODS += flowacct
+IPP_KMODS += ipgpc
+IPP_KMODS += dscpmk
+IPP_KMODS += tokenmt
+IPP_KMODS += tswtclmt
+
+#
+# 'Dacf' modules (/kernel/dacf)
+DACF_KMODS += consconfig_dacf
+
+#
+# SVVS Testing Modules (/kernel/strmod):
+#
+# These are streams and driver modules which are not to be
+# delivered with a released system. However, during development
+# it is convenient to build and install the SVVS kernel modules.
+#
+SVVS_KMODS += lmodb lmode lmodr lmodt svvslo tidg tivc tmux
+
+#
+# Modules eXcluded from the product:
+#
+XMODS +=
+
+#
+# 'Dacf' Modules (/kernel/dacf):
+#
+DACF_KMODS += net_dacf
+
+#
+# MAC-Type Plugin Modules (/kernel/mac)
+#
+MAC_KMODS += mac_6to4
+MAC_KMODS += mac_ether
+MAC_KMODS += mac_ipv4
+MAC_KMODS += mac_ipv6
+MAC_KMODS += mac_wifi
+MAC_KMODS += mac_ib
+
+#
+# socketmod (kernel/socketmod)
+#
+SOCKET_KMODS += sockpfp
+SOCKET_KMODS += socksctp
+SOCKET_KMODS += socksdp
+SOCKET_KMODS += sockrds
+SOCKET_KMODS += ksslf
+
+#
+# kiconv modules (/kernel/kiconv):
+#
+KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
#
# Ensure that the variable member of the cpu_t (cpu_m) is defined
diff --git a/usr/src/uts/sparc/Makefile.sparc.shared b/usr/src/uts/sparc/Makefile.sparc.shared
deleted file mode 100644
index 11a89cfc61..0000000000
--- a/usr/src/uts/sparc/Makefile.sparc.shared
+++ /dev/null
@@ -1,494 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-
-
-#
-# This makefile contains the common definitions for all sparc
-# implementation architecture independent modules.
-#
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64)
-ALL_BUILDS = $(ALL_BUILDS64)
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o.
-# Note that unix.o must currently be selected from among the possible
-# "implementation architectures". Note further, that unix.o is only
-# used as an optional error check for undefines so (theoretically)
-# any "implementation architectures" could be used. We choose sun4u
-# because it is the reference port.
-#
-UNIX_DIR = $(UTSBASE)/sun4u/unix
-GENLIB_DIR = $(UTSBASE)/sun4u/genunix
-IPDRV_DIR = $(UTSBASE)/sparc/ip
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UNIX_DIR)
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR)
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-GENLIB = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/libgenunix.so
-
-LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
-GEN_LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
-
-LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
-GEN_LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
-
-LINT_LIB = $(LINT_LIB_$(CLASS))
-GEN_LINT_LIB = $(GEN_LINT_LIB_$(CLASS))
-
-LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
-LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
-
-LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
-LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSBASE)/sparc/Makefile.files
-include $(UTSBASE)/sparc/v9/Makefile.files
-include $(UTSTREE)/sun/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# genunix but which might someday become kmods. This must be
-# defined before we include Makefile.uts, or else genunix's build
-# won't be as parallel as we might like.
-#
-NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-#
-# machine specific optimization, override default in Makefile.master
-#
-XARCH_32 = -xarch=v8
-XARCH_64 = -m64
-XARCH = $(XARCH_$(CLASS))
-
-COPTIMIZE_32 = -xO3
-COPTIMIZE_64 = -xO3
-COPTIMIZE = $(COPTIMIZE_$(CLASS))
-
-CCMODE = -Xa
-
-CFLAGS_32 = -xcg92
-CFLAGS_64 = -xchip=ultra $(CCABS32) $(CCREGSYM)
-CFLAGS = $(CFLAGS_$(CLASS))
-
-CFLAGS += $(XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(EXTRA_CFLAGS)
-CFLAGS += $(XAOPT)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CERRWARN)
-CFLAGS += $(CTF_FLAGS_$(CLASS))
-CFLAGS += $(C99MODE)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CCSTATICSYM)
-CFLAGS += $(CC32BITCALLERS)
-CFLAGS += $(CCNOAUTOINLINE)
-CFLAGS += $(IROPTFLAG)
-CFLAGS += $(CGLOBALSTATIC)
-CFLAGS += -xregs=no%float
-CFLAGS += -xstrconst
-CFLAGS += $(CSOURCEDEBUGFLAGS)
-CFLAGS += $(CUSERFLAGS)
-
-ASFLAGS += $(XARCH)
-
-LINT_DEFS_32 =
-LINT_DEFS_64 = -m64
-LINT_DEFS += $(LINT_DEFS_$(CLASS))
-
-#
-# The following must be defined for all implementations:
-#
-# MODSTUBS: Module stubs source file.
-#
-MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
-
-#
-# Define the actual specific platforms - obviously none.
-#
-MACHINE_DEFS =
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options effect which
-# file is used to optimize the build if these flags are changed.
-#
-# XXX: The above could possibly be done for more flags and files, but
-# is left as an experiment to the interested reader. Be forewarned,
-# that excessive use could lead to maintenance difficulties.
-#
-DEBUG_DEFS_OBJ32 =
-DEBUG_DEFS_DBG32 = -DDEBUG
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ32 = $(POUND_SIGN)
-DEBUG_COND_DBG32 =
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE
-$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1
-
-# Comment these out if you don't want dispatcher lock statistics.
-
-# $(IF_DEBUG_OBJ)disp_lock.o := DEBUG_DEFS += -DDISP_LOCK_STATS
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(MACHINE_DEFS) $(DEBUG_DEFS) $(OPTION_DEFS)
-#
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Common Drivers (usually pseudo drivers) (/kernel/drv):
-#
-DRV_KMODS += aggr arp audio bl blkdev bofi clone cn conskbd consms cpuid
-DRV_KMODS += crypto cryptoadm devinfo dump
-DRV_KMODS += dtrace fasttrap fbt lockstat profile sdt systrace dcpc
-DRV_KMODS += fssnap icmp icmp6 ip ip6 ipnet ipsecah
-DRV_KMODS += ipsecesp iptun iwscn keysock kmdb kstat ksyms llc1
-DRV_KMODS += lofi
-DRV_KMODS += log logindmux kssl mm nca physmem pm poll pool
-DRV_KMODS += pseudo ptc ptm pts ptsl ramdisk random rsm rts sad
-DRV_KMODS += simnet softmac sppp sppptun sy sysevent sysmsg
-DRV_KMODS += spdsock
-DRV_KMODS += tcp tcp6 tl tnf ttymux udp udp6 wc winlock zcons
-DRV_KMODS += ippctl
-DRV_KMODS += dld
-DRV_KMODS += ipf
-DRV_KMODS += rpcib
-DRV_KMODS += dlpistub
-DRV_KMODS += vnic
-DRV_KMODS += xge
-DRV_KMODS += rds
-DRV_KMODS += rdsv3
-DRV_KMODS += chxge
-DRV_KMODS += smbsrv
-DRV_KMODS += vscan
-DRV_KMODS += nsmb
-DRV_KMODS += fm
-DRV_KMODS += nulldriver
-DRV_KMODS += bridge trill
-DRV_KMODS += bpf
-DRV_KMODS += dca
-
-#
-# Hardware Drivers in common space
-#
-
-DRV_KMODS += afe
-DRV_KMODS += audio1575
-DRV_KMODS += audioens
-DRV_KMODS += audiols
-DRV_KMODS += audiop16x
-DRV_KMODS += audiopci
-DRV_KMODS += audiots
-DRV_KMODS += e1000g
-DRV_KMODS += efe
-DRV_KMODS += hxge
-DRV_KMODS += mxfe
-DRV_KMODS += rge
-DRV_KMODS += rtls
-DRV_KMODS += sfe
-DRV_KMODS += aac
-DRV_KMODS += igb
-DRV_KMODS += ixgbe
-DRV_KMODS += vr
-DRV_KMODS += mr_sas
-DRV_KMODS += yge
-
-#
-# Machine Specific Driver Modules (/kernel/drv):
-#
-DRV_KMODS += audiocs
-DRV_KMODS += bge dmfe eri fas hme qfe
-DRV_KMODS += openeepr options sd ses st
-DRV_KMODS += ssd
-DRV_KMODS += ecpp
-DRV_KMODS += hid hubd ehci ohci uhci usb_mid usb_ia scsa2usb usbprn ugen
-DRV_KMODS += usbser usbsacm usbsksp usbsprl
-DRV_KMODS += usb_as usb_ac
-DRV_KMODS += usbskel
-DRV_KMODS += usbvc
-DRV_KMODS += usbftdi
-DRV_KMODS += wusb_df hwahc hwarc wusb_ca
-DRV_KMODS += usbecm
-DRV_KMODS += hci1394 av1394 scsa1394 dcam1394
-DRV_KMODS += sbp2
-DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
-DRV_KMODS += sol_umad
-DRV_KMODS += pci_pci pcieb pcieb_bcm
-DRV_KMODS += i8042 kb8042 mouse8042
-DRV_KMODS += fcode
-DRV_KMODS += mpt_sas
-DRV_KMODS += socal
-DRV_KMODS += sgen
-DRV_KMODS += myri10ge
-DRV_KMODS += smp
-DRV_KMODS += dad
-DRV_KMODS += scsi_vhci
-DRV_KMODS += fcp
-DRV_KMODS += fcip
-DRV_KMODS += fcsm
-DRV_KMODS += fp
-DRV_KMODS += qlc
-DRV_KMODS += qlge
-DRV_KMODS += stmf
-DRV_KMODS += stmf_sbd
-DRV_KMODS += fct
-DRV_KMODS += fcoe
-DRV_KMODS += fcoet
-DRV_KMODS += fcoei
-DRV_KMODS += qlt
-DRV_KMODS += iscsit
-DRV_KMODS += pppt
-DRV_KMODS += ncall nsctl sdbc nskern sv
-DRV_KMODS += ii rdc rdcsrv rdcstub
-DRV_KMODS += iscsi
-DRV_KMODS += emlxs
-DRV_KMODS += oce
-DRV_KMODS += srpt
-DRV_KMODS += pmcs
-DRV_KMODS += pmcs8001fw
-
-#
-# I/O framework test drivers
-#
-DRV_KMODS += pshot
-DRV_KMODS += gen_drv
-DRV_KMODS += tvhci tphci tclient
-DRV_KMODS += emul64
-
-#
-# PCMCIA specific module(s)
-#
-DRV_KMODS += pcs
-MISC_KMODS += busra cardbus dada pcmcia
-DRV_KMODS += pcic
-
-# Add lvm
-#
-DRV_KMODS += md
-MISC_KMODS += md_mirror md_stripe md_hotspares md_raid md_trans md_notify
-MISC_KMODS += md_sp
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS += aoutexec elfexec intpexec shbinexec javaexec
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS += RT TS RT_DPTBL TS_DPTBL IA FSS FX FX_DPTBL SDC
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS += dev devfs fdfs fifofs hsfs lofs namefs nfs pcfs tmpfs zfs
-FS_KMODS += zut specfs udfs ufs autofs cachefs procfs sockfs mntfs
-FS_KMODS += ctfs objfs sharefs dcfs smbfs
-
-#
-# Streams Modules (/kernel/strmod):
-#
-STRMOD_KMODS += bufmod connld dedump ldterm ms pckt pfmod
-STRMOD_KMODS += pipemod ptem redirmod rpcmod rlmod telmod timod
-STRMOD_KMODS += spppasyn spppcomp
-STRMOD_KMODS += tirdwr ttcompat
-STRMOD_KMODS += usbkbm usbms usbwcm usb_ah
-STRMOD_KMODS += drcompat
-STRMOD_KMODS += cryptmod
-STRMOD_KMODS += vuid3ps2
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS += c2audit
-SYS_KMODS += exacctsys
-SYS_KMODS += inst_sync kaio msgsys semsys shmsys sysacct pipe
-SYS_KMODS += doorfs pset acctctl portfs
-
-#
-# 'User' Modules (/kernel/misc):
-#
-MISC_KMODS += ac97
-MISC_KMODS += bignum
-MISC_KMODS += consconfig gld ipc nfs_dlboot nfssrv scsi
-MISC_KMODS += strplumb swapgeneric tlimod
-MISC_KMODS += rpcsec rpcsec_gss kgssapi kmech_dummy
-MISC_KMODS += kmech_krb5
-MISC_KMODS += fssnap_if
-MISC_KMODS += hidparser kbtrans usba usba10 usbs49_fw
-MISC_KMODS += s1394
-MISC_KMODS += hpcsvc pcihp
-MISC_KMODS += rsmops
-MISC_KMODS += kcf
-MISC_KMODS += ksocket
-MISC_KMODS += ibcm
-MISC_KMODS += ibdm
-MISC_KMODS += ibdma
-MISC_KMODS += ibmf
-MISC_KMODS += ibtl
-MISC_KMODS += sol_ofs
-MISC_KMODS += idm
-MISC_KMODS += idmap
-MISC_KMODS += hook
-MISC_KMODS += neti
-MISC_KMODS += ctf
-MISC_KMODS += mac dls
-MISC_KMODS += cmlb
-MISC_KMODS += tem
-MISC_KMODS += pcicfg fcodem fcpci
-MISC_KMODS += scsi_vhci_f_sym scsi_vhci_f_tpgs scsi_vhci_f_asym_sun
-MISC_KMODS += scsi_vhci_f_sym_hds
-MISC_KMODS += scsi_vhci_f_tape scsi_vhci_f_tpgs_tape
-MISC_KMODS += fctl
-MISC_KMODS += emlxs_fw
-MISC_KMODS += qlc_fw_2200
-MISC_KMODS += qlc_fw_2300
-MISC_KMODS += qlc_fw_2400
-MISC_KMODS += qlc_fw_2500
-MISC_KMODS += qlc_fw_6322
-MISC_KMODS += qlc_fw_8100
-MISC_KMODS += spuni
-MISC_KMODS += hwa1480_fw uwba
-MISC_KMODS += mii
-
-MISC_KMODS += klmmod klmops
-
-#
-# Software Cryptographic Providers (/kernel/crypto):
-#
-CRYPTO_KMODS += aes
-CRYPTO_KMODS += arcfour
-CRYPTO_KMODS += blowfish
-CRYPTO_KMODS += des
-CRYPTO_KMODS += md4
-CRYPTO_KMODS += md5
-CRYPTO_KMODS += ecc
-CRYPTO_KMODS += rsa
-CRYPTO_KMODS += sha1
-CRYPTO_KMODS += sha2
-CRYPTO_KMODS += swrand
-
-#
-# IP Policy Modules (/kernel/ipp):
-#
-IPP_KMODS += dlcosmk
-IPP_KMODS += flowacct
-IPP_KMODS += ipgpc
-IPP_KMODS += dscpmk
-IPP_KMODS += tokenmt
-IPP_KMODS += tswtclmt
-
-#
-# 'Dacf' modules (/kernel/dacf)
-DACF_KMODS += consconfig_dacf
-
-#
-# SVVS Testing Modules (/kernel/strmod):
-#
-# These are streams and driver modules which are not to be
-# delivered with a released system. However, during development
-# it is convenient to build and install the SVVS kernel modules.
-#
-SVVS_KMODS += lmodb lmode lmodr lmodt svvslo tidg tivc tmux
-
-#
-# Modules eXcluded from the product:
-#
-XMODS +=
-
-#
-# 'Dacf' Modules (/kernel/dacf):
-#
-DACF_KMODS += net_dacf
-
-#
-# MAC-Type Plugin Modules (/kernel/mac)
-#
-MAC_KMODS += mac_6to4
-MAC_KMODS += mac_ether
-MAC_KMODS += mac_ipv4
-MAC_KMODS += mac_ipv6
-MAC_KMODS += mac_wifi
-MAC_KMODS += mac_ib
-
-#
-# socketmod (kernel/socketmod)
-#
-SOCKET_KMODS += sockpfp
-SOCKET_KMODS += socksctp
-SOCKET_KMODS += socksdp
-SOCKET_KMODS += sockrds
-SOCKET_KMODS += ksslf
-
-#
-# kiconv modules (/kernel/kiconv):
-#
-KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
diff --git a/usr/src/uts/sparc/Makefile.targ b/usr/src/uts/sparc/Makefile.targ
index 60f51356c1..ee5cb31db7 100644
--- a/usr/src/uts/sparc/Makefile.targ
+++ b/usr/src/uts/sparc/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,12 +19,26 @@
#
# CDDL HEADER END
#
+#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the sparc architecture.
#
-UTSTREE=$(UTSBASE)
+#
+# Targets for all implementations:
+#
+include $(UTSBASE)/Makefile.targ
-include $(UTSBASE)/sparc/Makefile.targ.shared
+#
+# Target set for sparc (order is not important, as it is with the
+# isomorphic Makefile.files set).
+#
+include $(UTSBASE)/sparc/Makefile.rules
+include $(UTSBASE)/sparc/v9/Makefile.rules
+include $(UTSBASE)/sun/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.rules
+include $(UTSBASE)/sun4/Makefile.rules
diff --git a/usr/src/uts/sparc/Makefile.targ.shared b/usr/src/uts/sparc/Makefile.targ.shared
deleted file mode 100644
index a3d42b3bd8..0000000000
--- a/usr/src/uts/sparc/Makefile.targ.shared
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the sparc architecture.
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for sparc (order is not important, as it is with the
-# isomorphic Makefile.files set).
-#
-include $(UTSBASE)/sparc/Makefile.rules
-include $(UTSBASE)/sparc/v9/Makefile.rules
-include $(UTSTREE)/sun/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.rules
-include $(UTSBASE)/sun4/Makefile.rules
diff --git a/usr/src/uts/sparc/kmech_krb5/req.flg b/usr/src/uts/sparc/kmech_krb5/req.flg
index 4f0f1b4b90..2a0d817315 100644
--- a/usr/src/uts/sparc/kmech_krb5/req.flg
+++ b/usr/src/uts/sparc/kmech_krb5/req.flg
@@ -21,17 +21,13 @@
# CDDL HEADER END
#
#
-# ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
echo_file usr/src/uts/sparc/Makefile
echo_file usr/src/uts/sparc/Makefile.files
echo_file usr/src/uts/sparc/Makefile.sparc
-echo_file usr/src/uts/sparc/Makefile.sparc.shared
echo_file usr/src/uts/sparc/Makefile.rules
echo_file usr/src/uts/sparc/Makefile.targ
-echo_file usr/src/uts/sparc/Makefile.targ.shared
echo_file usr/src/uts/common/Makefile.files
echo_file usr/src/uts/common/Makefile.rules
diff --git a/usr/src/uts/sparc/req.flg b/usr/src/uts/sparc/req.flg
index 35836f2430..b2dd456328 100644
--- a/usr/src/uts/sparc/req.flg
+++ b/usr/src/uts/sparc/req.flg
@@ -24,16 +24,12 @@
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
-#
echo_file usr/src/uts/sparc/Makefile
echo_file usr/src/uts/sparc/Makefile.files
echo_file usr/src/uts/sparc/Makefile.rules
echo_file usr/src/uts/sparc/Makefile.sparc
-echo_file usr/src/uts/sparc/Makefile.sparc.shared
echo_file usr/src/uts/sparc/Makefile.targ
-echo_file usr/src/uts/sparc/Makefile.targ.shared
echo_file usr/src/uts/sun/Makefile.files
echo_file usr/src/uts/sun/Makefile.rules
diff --git a/usr/src/uts/sun/io/scsi/inc.flg b/usr/src/uts/sun/io/scsi/inc.flg
index f7b1e98152..8d33ea8f71 100644
--- a/usr/src/uts/sun/io/scsi/inc.flg
+++ b/usr/src/uts/sun/io/scsi/inc.flg
@@ -74,9 +74,7 @@ echo_file usr/src/uts/sparc/Makefile
echo_file usr/src/uts/sparc/Makefile.files
echo_file usr/src/uts/sparc/Makefile.rules
echo_file usr/src/uts/sparc/Makefile.sparc
-echo_file usr/src/uts/sparc/Makefile.sparc.shared
echo_file usr/src/uts/sparc/Makefile.targ
-echo_file usr/src/uts/sparc/Makefile.targ.shared
echo_file usr/src/uts/sparc/ml/sparc.il
echo_file usr/src/uts/sparc/req.flg
echo_file usr/src/uts/sun/Makefile.files
diff --git a/usr/src/uts/sun4u/Makefile.sun4u b/usr/src/uts/sun4u/Makefile.sun4u
index 3edae8fd87..86ccfa622b 100644
--- a/usr/src/uts/sun4u/Makefile.sun4u
+++ b/usr/src/uts/sun4u/Makefile.sun4u
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,459 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+
+#
+# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+#
+# This makefile contains the common definitions for the sun4u unix
+# and all sun4u implementation architecture dependent modules.
+#
+
+#
+# Machine type (implementation architecture):
+#
+PLATFORM = sun4u
+PROMIF = ieee1275
+PSMBASE = $(UTSBASE)/../psm
+
+#
+# uname -m value
+#
+UNAME_M = $(PLATFORM)
+
+#
+# Definitions for the platform-specific /platform directories.
+#
+# PLATFORMS designates those sun4u machines which have no platform
+# specific code.
+#
+# IMPLEMENTATIONS is used to designate sun4u machines which do have
+# platform specific modules (perhaps including their own unix). All
+# code specific to a given implementation resides in the appropriately
+# named subdirectory. This requires these platforms to have their
+# own Makefiles to define ROOT_PLAT_DIRS, USR_PLAT_DIRS, etc.
+#
+# So if we had an implementation named 'foo', we would need the following
+# Makefiles in the foo subdirectory:
+#
+# sun4u/foo/Makefile
+# sun4u/foo/Makefile.foo
+# sun4u/foo/Makefile.targ
+#
+
+#
+# /usr/platform/$(IMPLEMENTED_PLATFORM) is created as a directory that
+# all the $(LINKED_PLATFORMS) link to.
+#
+IMPLEMENTED_PLATFORM = SUNW,Ultra-2
+
+LINKED_PLATFORMS += SUNW,Ultra-30
+LINKED_PLATFORMS += SUNW,Ultra-60
+
+#
+# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list
+# ie. all desktop platforms
+#
+PLATFORMS = $(IMPLEMENTED_PLATFORM)
+PLATFORMS += $(LINKED_PLATFORMS)
+
+ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%)
+USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%)
+
+USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM)
+USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include
+USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin
+USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib
+
+#
+# Welcome to SPARC V9.
+#
+
+#
+# Define supported builds
+#
+DEF_BUILDS = $(DEF_BUILDS64)
+ALL_BUILDS = $(ALL_BUILDS64)
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
+GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
+
+DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
+DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
+
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln
+
+LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
+LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
+
+#
+# cpu and platform modules need to know how to build their own symcheck module
+#
+PLATMOD = platmod
+PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so
+
+CPUNAME = cpu
+CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so
+
+SYM_MOD = $(OBJS_DIR)/unix.sym
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/sun4/Makefile.files
+include $(UTSBASE)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/sfmmu/Makefile.files
+include $(UTSBASE)/sparc/v9/Makefile.files
+include $(UTSBASE)/sparc/Makefile.files
+include $(UTSBASE)/sun/Makefile.files
+include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files
+include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
+#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
+
+# These come after Makefile.uts.
+IMPLEMENTATIONS = tazmo
+IMPLEMENTATIONS += starfire
+IMPLEMENTATIONS += javelin
+IMPLEMENTATIONS += darwin
+IMPLEMENTATIONS += quasar
+IMPLEMENTATIONS += grover
+IMPLEMENTATIONS += enchilada
+IMPLEMENTATIONS += taco
+IMPLEMENTATIONS += mpxu
+IMPLEMENTATIONS += excalibur
+IMPLEMENTATIONS += montecarlo
+IMPLEMENTATIONS += serengeti
+IMPLEMENTATIONS += littleneck
+IMPLEMENTATIONS += starcat
+IMPLEMENTATIONS += daktari
+IMPLEMENTATIONS += cherrystone
+IMPLEMENTATIONS += fjlite
+IMPLEMENTATIONS += snowbird
+IMPLEMENTATIONS += schumacher
+IMPLEMENTATIONS += blade
+IMPLEMENTATIONS += boston
+IMPLEMENTATIONS += seattle
+IMPLEMENTATIONS += chicago
+IMPLEMENTATIONS += sunfire
+IMPLEMENTATIONS += lw8
+IMPLEMENTATIONS += makaha
+IMPLEMENTATIONS += opl
+IMPLEMENTATIONS += lw2plus
+
+#
+# machine specific optimization, override default in Makefile.master
+#
+CC_XARCH = -m64 -xarch=sparcvis
+AS_XARCH = -xarch=v9a
+COPTIMIZE = -xO3
+CCMODE = -Xa
+
+CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM)
+CFLAGS += $(CC_XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(EXTRA_CFLAGS)
+CFLAGS += $(XAOPT)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CERRWARN)
+CFLAGS += $(CTF_FLAGS_$(CLASS))
+CFLAGS += $(C99MODE)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CCNOAUTOINLINE)
+CFLAGS += $(CCSTATICSYM)
+CFLAGS += $(CC32BITCALLERS)
+CFLAGS += $(IROPTFLAG)
+CFLAGS += $(CGLOBALSTATIC)
+CFLAGS += -xregs=no%float
+CFLAGS += -xstrconst
+CFLAGS += $(CSOURCEDEBUGFLAGS)
+CFLAGS += $(CUSERFLAGS)
+
+ASFLAGS += $(AS_XARCH)
+
+AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
+
+LINT_KMODS += $(GENUNIX_KMODS)
+
+LINT_DEFS = -m64
+
+#
+# The following must be defined for all implementations:
+#
+# MAPFILE: ld mapfile for the build of kernel/unix.
+# MODSTUBS: Module stubs source file.
+# GENCONST_SRC: genconst.c
+# OFFSETS: offsets.in
+# PLATFORM_OFFSETS: Platform specific mach_offsets.in
+# FDOFFSETS: fd_offsets.in
+#
+MAPFILE = $(UTSBASE)/sun4/conf/Mapfile
+MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
+GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c
+OFFSETS = $(UTSBASE)/sun4/ml/offsets.in
+PLATFORM_OFFSETS = $(UTSBASE)/sun4u/ml/mach_offsets.in
+FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in
+
+#
+# Define the actual specific platforms
+#
+
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU
+
+#
+# Software workarounds for hardware "features"
+#
+
+include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
+
#
-# ident "%Z%%M% %I% %E% SMI"
+# Debugging level
#
+# Special knowledge of which special debugging options effect which
+# file is used to optimize the build if these flags are changed.
+#
+# XXX: The above could possibly be done for more flags and files, but
+# is left as an experiment to the interested reader. Be forewarned,
+# that excessive use could lead to maintenance difficulties.
+#
+# Note: kslice can be enabled for the sun4u, but is disabled by default
+# in all cases.
+#
+
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
+
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
+
+$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG
+$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG
+$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE
+$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0
+
+IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ)
+# comment this out for a non-debug kernel with TRAPTRACE
+#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/
+
+$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)spitfire_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)us3_common_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)us3_cheetah_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)us3_cheetahplus_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)us3_jalapeno_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)opl_olympus_asm.o := DEBUG_DEFS += -DTRAPTRACE
+
+# Comment these out if you don't want dispatcher lock statistics.
+
+#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS
+#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS
+
+# Comment these out if you don't want dispatcher debugging
+
+#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
+ $(OPTION_DEFS)
+GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS)
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
+#
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# the base kernel but should soon become kmods.
+#
+MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Common Drivers (usually pseudo drivers) (/kernel/drv):
+#
+
+#
+# Machine Specific Driver Modules (/kernel/drv):
+#
+# XXX: How many of these are really machine specific?
+#
+DRV_KMODS += bbc_beep
+DRV_KMODS += cpc
+DRV_KMODS += fd
+DRV_KMODS += rootnex sbusmem upa64s zs zsh
+DRV_KMODS += sbus
+DRV_KMODS += pcisch pcipsy simba
+DRV_KMODS += px
+DRV_KMODS += ebus
+DRV_KMODS += su
+DRV_KMODS += tod
+DRV_KMODS += power
+DRV_KMODS += epic
+DRV_KMODS += grbeep
+DRV_KMODS += pcf8584 max1617 seeprom tda8444 pca9556
+DRV_KMODS += ics951601 adm1031
+DRV_KMODS += lm75 ltc1427 pcf8591 pcf8574 ssc050 ssc100
+DRV_KMODS += pic16f819
+DRV_KMODS += pic16f747
+DRV_KMODS += adm1026
+DRV_KMODS += us
+DRV_KMODS += ppm schppm jbusppm
+DRV_KMODS += mc-us3
+DRV_KMODS += mc-us3i
+DRV_KMODS += smbus
+DRV_KMODS += db21554
+DRV_KMODS += gpio_87317
+DRV_KMODS += isadma
+DRV_KMODS += sbbc
+DRV_KMODS += pmubus
+DRV_KMODS += pmugpio
+DRV_KMODS += pmc
+DRV_KMODS += trapstat
+DRV_KMODS += rmc_comm
+DRV_KMODS += rmcadm
+DRV_KMODS += rmclomv
+DRV_KMODS += sf
+DRV_KMODS += nxge
+DRV_KMODS += i2bsc
+DRV_KMODS += mem_cache
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS +=
+
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS +=
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS +=
+
+#
+# Streams Modules (/kernel/strmod):
+#
+STRMOD_KMODS += kb
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS +=
+
+#
+# 'User' Modules (/kernel/misc):
+#
+MISC_KMODS += bignum
+MISC_KMODS += obpsym bootdev vis cpr platmod md5 sha1 i2c_svc
+MISC_KMODS += sbd
+
+MISC_KMODS += opl_cfg
+MISC_KMODS += zuluvm
+MISC_KMODS += gptwo_cpu gptwocfg
+MISC_KMODS += pcie
+
+#
+# Brand modules
+#
+BRAND_KMODS += sn1_brand s10_brand
-UTSTREE=$(UTSBASE)
+#
+# Software Cryptographic Providers (/kernel/crypto):
+#
+CRYPTO_KMODS += aes
+CRYPTO_KMODS += arcfour
+CRYPTO_KMODS += des
+
+#
+# generic-unix module (/kernel/genunix):
+#
+GENUNIX_KMODS += genunix
+
+# 'User' "Modules" excluded from the Full Kernel lint target:
+#
+
+#
+# Modules eXcluded from the product:
+#
+XMODS +=
-include $(UTSBASE)/sun4u/Makefile.sun4u.shared
+#
+# cpu modules
+#
+CPU_KMODS += cheetah cheetahplus jalapeno serrano spitfire hummingbird
+
+#
+# sun4u 'TOD' Modules (/platform/.../kernel/tod):
+#
+TOD_KMODS += todds1287 todds1337 todmostek todstarfire
+TOD_KMODS += todm5819 todblade todbq4802 todsg todopl
+TOD_KMODS += todm5819p_rmc todstarcat
+
+#
+# Performance Counter BackEnd Modules (/usr/kernel/pcbe):
+#
+PCBE_KMODS += us234_pcbe
+PCBE_KMODS += opl_pcbe
diff --git a/usr/src/uts/sun4u/Makefile.sun4u.shared b/usr/src/uts/sun4u/Makefile.sun4u.shared
deleted file mode 100644
index bbab20ce57..0000000000
--- a/usr/src/uts/sun4u/Makefile.sun4u.shared
+++ /dev/null
@@ -1,476 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-#
-# This makefile contains the common definitions for the sun4u unix
-# and all sun4u implementation architecture dependent modules.
-#
-
-#
-# Machine type (implementation architecture):
-#
-PLATFORM = sun4u
-PROMIF = ieee1275
-PSMBASE = $(UTSBASE)/../psm
-
-#
-# uname -m value
-#
-UNAME_M = $(PLATFORM)
-
-#
-# Definitions for the platform-specific /platform directories.
-#
-# PLATFORMS designates those sun4u machines which have no platform
-# specific code.
-#
-# IMPLEMENTATIONS is used to designate sun4u machines which do have
-# platform specific modules (perhaps including their own unix). All
-# code specific to a given implementation resides in the appropriately
-# named subdirectory. This requires these platforms to have their
-# own Makefiles to define ROOT_PLAT_DIRS, USR_PLAT_DIRS, etc.
-#
-# So if we had an implementation named 'foo', we would need the following
-# Makefiles in the foo subdirectory:
-#
-# sun4u/foo/Makefile
-# sun4u/foo/Makefile.foo
-# sun4u/foo/Makefile.targ
-#
-
-#
-# /usr/platform/$(IMPLEMENTED_PLATFORM) is created as a directory that
-# all the $(LINKED_PLATFORMS) link to.
-#
-IMPLEMENTED_PLATFORM = SUNW,Ultra-2
-
-LINKED_PLATFORMS += SUNW,Ultra-30
-LINKED_PLATFORMS += SUNW,Ultra-60
-
-#
-# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list
-# ie. all desktop platforms
-#
-PLATFORMS = $(IMPLEMENTED_PLATFORM)
-PLATFORMS += $(LINKED_PLATFORMS)
-
-ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%)
-USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%)
-
-USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM)
-USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include
-USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin
-USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib
-
-#
-# Welcome to SPARC V9.
-#
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64)
-ALL_BUILDS = $(ALL_BUILDS64)
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
-GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
-
-DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
-DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
-
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln
-
-LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
-LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
-
-#
-# cpu and platform modules need to know how to build their own symcheck module
-#
-PLATMOD = platmod
-PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so
-
-CPUNAME = cpu
-CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so
-
-SYM_MOD = $(OBJS_DIR)/unix.sym
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSBASE)/sun4/Makefile.files
-include $(UTSTREE)/$(PLATFORM)/Makefile.files
-include $(UTSBASE)/sfmmu/Makefile.files
-include $(UTSBASE)/sparc/v9/Makefile.files
-include $(UTSBASE)/sparc/Makefile.files
-include $(UTSTREE)/sun/Makefile.files
-include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files
-include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-# These come after Makefile.uts.
-IMPLEMENTATIONS = tazmo
-IMPLEMENTATIONS += starfire
-IMPLEMENTATIONS += javelin
-IMPLEMENTATIONS += darwin
-IMPLEMENTATIONS += quasar
-IMPLEMENTATIONS += grover
-IMPLEMENTATIONS += enchilada
-IMPLEMENTATIONS += taco
-IMPLEMENTATIONS += mpxu
-IMPLEMENTATIONS += excalibur
-IMPLEMENTATIONS += montecarlo
-IMPLEMENTATIONS += serengeti
-IMPLEMENTATIONS += littleneck
-IMPLEMENTATIONS += starcat
-IMPLEMENTATIONS += daktari
-IMPLEMENTATIONS += cherrystone
-IMPLEMENTATIONS += fjlite
-IMPLEMENTATIONS += snowbird
-IMPLEMENTATIONS += schumacher
-IMPLEMENTATIONS += blade
-IMPLEMENTATIONS += boston
-IMPLEMENTATIONS += seattle
-IMPLEMENTATIONS += chicago
-IMPLEMENTATIONS += sunfire
-IMPLEMENTATIONS += lw8
-IMPLEMENTATIONS += makaha
-IMPLEMENTATIONS += opl
-IMPLEMENTATIONS += lw2plus
-
-#
-# machine specific optimization, override default in Makefile.master
-#
-CC_XARCH = -m64 -xarch=sparcvis
-AS_XARCH = -xarch=v9a
-COPTIMIZE = -xO3
-CCMODE = -Xa
-
-CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM)
-CFLAGS += $(CC_XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(EXTRA_CFLAGS)
-CFLAGS += $(XAOPT)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CERRWARN)
-CFLAGS += $(CTF_FLAGS_$(CLASS))
-CFLAGS += $(C99MODE)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CCNOAUTOINLINE)
-CFLAGS += $(CCSTATICSYM)
-CFLAGS += $(CC32BITCALLERS)
-CFLAGS += $(IROPTFLAG)
-CFLAGS += $(CGLOBALSTATIC)
-CFLAGS += -xregs=no%float
-CFLAGS += -xstrconst
-CFLAGS += $(CSOURCEDEBUGFLAGS)
-CFLAGS += $(CUSERFLAGS)
-
-ASFLAGS += $(AS_XARCH)
-
-AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
-
-LINT_KMODS += $(GENUNIX_KMODS)
-
-LINT_DEFS = -m64
-
-#
-# The following must be defined for all implementations:
-#
-# MAPFILE: ld mapfile for the build of kernel/unix.
-# MODSTUBS: Module stubs source file.
-# GENCONST_SRC: genconst.c
-# OFFSETS: offsets.in
-# PLATFORM_OFFSETS: Platform specific mach_offsets.in
-# FDOFFSETS: fd_offsets.in
-#
-MAPFILE = $(UTSBASE)/sun4/conf/Mapfile
-MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
-GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c
-OFFSETS = $(UTSBASE)/sun4/ml/offsets.in
-PLATFORM_OFFSETS = $(UTSBASE)/sun4u/ml/mach_offsets.in
-FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in
-
-#
-# Define the actual specific platforms
-#
-
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU
-
-#
-# Software workarounds for hardware "features"
-#
-
-include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options effect which
-# file is used to optimize the build if these flags are changed.
-#
-# XXX: The above could possibly be done for more flags and files, but
-# is left as an experiment to the interested reader. Be forewarned,
-# that excessive use could lead to maintenance difficulties.
-#
-# Note: kslice can be enabled for the sun4u, but is disabled by default
-# in all cases.
-#
-
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG
-$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG
-$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE
-$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0
-
-IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ)
-# comment this out for a non-debug kernel with TRAPTRACE
-#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/
-
-$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)spitfire_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)us3_common_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)us3_cheetah_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)us3_cheetahplus_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)us3_jalapeno_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)opl_olympus_asm.o := DEBUG_DEFS += -DTRAPTRACE
-
-# Comment these out if you don't want dispatcher lock statistics.
-
-#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS
-#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS
-
-# Comment these out if you don't want dispatcher debugging
-
-#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
- $(OPTION_DEFS)
-GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS)
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# the base kernel but should soon become kmods.
-#
-MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Common Drivers (usually pseudo drivers) (/kernel/drv):
-#
-
-#
-# Machine Specific Driver Modules (/kernel/drv):
-#
-# XXX: How many of these are really machine specific?
-#
-DRV_KMODS += bbc_beep
-DRV_KMODS += cpc
-DRV_KMODS += fd
-DRV_KMODS += rootnex sbusmem upa64s zs zsh
-DRV_KMODS += sbus
-DRV_KMODS += pcisch pcipsy simba
-DRV_KMODS += px
-DRV_KMODS += ebus
-DRV_KMODS += su
-DRV_KMODS += tod
-DRV_KMODS += power
-DRV_KMODS += epic
-DRV_KMODS += grbeep
-DRV_KMODS += pcf8584 max1617 seeprom tda8444 pca9556
-DRV_KMODS += ics951601 adm1031
-DRV_KMODS += lm75 ltc1427 pcf8591 pcf8574 ssc050 ssc100
-DRV_KMODS += pic16f819
-DRV_KMODS += pic16f747
-DRV_KMODS += adm1026
-DRV_KMODS += us
-DRV_KMODS += ppm schppm jbusppm
-DRV_KMODS += mc-us3
-DRV_KMODS += mc-us3i
-DRV_KMODS += smbus
-DRV_KMODS += db21554
-DRV_KMODS += gpio_87317
-DRV_KMODS += isadma
-DRV_KMODS += sbbc
-DRV_KMODS += pmubus
-DRV_KMODS += pmugpio
-DRV_KMODS += pmc
-DRV_KMODS += trapstat
-DRV_KMODS += rmc_comm
-DRV_KMODS += rmcadm
-DRV_KMODS += rmclomv
-DRV_KMODS += sf
-DRV_KMODS += nxge
-DRV_KMODS += i2bsc
-DRV_KMODS += mem_cache
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS +=
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS +=
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS +=
-
-#
-# Streams Modules (/kernel/strmod):
-#
-STRMOD_KMODS += kb
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS +=
-
-#
-# 'User' Modules (/kernel/misc):
-#
-MISC_KMODS += bignum
-MISC_KMODS += obpsym bootdev vis cpr platmod md5 sha1 i2c_svc
-MISC_KMODS += sbd
-
-MISC_KMODS += opl_cfg
-MISC_KMODS += zuluvm
-MISC_KMODS += gptwo_cpu gptwocfg
-MISC_KMODS += pcie
-
-#
-# Brand modules
-#
-BRAND_KMODS += sn1_brand s10_brand
-
-#
-# Software Cryptographic Providers (/kernel/crypto):
-#
-CRYPTO_KMODS += aes
-CRYPTO_KMODS += arcfour
-CRYPTO_KMODS += des
-
-#
-# generic-unix module (/kernel/genunix):
-#
-GENUNIX_KMODS += genunix
-
-# 'User' "Modules" excluded from the Full Kernel lint target:
-#
-
-#
-# Modules eXcluded from the product:
-#
-XMODS +=
-
-#
-# cpu modules
-#
-CPU_KMODS += cheetah cheetahplus jalapeno serrano spitfire hummingbird
-
-#
-# sun4u 'TOD' Modules (/platform/.../kernel/tod):
-#
-TOD_KMODS += todds1287 todds1337 todmostek todstarfire
-TOD_KMODS += todm5819 todblade todbq4802 todsg todopl
-TOD_KMODS += todm5819p_rmc todstarcat
-
-#
-# Performance Counter BackEnd Modules (/usr/kernel/pcbe):
-#
-PCBE_KMODS += us234_pcbe
-PCBE_KMODS += opl_pcbe
diff --git a/usr/src/uts/sun4u/Makefile.targ b/usr/src/uts/sun4u/Makefile.targ
index e89bccc6a0..e6aaede6f6 100644
--- a/usr/src/uts/sun4u/Makefile.targ
+++ b/usr/src/uts/sun4u/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,12 +19,30 @@
#
# CDDL HEADER END
#
+#
+# uts/sun4u/Makefile.targ
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the sun4u "implementation architecture".
#
-UTSTREE=$(UTSBASE)
+#
+# Targets for all implementations:
+#
+include $(UTSBASE)/Makefile.targ
-include $(UTSBASE)/sun4u/Makefile.targ.shared
+#
+# Target set for sun4u (order is not important, as it is with the
+# isomorphic Makefile.files set).
+#
+include $(UTSBASE)/sun4/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.rules
+include $(UTSBASE)/sfmmu/Makefile.rules
+include $(UTSBASE)/sparc/v9/Makefile.rules
+include $(UTSBASE)/sparc/Makefile.rules
+include $(UTSBASE)/sun/Makefile.rules
+include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules
+include $(PSMBASE)/promif/$(PROMIF)/sun4u/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
diff --git a/usr/src/uts/sun4u/Makefile.targ.shared b/usr/src/uts/sun4u/Makefile.targ.shared
deleted file mode 100644
index 65101b7ffd..0000000000
--- a/usr/src/uts/sun4u/Makefile.targ.shared
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/sun4u/Makefile.targ
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the sun4u "implementation architecture".
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for sun4u (order is not important, as it is with the
-# isomorphic Makefile.files set).
-#
-include $(UTSBASE)/sun4/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.rules
-include $(UTSBASE)/sfmmu/Makefile.rules
-include $(UTSBASE)/sparc/v9/Makefile.rules
-include $(UTSBASE)/sparc/Makefile.rules
-include $(UTSTREE)/sun/Makefile.rules
-include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules
-include $(PSMBASE)/promif/$(PROMIF)/sun4u/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules
diff --git a/usr/src/uts/sun4u/blade/Makefile.blade b/usr/src/uts/sun4u/blade/Makefile.blade
index 011539cd3c..0ccf460698 100644
--- a/usr/src/uts/sun4u/blade/Makefile.blade
+++ b/usr/src/uts/sun4u/blade/Makefile.blade
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,105 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Global definitions for sun4u jbos-blade implementation specific modules.
+#
+
+#
+# Define directories.
+#
+ROOT_BLADE_DIR = $(ROOT_PLAT_DIR)/SUNW,Serverblade1
+ROOT_BLADE_MOD_DIR = $(ROOT_BLADE_DIR)/kernel
+ROOT_BLADE_MISC_DIR_32 = $(ROOT_BLADE_DIR)/kernel/misc
+ROOT_BLADE_MISC_DIR_64 = $(ROOT_BLADE_MISC_DIR_32)/$(SUBDIR64)
+ROOT_BLADE_KERN_DIR_32 = $(ROOT_BLADE_MOD_DIR)
+ROOT_BLADE_KERN_DIR_64 = $(ROOT_BLADE_MOD_DIR)/$(SUBDIR64)
+ROOT_BLADE_DRV_DIR_32 = $(ROOT_BLADE_MOD_DIR)/drv
+ROOT_BLADE_DRV_DIR_64 = $(ROOT_BLADE_MOD_DIR)/drv/$(SUBDIR64)
+
+ROOT_BLADE_KERN_DIR = $(ROOT_BLADE_KERN_DIR_$(CLASS))
+ROOT_BLADE_DRV_DIR = $(ROOT_BLADE_DRV_DIR_$(CLASS))
+ROOT_BLADE_MISC_DIR = $(ROOT_BLADE_MISC_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_BLADE_MOD_DIR)
+ROOT_PLAT_MISC_DIRS += $(ROOT_BLADE_MISC_DIR)
+
+
+USR_SUN4U_PLAT_DIR = $(USR_PLAT_DIR)/sun4u
+USR_BLADE_DIR = $(USR_PLAT_DIR)/SUNW,Serverblade1
+USR_BLADE_INC_DIR = $(USR_BLADE_DIR)/include
+USR_BLADE_ISYS_DIR = $(USR_BLADE_INC_DIR)/sys
+USR_BLADE_SBIN_DIR = $(USR_BLADE_DIR)/sbin
+USR_BLADE_LIB_DIR = $(USR_BLADE_DIR)/lib
+
+
+BLADE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
+
+
+# Define Objects
+#
+BLADE_OBJS = blade.o
+
#
+# Option conf file
+BLADE_OPTION = options
-UTSTREE=$(UTSBASE)
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
-include $(UTSBASE)/sun4u/blade/Makefile.blade.shared
+include $(UTSBASE)/sun4u/blade/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules (must come after Makefile.sun4u).
+#
+BLADE_KMODS = platmod
+BLADE_KMODS += bscbus
+BLADE_KMODS += bscv
+
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
+LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lunix.ln
+GEN_LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
+
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS += -D$(PLATFORM) -D_MACHDEP -DSFMMU
+
+#
+# Define for inline pre-processing since
+# cpp not smart about v9 yet.
+#
+#CPP_DEFS_32 =
+#CPP_DEFS_64 = -D__sparcv9
+#CPP_DEFS = $(CPP_DEFS_$(CLASS))
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/blade/Makefile.blade.shared b/usr/src/uts/sun4u/blade/Makefile.blade.shared
deleted file mode 100644
index 366e627d0c..0000000000
--- a/usr/src/uts/sun4u/blade/Makefile.blade.shared
+++ /dev/null
@@ -1,122 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Global definitions for sun4u jbos-blade implementation specific modules.
-#
-
-#
-# Define directories.
-#
-ROOT_BLADE_DIR = $(ROOT_PLAT_DIR)/SUNW,Serverblade1
-ROOT_BLADE_MOD_DIR = $(ROOT_BLADE_DIR)/kernel
-ROOT_BLADE_MISC_DIR_32 = $(ROOT_BLADE_DIR)/kernel/misc
-ROOT_BLADE_MISC_DIR_64 = $(ROOT_BLADE_MISC_DIR_32)/$(SUBDIR64)
-ROOT_BLADE_KERN_DIR_32 = $(ROOT_BLADE_MOD_DIR)
-ROOT_BLADE_KERN_DIR_64 = $(ROOT_BLADE_MOD_DIR)/$(SUBDIR64)
-ROOT_BLADE_DRV_DIR_32 = $(ROOT_BLADE_MOD_DIR)/drv
-ROOT_BLADE_DRV_DIR_64 = $(ROOT_BLADE_MOD_DIR)/drv/$(SUBDIR64)
-
-ROOT_BLADE_KERN_DIR = $(ROOT_BLADE_KERN_DIR_$(CLASS))
-ROOT_BLADE_DRV_DIR = $(ROOT_BLADE_DRV_DIR_$(CLASS))
-ROOT_BLADE_MISC_DIR = $(ROOT_BLADE_MISC_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_BLADE_MOD_DIR)
-ROOT_PLAT_MISC_DIRS += $(ROOT_BLADE_MISC_DIR)
-
-
-USR_SUN4U_PLAT_DIR = $(USR_PLAT_DIR)/sun4u
-USR_BLADE_DIR = $(USR_PLAT_DIR)/SUNW,Serverblade1
-USR_BLADE_INC_DIR = $(USR_BLADE_DIR)/include
-USR_BLADE_ISYS_DIR = $(USR_BLADE_INC_DIR)/sys
-USR_BLADE_SBIN_DIR = $(USR_BLADE_DIR)/sbin
-USR_BLADE_LIB_DIR = $(USR_BLADE_DIR)/lib
-
-
-BLADE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
-
-
-# Define Objects
-#
-BLADE_OBJS = blade.o
-
-#
-# Option conf file
-BLADE_OPTION = options
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-
-include $(UTSTREE)/sun4u/blade/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u).
-#
-BLADE_KMODS = platmod
-BLADE_KMODS += bscbus
-BLADE_KMODS += bscv
-
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
-LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lunix.ln
-GEN_LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
-
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS += -D$(PLATFORM) -D_MACHDEP -DSFMMU
-
-#
-# Define for inline pre-processing since
-# cpp not smart about v9 yet.
-#
-#CPP_DEFS_32 =
-#CPP_DEFS_64 = -D__sparcv9
-#CPP_DEFS = $(CPP_DEFS_$(CLASS))
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/blade/Makefile.targ b/usr/src/uts/sun4u/blade/Makefile.targ
index 13257768ec..c1982355a9 100644
--- a/usr/src/uts/sun4u/blade/Makefile.targ
+++ b/usr/src/uts/sun4u/blade/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,63 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Common targets for sun4u jbos-blade implementation specific modules.
#
-UTSTREE=$(UTSBASE)
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
+#
+$(ROOT_BLADE_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_BLADE_MOD_DIR): $(ROOT_BLADE_DIR)
+ -$(INS.dir)
+
+$(ROOT_BLADE_DRV_DIR_32): $(ROOT_BLADE_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_BLADE_DRV_DIR_64): $(ROOT_BLADE_DRV_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_BLADE_MISC_DIR_32): $(ROOT_BLADE_MOD_DIR)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/blade/Makefile.targ.shared
+$(ROOT_BLADE_MISC_DIR_64): $(ROOT_BLADE_MISC_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_BLADE_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MOD_DIR) FRC
+ $(INS.file)
+
+$(ROOT_BLADE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_BLADE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_DRV_DIR) FRC
+ $(INS.file)
+
+$(USR_BLADE_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_BLADE_INC_DIR): $(USR_BLADE_DIR)
+ -$(INS.slink4)
+
+$(USR_BLADE_ISYS_DIR): $(USR_BLADE_INC_DIR)
+ -$(INS.dir)
+
+$(USR_BLADE_SBIN_DIR): $(USR_BLADE_DIR)
+ $(INS.slink5)
+
+$(USR_BLADE_LIB_DIR): $(USR_BLADE_DIR)
+ -$(INS.dir)
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/blade/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/blade/Makefile.targ.shared b/usr/src/uts/sun4u/blade/Makefile.targ.shared
deleted file mode 100644
index a99bf60bcd..0000000000
--- a/usr/src/uts/sun4u/blade/Makefile.targ.shared
+++ /dev/null
@@ -1,80 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Common targets for sun4u jbos-blade implementation specific modules.
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_BLADE_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_BLADE_MOD_DIR): $(ROOT_BLADE_DIR)
- -$(INS.dir)
-
-$(ROOT_BLADE_DRV_DIR_32): $(ROOT_BLADE_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_BLADE_DRV_DIR_64): $(ROOT_BLADE_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_BLADE_MISC_DIR_32): $(ROOT_BLADE_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_BLADE_MISC_DIR_64): $(ROOT_BLADE_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_BLADE_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MOD_DIR) FRC
- $(INS.file)
-
-$(ROOT_BLADE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_BLADE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_DRV_DIR) FRC
- $(INS.file)
-
-$(USR_BLADE_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_BLADE_INC_DIR): $(USR_BLADE_DIR)
- -$(INS.slink4)
-
-$(USR_BLADE_ISYS_DIR): $(USR_BLADE_INC_DIR)
- -$(INS.dir)
-
-$(USR_BLADE_SBIN_DIR): $(USR_BLADE_DIR)
- $(INS.slink5)
-
-$(USR_BLADE_LIB_DIR): $(USR_BLADE_DIR)
- -$(INS.dir)
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/blade/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/grover/Makefile.grover b/usr/src/uts/sun4u/grover/Makefile.grover
index 1fc9316c47..cd1f23c48c 100644
--- a/usr/src/uts/sun4u/grover/Makefile.grover
+++ b/usr/src/uts/sun4u/grover/Makefile.grover
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,67 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# uts/sun4u/grover/Makefile.grover
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Global definitions for sun4u implementation specific modules.
+#
+
+#
+# Define directories.
+#
+ROOT_GROVER_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Blade-100
+ROOT_GROVER_MOD_DIR = $(ROOT_GROVER_DIR)/kernel
+
+ROOT_GROVER_MISC_DIR_32 = $(ROOT_GROVER_MOD_DIR)/misc
+ROOT_GROVER_MISC_DIR_64 = $(ROOT_GROVER_MISC_DIR_32)/$(SUBDIR64)
+ROOT_GROVER_DRV_DIR_32 = $(ROOT_GROVER_MOD_DIR)/drv
+ROOT_GROVER_DRV_DIR_64 = $(ROOT_GROVER_DRV_DIR_32)/$(SUBDIR64)
+
+ROOT_GROVER_MISC_DIR = $(ROOT_GROVER_MISC_DIR_$(CLASS))
+ROOT_GROVER_DRV_DIR = $(ROOT_GROVER_DRV_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_GROVER_MOD_DIR)
+ROOT_PLAT_MISC_DIRS += $(ROOT_GROVER_MISC_DIR)
+
+USR_GROVER_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Blade-100
+USR_GROVER_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM)
+USR_GROVER_INC_DIR = $(USR_GROVER_DIR)/include
+USR_GROVER_ISYS_DIR = $(USR_GROVER_INC_DIR)/sys
+USR_GROVER_SBIN_DIR = $(USR_GROVER_DIR)/sbin
+USR_GROVER_LIB_DIR = $(USR_GROVER_DIR)/lib
+
+
+GROVER_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/grover/lint-libs/$(OBJS_DIR)
+
+#
+# Define objects.
#
+GROVER_OBJS = grover.o
-UTSTREE=$(UTSBASE)
+include $(UTSBASE)/sun4u/grover/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
-include $(UTSBASE)/sun4u/grover/Makefile.grover.shared
+#
+# Define modules (must come after Makefile.sun4u).
+#
+GROVER_KMODS = platmod
+GROVER_KMODS += grfans
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/grover/Makefile.grover.shared b/usr/src/uts/sun4u/grover/Makefile.grover.shared
deleted file mode 100644
index 6a19aa1ef5..0000000000
--- a/usr/src/uts/sun4u/grover/Makefile.grover.shared
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/sun4u/grover/Makefile.grover
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Global definitions for sun4u implementation specific modules.
-#
-
-#
-# Define directories.
-#
-ROOT_GROVER_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Blade-100
-ROOT_GROVER_MOD_DIR = $(ROOT_GROVER_DIR)/kernel
-
-ROOT_GROVER_MISC_DIR_32 = $(ROOT_GROVER_MOD_DIR)/misc
-ROOT_GROVER_MISC_DIR_64 = $(ROOT_GROVER_MISC_DIR_32)/$(SUBDIR64)
-ROOT_GROVER_DRV_DIR_32 = $(ROOT_GROVER_MOD_DIR)/drv
-ROOT_GROVER_DRV_DIR_64 = $(ROOT_GROVER_DRV_DIR_32)/$(SUBDIR64)
-
-ROOT_GROVER_MISC_DIR = $(ROOT_GROVER_MISC_DIR_$(CLASS))
-ROOT_GROVER_DRV_DIR = $(ROOT_GROVER_DRV_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_GROVER_MOD_DIR)
-ROOT_PLAT_MISC_DIRS += $(ROOT_GROVER_MISC_DIR)
-
-USR_GROVER_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Blade-100
-USR_GROVER_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM)
-USR_GROVER_INC_DIR = $(USR_GROVER_DIR)/include
-USR_GROVER_ISYS_DIR = $(USR_GROVER_INC_DIR)/sys
-USR_GROVER_SBIN_DIR = $(USR_GROVER_DIR)/sbin
-USR_GROVER_LIB_DIR = $(USR_GROVER_DIR)/lib
-
-
-GROVER_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/grover/lint-libs/$(OBJS_DIR)
-
-#
-# Define objects.
-#
-GROVER_OBJS = grover.o
-
-include $(UTSTREE)/sun4u/grover/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u).
-#
-GROVER_KMODS = platmod
-GROVER_KMODS += grfans
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/grover/Makefile.targ b/usr/src/uts/sun4u/grover/Makefile.targ
index be9826f382..b120075a57 100644
--- a/usr/src/uts/sun4u/grover/Makefile.targ
+++ b/usr/src/uts/sun4u/grover/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,63 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u Grover implementation specific modules.
#
-UTSTREE=$(UTSBASE)
+.KEEP_STATE:
+
+IMPLEMENTED_PLATFORM = SUNW,Sun-Blade-100
+
+#
+# Rules for implementation subdirectories.
+#
+$(ROOT_GROVER_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_GROVER_MOD_DIR): $(ROOT_GROVER_DIR)
+ -$(INS.dir)
+
+$(ROOT_GROVER_MISC_DIR_32): $(ROOT_GROVER_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_GROVER_MISC_DIR_64): $(ROOT_GROVER_MISC_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/grover/Makefile.targ.shared
+$(ROOT_GROVER_DRV_DIR_32): $(ROOT_GROVER_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_GROVER_DRV_DIR_64): $(ROOT_GROVER_DRV_DIR_32)
+ -$(INS.dir)
+
+$(USR_GROVER_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_GROVER_INC_DIR): $(USR_GROVER_DIR)
+ -$(INS.slink4)
+
+$(USR_GROVER_SBIN_DIR): $(USR_GROVER_DIR)
+ -$(INS.slink5)
+
+$(USR_GROVER_LIB_DIR): $(USR_GROVER_DIR)
+ -$(INS.dir)
+
+$(ROOT_GROVER_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MOD_DIR) FRC
+ $(INS.file)
+
+$(ROOT_GROVER_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_GROVER_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/grover/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/grover/Makefile.targ.shared b/usr/src/uts/sun4u/grover/Makefile.targ.shared
deleted file mode 100644
index 90839a3355..0000000000
--- a/usr/src/uts/sun4u/grover/Makefile.targ.shared
+++ /dev/null
@@ -1,80 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u Grover implementation specific modules.
-#
-
-.KEEP_STATE:
-
-IMPLEMENTED_PLATFORM = SUNW,Sun-Blade-100
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_GROVER_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_GROVER_MOD_DIR): $(ROOT_GROVER_DIR)
- -$(INS.dir)
-
-$(ROOT_GROVER_MISC_DIR_32): $(ROOT_GROVER_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_GROVER_MISC_DIR_64): $(ROOT_GROVER_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_GROVER_DRV_DIR_32): $(ROOT_GROVER_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_GROVER_DRV_DIR_64): $(ROOT_GROVER_DRV_DIR_32)
- -$(INS.dir)
-
-$(USR_GROVER_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_GROVER_INC_DIR): $(USR_GROVER_DIR)
- -$(INS.slink4)
-
-$(USR_GROVER_SBIN_DIR): $(USR_GROVER_DIR)
- -$(INS.slink5)
-
-$(USR_GROVER_LIB_DIR): $(USR_GROVER_DIR)
- -$(INS.dir)
-
-$(ROOT_GROVER_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MOD_DIR) FRC
- $(INS.file)
-
-$(ROOT_GROVER_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_GROVER_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/grover/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/javelin/Makefile.javelin b/usr/src/uts/sun4u/javelin/Makefile.javelin
index 460c4bcccc..e36b2ce589 100644
--- a/usr/src/uts/sun4u/javelin/Makefile.javelin
+++ b/usr/src/uts/sun4u/javelin/Makefile.javelin
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,59 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+
+#
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This makefile contains the common definitions for the
+# sun4u Javelin system dependent modules.
+#
+
+#
+# Define directories
#
+ROOT_JAVELIN_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-250
+ROOT_JAVELIN_MOD_DIR = $(ROOT_JAVELIN_DIR)/kernel
+ROOT_JAVELIN_KERN_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)
+ROOT_JAVELIN_KERN_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/$(SUBDIR64)
+ROOT_JAVELIN_DRV_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/drv
+ROOT_JAVELIN_DRV_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_JAVELIN_MISC_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/misc
+ROOT_JAVELIN_MISC_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/misc/$(SUBDIR64)
+
+ROOT_JAVELIN_KERN_DIR = $(ROOT_JAVELIN_KERN_DIR_$(CLASS))
+ROOT_JAVELIN_MISC_DIR = $(ROOT_JAVELIN_MISC_DIR_$(CLASS))
+ROOT_JAVELIN_DRV_DIR = $(ROOT_JAVELIN_DRV_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_JAVELIN_MOD_DIR)
+ROOT_PLAT_MISC_DIRS += $(ROOT_JAVELIN_MISC_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_JAVELIN_MISC_DIR_32)
+ROOT_PLAT_DRV_DIRS = $(ROOT_JAVELIN_DRV_DIR)
+
+USR_JAVELIN_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-250
+USR_JAVELIN_INC_DIR = $(USR_JAVELIN_DIR)/include
+USR_JAVELIN_SBIN_DIR = $(USR_JAVELIN_DIR)/sbin
+USR_JAVELIN_LIB_DIR = $(USR_JAVELIN_DIR)/lib
+USR_JAVELIN_ISYS_DIR = $(USR_JAVELIN_INC_DIR)/sys
+
+JAVELIN_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/javelin/lint-libs/$(OBJS_DIR)
-UTSTREE=$(UTSBASE)
+#
+# Define objects.
+#
+JAVELIN_OBJS = javelin.o
+
+include $(UTSBASE)/sun4u/javelin/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules (must come after Makefile.sun4u)
+#
+JAVELIN_KMODS = platmod
+JAVELIN_KMODS += envctrltwo
-include $(UTSBASE)/sun4u/javelin/Makefile.javelin.shared
diff --git a/usr/src/uts/sun4u/javelin/Makefile.javelin.shared b/usr/src/uts/sun4u/javelin/Makefile.javelin.shared
deleted file mode 100644
index 53e59004cd..0000000000
--- a/usr/src/uts/sun4u/javelin/Makefile.javelin.shared
+++ /dev/null
@@ -1,76 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# This makefile contains the common definitions for the
-# sun4u Javelin system dependent modules.
-#
-
-#
-# Define directories
-#
-ROOT_JAVELIN_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-250
-ROOT_JAVELIN_MOD_DIR = $(ROOT_JAVELIN_DIR)/kernel
-ROOT_JAVELIN_KERN_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)
-ROOT_JAVELIN_KERN_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/$(SUBDIR64)
-ROOT_JAVELIN_DRV_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/drv
-ROOT_JAVELIN_DRV_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_JAVELIN_MISC_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/misc
-ROOT_JAVELIN_MISC_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/misc/$(SUBDIR64)
-
-ROOT_JAVELIN_KERN_DIR = $(ROOT_JAVELIN_KERN_DIR_$(CLASS))
-ROOT_JAVELIN_MISC_DIR = $(ROOT_JAVELIN_MISC_DIR_$(CLASS))
-ROOT_JAVELIN_DRV_DIR = $(ROOT_JAVELIN_DRV_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_JAVELIN_MOD_DIR)
-ROOT_PLAT_MISC_DIRS += $(ROOT_JAVELIN_MISC_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_JAVELIN_MISC_DIR_32)
-ROOT_PLAT_DRV_DIRS = $(ROOT_JAVELIN_DRV_DIR)
-
-USR_JAVELIN_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-250
-USR_JAVELIN_INC_DIR = $(USR_JAVELIN_DIR)/include
-USR_JAVELIN_SBIN_DIR = $(USR_JAVELIN_DIR)/sbin
-USR_JAVELIN_LIB_DIR = $(USR_JAVELIN_DIR)/lib
-USR_JAVELIN_ISYS_DIR = $(USR_JAVELIN_INC_DIR)/sys
-
-JAVELIN_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/javelin/lint-libs/$(OBJS_DIR)
-
-#
-# Define objects.
-#
-JAVELIN_OBJS = javelin.o
-
-include $(UTSTREE)/sun4u/javelin/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u)
-#
-JAVELIN_KMODS = platmod
-JAVELIN_KMODS += envctrltwo
-
diff --git a/usr/src/uts/sun4u/javelin/Makefile.targ b/usr/src/uts/sun4u/javelin/Makefile.targ
index 6b345942e6..792bf742c9 100644
--- a/usr/src/uts/sun4u/javelin/Makefile.targ
+++ b/usr/src/uts/sun4u/javelin/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,65 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u Javelin implementation specific modules.
+#
+#
+
+IMPLEMENTED_PLATFORM = SUNW,Ultra-250
+
+#
+# Platform targets
#
+$(ROOT_JAVELIN_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_JAVELIN_MOD_DIR): $(ROOT_JAVELIN_DIR)
+ -$(INS.dir)
+
+$(ROOT_JAVELIN_DRV_DIR_32): $(ROOT_JAVELIN_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_JAVELIN_DRV_DIR_64): $(ROOT_JAVELIN_DRV_DIR_32)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_JAVELIN_MISC_DIR_32): $(ROOT_JAVELIN_MOD_DIR)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/javelin/Makefile.targ.shared
+$(ROOT_JAVELIN_MISC_DIR_64): $(ROOT_JAVELIN_MISC_DIR_32)
+ -$(INS.dir)
+
+$(USR_JAVELIN_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_JAVELIN_INC_DIR): $(USR_JAVELIN_DIR)
+ -$(INS.slink4)
+
+$(USR_JAVELIN_SBIN_DIR): $(USR_JAVELIN_DIR)
+ -$(INS.slink5)
+
+$(USR_JAVELIN_LIB_DIR): $(USR_JAVELIN_DIR)
+ -$(INS.dir)
+
+$(USR_JAVELIN_ISYS_DIR): $(USR_JAVELIN_INC_DIR)
+ -$(INS.dir)
+
+$(ROOT_JAVELIN_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MOD_DIR) FRC
+ $(INS.file)
+
+$(ROOT_JAVELIN_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_JAVELIN_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/javelin/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/javelin/Makefile.targ.shared b/usr/src/uts/sun4u/javelin/Makefile.targ.shared
deleted file mode 100644
index 8cc5019975..0000000000
--- a/usr/src/uts/sun4u/javelin/Makefile.targ.shared
+++ /dev/null
@@ -1,82 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u Javelin implementation specific modules.
-#
-#
-
-IMPLEMENTED_PLATFORM = SUNW,Ultra-250
-
-#
-# Platform targets
-#
-$(ROOT_JAVELIN_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_MOD_DIR): $(ROOT_JAVELIN_DIR)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_DRV_DIR_32): $(ROOT_JAVELIN_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_DRV_DIR_64): $(ROOT_JAVELIN_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_MISC_DIR_32): $(ROOT_JAVELIN_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_MISC_DIR_64): $(ROOT_JAVELIN_MISC_DIR_32)
- -$(INS.dir)
-
-$(USR_JAVELIN_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_JAVELIN_INC_DIR): $(USR_JAVELIN_DIR)
- -$(INS.slink4)
-
-$(USR_JAVELIN_SBIN_DIR): $(USR_JAVELIN_DIR)
- -$(INS.slink5)
-
-$(USR_JAVELIN_LIB_DIR): $(USR_JAVELIN_DIR)
- -$(INS.dir)
-
-$(USR_JAVELIN_ISYS_DIR): $(USR_JAVELIN_INC_DIR)
- -$(INS.dir)
-
-$(ROOT_JAVELIN_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MOD_DIR) FRC
- $(INS.file)
-
-$(ROOT_JAVELIN_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_JAVELIN_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/javelin/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo
index e0a8f7bcae..91bc30f4c0 100644
--- a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo
+++ b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,81 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This makefile contains the common definitions for the
+# sun4u MonteCarlo system dependent modules.
+#
+
+#
+# Define directories.
+#
+ROOT_MONTECARLO_DIR = $(ROOT_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract
+ROOT_MONTECARLO_MOD_DIR = $(ROOT_MONTECARLO_DIR)/kernel
+
+ROOT_MONTECARLO_KERN_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)
+ROOT_MONTECARLO_KERN_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/$(SUBDIR64)
+ROOT_MONTECARLO_DRV_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/drv
+ROOT_MONTECARLO_DACF_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/dacf
+ROOT_MONTECARLO_DACF_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/dacf/$(SUBDIR64)
+ROOT_MONTECARLO_DRV_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_MONTECARLO_MISC_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/misc
+ROOT_MONTECARLO_MISC_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/misc/$(SUBDIR64)
+
+ROOT_MONTECARLO_KERN_DIR = $(ROOT_MONTECARLO_KERN_DIR_$(CLASS))
+ROOT_MONTECARLO_MISC_DIR = $(ROOT_MONTECARLO_MISC_DIR_$(CLASS))
+ROOT_MONTECARLO_DRV_DIR = $(ROOT_MONTECARLO_DRV_DIR_$(CLASS))
+ROOT_MONTECARLO_DACF_DIR = $(ROOT_MONTECARLO_DACF_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_MONTECARLO_MOD_DIR)
+ROOT_PLAT_MISC_DIRS += $(ROOT_MONTECARLO_MISC_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_MONTECARLO_MISC_DIR_32)
+ROOT_PLAT_DRV_DIRS = $(ROOT_MONTECARLO_DRV_DIR)
+ROOT_PLAT_DACF_DIRS = $(ROOT_MONTECARLO_DACF_DIR)
+
+USR_MONTECARLO_DIR = $(USR_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract
+USR_MONTECARLO_INC_DIR = $(USR_MONTECARLO_DIR)/include
+USR_MONTECARLO_SBIN_DIR = $(USR_MONTECARLO_DIR)/sbin
+USR_MONTECARLO_LIB_DIR = $(USR_MONTECARLO_DIR)/lib
+USR_MONTECARLO_ISYS_DIR = $(USR_MONTECARLO_INC_DIR)/sys
+
+MONTECARLO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/montecarlo/lint-libs/$(OBJS_DIR)
+
+#
+# Define objects.
+#
+
+include $(UTSBASE)/sun4u/montecarlo/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules
#
+MONTECARLO_KMODS = acebus pcf8574_nct pcf8591_nct scsb ttymux_dacf
-UTSTREE=$(UTSBASE)
+#
+# we need the official MONTECARLO name here, and for the sun4u/montecarlo
+# directory and Makefile.montecarlo
+# for now we'll use montecarlo for workspace file/dir names
+# and NORDICA_CP1500 for conditional code compiles, since that's our current
+# test platform
+#
+MACHINE_DEFS += -DNORDICA_CP1500
-include $(UTSBASE)/sun4u/montecarlo/Makefile.montecarlo.shared
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared
deleted file mode 100644
index 826d563cb3..0000000000
--- a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared
+++ /dev/null
@@ -1,100 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# This makefile contains the common definitions for the
-# sun4u MonteCarlo system dependent modules.
-#
-
-#
-# Define directories.
-#
-ROOT_MONTECARLO_DIR = $(ROOT_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract
-ROOT_MONTECARLO_MOD_DIR = $(ROOT_MONTECARLO_DIR)/kernel
-
-ROOT_MONTECARLO_KERN_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)
-ROOT_MONTECARLO_KERN_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/$(SUBDIR64)
-ROOT_MONTECARLO_DRV_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/drv
-ROOT_MONTECARLO_DACF_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/dacf
-ROOT_MONTECARLO_DACF_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/dacf/$(SUBDIR64)
-ROOT_MONTECARLO_DRV_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_MONTECARLO_MISC_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/misc
-ROOT_MONTECARLO_MISC_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/misc/$(SUBDIR64)
-
-ROOT_MONTECARLO_KERN_DIR = $(ROOT_MONTECARLO_KERN_DIR_$(CLASS))
-ROOT_MONTECARLO_MISC_DIR = $(ROOT_MONTECARLO_MISC_DIR_$(CLASS))
-ROOT_MONTECARLO_DRV_DIR = $(ROOT_MONTECARLO_DRV_DIR_$(CLASS))
-ROOT_MONTECARLO_DACF_DIR = $(ROOT_MONTECARLO_DACF_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_MONTECARLO_MOD_DIR)
-ROOT_PLAT_MISC_DIRS += $(ROOT_MONTECARLO_MISC_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_MONTECARLO_MISC_DIR_32)
-ROOT_PLAT_DRV_DIRS = $(ROOT_MONTECARLO_DRV_DIR)
-ROOT_PLAT_DACF_DIRS = $(ROOT_MONTECARLO_DACF_DIR)
-
-USR_MONTECARLO_DIR = $(USR_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract
-USR_MONTECARLO_INC_DIR = $(USR_MONTECARLO_DIR)/include
-USR_MONTECARLO_SBIN_DIR = $(USR_MONTECARLO_DIR)/sbin
-USR_MONTECARLO_LIB_DIR = $(USR_MONTECARLO_DIR)/lib
-USR_MONTECARLO_ISYS_DIR = $(USR_MONTECARLO_INC_DIR)/sys
-
-MONTECARLO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/montecarlo/lint-libs/$(OBJS_DIR)
-
-#
-# Define objects.
-#
-
-include $(UTSTREE)/sun4u/montecarlo/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules
-#
-MONTECARLO_KMODS = acebus pcf8574_nct pcf8591_nct scsb ttymux_dacf
-
-#
-# we need the official MONTECARLO name here, and for the sun4u/montecarlo
-# directory and Makefile.montecarlo
-# for now we'll use montecarlo for workspace file/dir names
-# and NORDICA_CP1500 for conditional code compiles, since that's our current
-# test platform
-#
-MACHINE_DEFS += -DNORDICA_CP1500
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.targ b/usr/src/uts/sun4u/montecarlo/Makefile.targ
index 82741e5359..481d036cc5 100644
--- a/usr/src/uts/sun4u/montecarlo/Makefile.targ
+++ b/usr/src/uts/sun4u/montecarlo/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,75 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u MonteCarlo implementation specific modules.
#
+#
+# Platform targets
+#
+$(ROOT_MONTECARLO_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
+#
+$(ROOT_MONTECARLO_MOD_DIR): $(ROOT_MONTECARLO_DIR)
+ -$(INS.dir)
+
+$(ROOT_MONTECARLO_DACF_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_MONTECARLO_DACF_DIR_64): $(ROOT_MONTECARLO_DACF_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_MONTECARLO_DRV_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_MONTECARLO_DRV_DIR_64): $(ROOT_MONTECARLO_DRV_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/montecarlo/Makefile.targ.shared
+$(ROOT_MONTECARLO_MISC_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_MONTECARLO_MISC_DIR_64): $(ROOT_MONTECARLO_MISC_DIR_32)
+ -$(INS.dir)
+
+$(USR_MONTECARLO_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_MONTECARLO_INC_DIR): $(USR_MONTECARLO_DIR)
+ -$(INS.slink4)
+
+$(USR_MONTECARLO_SBIN_DIR): $(USR_MONTECARLO_DIR)
+ -$(INS.slink5)
+
+$(USR_MONTECARLO_LIB_DIR): $(USR_MONTECARLO_DIR)
+ -$(INS.dir)
+
+$(USR_MONTECARLO_ISYS_DIR): $(USR_MONTECARLO_INC_DIR)
+ -$(INS.dir)
+
+$(ROOT_MONTECARLO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MOD_DIR) FRC
+ $(INS.file)
+
+$(ROOT_MONTECARLO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_MONTECARLO_DACF_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DACF_DIR)
+ $(INS.file)
+
+$(ROOT_MONTECARLO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/montecarlo/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared b/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared
deleted file mode 100644
index 0a0ea5baea..0000000000
--- a/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared
+++ /dev/null
@@ -1,92 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u MonteCarlo implementation specific modules.
-#
-#
-# Platform targets
-#
-$(ROOT_MONTECARLO_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_MONTECARLO_MOD_DIR): $(ROOT_MONTECARLO_DIR)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_DACF_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_DACF_DIR_64): $(ROOT_MONTECARLO_DACF_DIR_32)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_DRV_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_DRV_DIR_64): $(ROOT_MONTECARLO_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_MISC_DIR_32): $(ROOT_MONTECARLO_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_MISC_DIR_64): $(ROOT_MONTECARLO_MISC_DIR_32)
- -$(INS.dir)
-
-$(USR_MONTECARLO_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_MONTECARLO_INC_DIR): $(USR_MONTECARLO_DIR)
- -$(INS.slink4)
-
-$(USR_MONTECARLO_SBIN_DIR): $(USR_MONTECARLO_DIR)
- -$(INS.slink5)
-
-$(USR_MONTECARLO_LIB_DIR): $(USR_MONTECARLO_DIR)
- -$(INS.dir)
-
-$(USR_MONTECARLO_ISYS_DIR): $(USR_MONTECARLO_INC_DIR)
- -$(INS.dir)
-
-$(ROOT_MONTECARLO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MOD_DIR) FRC
- $(INS.file)
-
-$(ROOT_MONTECARLO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_MONTECARLO_DACF_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DACF_DIR)
- $(INS.file)
-
-$(ROOT_MONTECARLO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/montecarlo/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/mpxu/Makefile.mpxu b/usr/src/uts/sun4u/mpxu/Makefile.mpxu
index 19dc84d49e..d57afbc988 100644
--- a/usr/src/uts/sun4u/mpxu/Makefile.mpxu
+++ b/usr/src/uts/sun4u/mpxu/Makefile.mpxu
@@ -2,9 +2,8 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -19,12 +18,108 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
#
-UTSTREE=$(UTSBASE)
+#
+# Global definitions for sun4u implementation specific modules.
+#
+
+#
+# Define the name of this implementation.
+#
+
+#
+# Define directories.
+#
+ROOT_MPXU_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-V240
+ROOT_MPXU_MOD_DIR = $(ROOT_MPXU_DIR)/kernel
+
+ROOT_MPXU_DRV_DIR_32 = $(ROOT_MPXU_MOD_DIR)/drv
+ROOT_MPXU_DRV_DIR_64 = $(ROOT_MPXU_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_MPXU_DRV_DIR = $(ROOT_MPXU_DRV_DIR_$(CLASS))
+
+ROOT_MPXU_MISC_DIR_32 = $(ROOT_MPXU_MOD_DIR)/misc
+ROOT_MPXU_MISC_DIR_64 = $(ROOT_MPXU_MOD_DIR)/misc/$(SUBDIR64)
+ROOT_MPXU_MISC_DIR = $(ROOT_MPXU_MISC_DIR_$(CLASS))
+
+ROOT_MPXU_CRYPTO_DIR_32 = $(ROOT_MPXU_MOD_DIR)/crypto
+ROOT_MPXU_CRYPTO_DIR_64 = $(ROOT_MPXU_MOD_DIR)/crypto/$(SUBDIR64)
+ROOT_MPXU_CRYPTO_DIR = $(ROOT_MPXU_CRYPTO_DIR_$(CLASS))
+
+USR_MPXU_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-V240
+USR_MPXU_INC_DIR = $(USR_MPXU_DIR)/include
+USR_MPXU_ISYS_DIR = $(USR_MPXU_INC_DIR)/sys
+USR_MPXU_SBIN_DIR = $(USR_MPXU_DIR)/sbin
+USR_MPXU_SBIN_PRTDIAG = $(USR_MPXU_SBIN_DIR)/prtdiag
+USR_MPXU_SBIN_FRUADM = $(USR_MPXU_SBIN_DIR)/fruadm
+USR_MPXU_LIB_DIR = $(USR_MPXU_DIR)/lib
+
+MPXU_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR)
+
+#
+# Links to UltraSparc III crypto modules
+#
+MPXU_CRYPTO_LINKS = aes
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
-include $(UTSBASE)/sun4u/mpxu/Makefile.mpxu.shared
+include $(UTSBASE)/sun4u/mpxu/Makefile.files
+#
+# Include common rules.
+#
+
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules (must come after Makefile.sun4u).
+#
+MPXU_KMODS = tsalarm
+
+MODSTUBS_DIR = $(UNIX_DIR)
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR)
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
+
+#
+# Define platform specific values
+#
+#MACHINE_DEFS += -DNCPU=554
+#MACHINE_DEFS += -DMAX_UPA=1024
+#MACHINE_DEFS += -DIGN_SIZE=10
+# Max IOSRAM TOC major version number supported
+#MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1
+
+# Define for inline pre-processing since
+# cpp not smart about v9 yet.
+#
+CPP_DEFS_32 =
+CPP_DEFS_64 = -D__sparcv9
+CPP_DEFS = $(CPP_DEFS_$(CLASS))
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared b/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared
deleted file mode 100644
index 86c40a6b5a..0000000000
--- a/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared
+++ /dev/null
@@ -1,125 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
-#
-
-#
-# Global definitions for sun4u implementation specific modules.
-#
-
-#
-# Define the name of this implementation.
-#
-
-#
-# Define directories.
-#
-ROOT_MPXU_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-V240
-ROOT_MPXU_MOD_DIR = $(ROOT_MPXU_DIR)/kernel
-
-ROOT_MPXU_DRV_DIR_32 = $(ROOT_MPXU_MOD_DIR)/drv
-ROOT_MPXU_DRV_DIR_64 = $(ROOT_MPXU_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_MPXU_DRV_DIR = $(ROOT_MPXU_DRV_DIR_$(CLASS))
-
-ROOT_MPXU_MISC_DIR_32 = $(ROOT_MPXU_MOD_DIR)/misc
-ROOT_MPXU_MISC_DIR_64 = $(ROOT_MPXU_MOD_DIR)/misc/$(SUBDIR64)
-ROOT_MPXU_MISC_DIR = $(ROOT_MPXU_MISC_DIR_$(CLASS))
-
-ROOT_MPXU_CRYPTO_DIR_32 = $(ROOT_MPXU_MOD_DIR)/crypto
-ROOT_MPXU_CRYPTO_DIR_64 = $(ROOT_MPXU_MOD_DIR)/crypto/$(SUBDIR64)
-ROOT_MPXU_CRYPTO_DIR = $(ROOT_MPXU_CRYPTO_DIR_$(CLASS))
-
-USR_MPXU_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-V240
-USR_MPXU_INC_DIR = $(USR_MPXU_DIR)/include
-USR_MPXU_ISYS_DIR = $(USR_MPXU_INC_DIR)/sys
-USR_MPXU_SBIN_DIR = $(USR_MPXU_DIR)/sbin
-USR_MPXU_SBIN_PRTDIAG = $(USR_MPXU_SBIN_DIR)/prtdiag
-USR_MPXU_SBIN_FRUADM = $(USR_MPXU_SBIN_DIR)/fruadm
-USR_MPXU_LIB_DIR = $(USR_MPXU_DIR)/lib
-
-MPXU_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR)
-
-#
-# Links to UltraSparc III crypto modules
-#
-MPXU_CRYPTO_LINKS = aes
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-
-include $(UTSTREE)/sun4u/mpxu/Makefile.files
-#
-# Include common rules.
-#
-
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u).
-#
-MPXU_KMODS = tsalarm
-
-MODSTUBS_DIR = $(UNIX_DIR)
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR)
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
-
-#
-# Define platform specific values
-#
-#MACHINE_DEFS += -DNCPU=554
-#MACHINE_DEFS += -DMAX_UPA=1024
-#MACHINE_DEFS += -DIGN_SIZE=10
-# Max IOSRAM TOC major version number supported
-#MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1
-
-# Define for inline pre-processing since
-# cpp not smart about v9 yet.
-#
-CPP_DEFS_32 =
-CPP_DEFS_64 = -D__sparcv9
-CPP_DEFS = $(CPP_DEFS_$(CLASS))
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/mpxu/Makefile.targ b/usr/src/uts/sun4u/mpxu/Makefile.targ
index 1cc834d0b2..3097b325e1 100644
--- a/usr/src/uts/sun4u/mpxu/Makefile.targ
+++ b/usr/src/uts/sun4u/mpxu/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,78 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+#
+
+#
+# Common targets for sun4u MPXU implementation specific modules.
+#
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
#
+$(ROOT_MPXU_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_MPXU_MOD_DIR): $(ROOT_MPXU_DIR)
+ -$(INS.dir)
+
+$(ROOT_MPXU_DRV_DIR_32): $(ROOT_MPXU_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_MPXU_DRV_DIR_64): $(ROOT_MPXU_DRV_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_MPXU_MISC_DIR_32): $(ROOT_MPXU_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_MPXU_MISC_DIR_64): $(ROOT_MPXU_MISC_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_MPXU_CRYPTO_DIR_32): $(ROOT_MPXU_MOD_DIR)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_MPXU_CRYPTO_DIR_64): $(ROOT_MPXU_CRYPTO_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/mpxu/Makefile.targ.shared
+$(USR_MPXU_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_MPXU_INC_DIR): $(USR_MPXU_DIR)
+ $(INS.slink4)
+
+$(USR_MPXU_ISYS_DIR): $(USR_MPXU_INC_DIR)
+ $(INS.dir)
+
+$(USR_MPXU_SBIN_DIR): $(USR_MPXU_DIR)
+ $(INS.dir)
+
+$(USR_MPXU_SBIN_PRTDIAG): $(USR_MPXU_SBIN_DIR)
+ $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@
+
+$(USR_MPXU_SBIN_FRUADM): $(USR_MPXU_SBIN_DIR)
+ $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@
+
+$(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%): $(ROOT_PLAT_DIR)
+ $(INS.slink3)
+
+$(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%): $(USR_PLAT_DIR)
+ $(INS.slink3)
+
+$(USR_MPXU_LIB_DIR): $(USR_MPXU_DIR)
+ -$(INS.dir)
+
+$(ROOT_MPXU_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_MISC_DIR)
+ $(INS.file)
+
+$(ROOT_MPXU_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/mpxu/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/mpxu/Makefile.targ.shared b/usr/src/uts/sun4u/mpxu/Makefile.targ.shared
deleted file mode 100644
index 281480eb08..0000000000
--- a/usr/src/uts/sun4u/mpxu/Makefile.targ.shared
+++ /dev/null
@@ -1,95 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
-#
-
-#
-# Common targets for sun4u MPXU implementation specific modules.
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_MPXU_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_MOD_DIR): $(ROOT_MPXU_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_DRV_DIR_32): $(ROOT_MPXU_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_DRV_DIR_64): $(ROOT_MPXU_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_MPXU_MISC_DIR_32): $(ROOT_MPXU_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_MISC_DIR_64): $(ROOT_MPXU_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_MPXU_CRYPTO_DIR_32): $(ROOT_MPXU_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_CRYPTO_DIR_64): $(ROOT_MPXU_CRYPTO_DIR_32)
- -$(INS.dir)
-
-$(USR_MPXU_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_MPXU_INC_DIR): $(USR_MPXU_DIR)
- $(INS.slink4)
-
-$(USR_MPXU_ISYS_DIR): $(USR_MPXU_INC_DIR)
- $(INS.dir)
-
-$(USR_MPXU_SBIN_DIR): $(USR_MPXU_DIR)
- $(INS.dir)
-
-$(USR_MPXU_SBIN_PRTDIAG): $(USR_MPXU_SBIN_DIR)
- $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@
-
-$(USR_MPXU_SBIN_FRUADM): $(USR_MPXU_SBIN_DIR)
- $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@
-
-$(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%): $(ROOT_PLAT_DIR)
- $(INS.slink3)
-
-$(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%): $(USR_PLAT_DIR)
- $(INS.slink3)
-
-$(USR_MPXU_LIB_DIR): $(USR_MPXU_DIR)
- -$(INS.dir)
-
-$(ROOT_MPXU_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_MISC_DIR)
- $(INS.file)
-
-$(ROOT_MPXU_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/mpxu/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/opl/Makefile.opl b/usr/src/uts/sun4u/opl/Makefile.opl
index a479d21413..a20f97cfb1 100644
--- a/usr/src/uts/sun4u/opl/Makefile.opl
+++ b/usr/src/uts/sun4u/opl/Makefile.opl
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -17,12 +18,163 @@
#
# CDDL HEADER END
#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
+#
+# Global definitions for sun4u opl implementation specific modules.
+#
+# uts/sun4u/opl/Makefile.opl
+#
+
+#
+# Define directories.
+#
+#
+#
+ROOT_OPL_DIR = $(ROOT_PLAT_DIR)/SUNW,SPARC-Enterprise
+ROOT_OPL_MOD_DIR = $(ROOT_OPL_DIR)/kernel
+ROOT_OPL_KERN_DIR_32 = $(ROOT_OPL_MOD_DIR)
+ROOT_OPL_KERN_DIR_64 = $(ROOT_OPL_MOD_DIR)/$(SUBDIR64)
+ROOT_OPL_MISC_DIR_32 = $(ROOT_OPL_MOD_DIR)/misc
+ROOT_OPL_MISC_DIR_64 = $(ROOT_OPL_MOD_DIR)/misc/$(SUBDIR64)
+ROOT_OPL_DRV_DIR_32 = $(ROOT_OPL_MOD_DIR)/drv
+ROOT_OPL_DRV_DIR_64 = $(ROOT_OPL_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_OPL_CPU_DIR_32 = $(ROOT_OPL_MOD_DIR)/cpu
+ROOT_OPL_CPU_DIR_64 = $(ROOT_OPL_MOD_DIR)/cpu/$(SUBDIR64)
+ROOT_OPL_CRYPTO_DIR_32 = $(ROOT_OPL_MOD_DIR)/crypto
+ROOT_OPL_CRYPTO_DIR_64 = $(ROOT_OPL_MOD_DIR)/crypto/$(SUBDIR64)
+
+ROOT_OPL_KERN_DIR = $(ROOT_OPL_KERN_DIR_$(CLASS))
+ROOT_OPL_MISC_DIR = $(ROOT_OPL_MISC_DIR_$(CLASS))
+ROOT_OPL_DRV_DIR = $(ROOT_OPL_DRV_DIR_$(CLASS))
+ROOT_OPL_CPU_DIR = $(ROOT_OPL_CPU_DIR_$(CLASS))
+ROOT_OPL_CRYPTO_DIR = $(ROOT_OPL_CRYPTO_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_OPL_MOD_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_OPL_MISC_DIR_32)
+
+USR_OPL_DIR = $(USR_PLAT_DIR)/SUNW,SPARC-Enterprise
+USR_OPL_LIB_DIR = $(USR_OPL_DIR)/lib
+USR_OPL_SBIN_DIR = $(USR_OPL_DIR)/sbin
+USR_OPL_SBIN_PRTDIAG = $(USR_OPL_SBIN_DIR)/prtdiag
+USR_OPL_SBIN_FRUADM = $(USR_OPL_SBIN_DIR)/fruadm
+USR_OPL_INC_DIR = $(USR_OPL_DIR)/include
+USR_OPL_ISYS_DIR = $(USR_OPL_INC_DIR)/sys
+
+OPL_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR)
+OPLMSU_OPTION = options
+
+#
+# Define modules.
+#
+OPL_KMODS = platmod
+OPL_KMODS += dm2s
+OPL_KMODS += oplkmdrv
+OPL_KMODS += pcicmu
+OPL_KMODS += oplpanel
+OPL_KMODS += dr .WAIT drmach
+OPL_KMODS += oplmsu
+OPL_KMODS += mc-opl
+
#
+# CPU modules.
+#
+OPL_CPU_KMODS += olympus_c
+
+# Links to OPL crypto modules
+#
+OPL_CRYPTO_LINKS = aes
-UTSTREE=$(UTSBASE)
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/sun4u/ngdr/Makefile.files
+include $(UTSBASE)/sun4u/opl/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/opl/unix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/opl/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR)
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
+MACHINE_DEFS += -D_CPU_SIGNATURE
+
+#
+# Maximum CPUID = 01111 11 01 1 = 0x1FB (507)
+# Maximum CHIPID = 1 01111 11 00 0 = 0x5F8 (1528)
+#
+MACHINE_DEFS += -DNCPU=512
+MACHINE_DEFS += -DMAX_CPU_CHIPID=1529
+MACHINE_DEFS += -DMAX_UPA=256
+MACHINE_DEFS += -DIGN_SIZE=8
+MACHINE_DEFS += -DMAX_MEM_NODES=16
+#
+# UTSB_PHYS will enable user TSB physical access for TL>0
+#
+MACHINE_DEFS += -DUTSB_PHYS
+MACHINE_DEFS += -D_OPL
+MACHINE_DEFS += -DOLYMPUS_SHARED_FTLB
+MACHINE_DEFS += -D_CMP_NO_ERROR_STEERING -D_HW_MEMSCRUB_SUPPORT
+MACHINE_DEFS += -DDO_CORELEVEL_LOADBAL
+MACHINE_DEFS += -DITLB_32M_256M_SUPPORT
+#
+# OLYMPUS C cross-call erratas.
+# - revision A can only deliver one xcall at a time.
+# - revision B can dispatch xcalls to 31 (IDSR_BN_SETS) CPUs at a time,
+# but it can not send more xcalls until all the pending xcalls are
+# dispatched. In other words, all previous 31 xcall slots must be
+# in non-busy state before further xcalls can be issued.
+MACHINE_DEFS += -DOLYMPUS_C_REV_A_ERRATA_XCALL
+MACHINE_DEFS += -DOLYMPUS_C_REV_B_ERRATA_XCALL
+#
+# OLYMPUS C Spurious interrupts
+# - When an UE is detected in a interrupt packet,
+# Olympus-C takes an interrupt_vector_trap (TT=0x60) while
+# ASI_INTR_RECIEVE.BUSY is set to zero to indicate the existence
+# of the error. Software will see this as a spurious interrupt since
+# the interrupt busy bit is set to zero. SW will still need to
+# explicitly clear the interrupt busy bit to reset the HW state.
+# Failure to do so will result in the processor continuously taking
+# an interrupt vector trap when PSTATE.IE is reset to one.
+# Note that UE in interrupt packet is reported to the SP and handled
+# accordingly. For the domain, the system should panic as it is not
+# recoverable.
+MACHINE_DEFS += -DCLEAR_INTR_BUSYBIT_ON_SPURIOUS
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
-include $(UTSBASE)/sun4u/opl/Makefile.opl.shared
+.KEEP_STATE:
diff --git a/usr/src/uts/sun4u/opl/Makefile.opl.shared b/usr/src/uts/sun4u/opl/Makefile.opl.shared
deleted file mode 100644
index 584e7f9488..0000000000
--- a/usr/src/uts/sun4u/opl/Makefile.opl.shared
+++ /dev/null
@@ -1,180 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
-#
-# Global definitions for sun4u opl implementation specific modules.
-#
-# uts/sun4u/opl/Makefile.opl
-#
-
-#
-# Define directories.
-#
-#
-#
-ROOT_OPL_DIR = $(ROOT_PLAT_DIR)/SUNW,SPARC-Enterprise
-ROOT_OPL_MOD_DIR = $(ROOT_OPL_DIR)/kernel
-ROOT_OPL_KERN_DIR_32 = $(ROOT_OPL_MOD_DIR)
-ROOT_OPL_KERN_DIR_64 = $(ROOT_OPL_MOD_DIR)/$(SUBDIR64)
-ROOT_OPL_MISC_DIR_32 = $(ROOT_OPL_MOD_DIR)/misc
-ROOT_OPL_MISC_DIR_64 = $(ROOT_OPL_MOD_DIR)/misc/$(SUBDIR64)
-ROOT_OPL_DRV_DIR_32 = $(ROOT_OPL_MOD_DIR)/drv
-ROOT_OPL_DRV_DIR_64 = $(ROOT_OPL_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_OPL_CPU_DIR_32 = $(ROOT_OPL_MOD_DIR)/cpu
-ROOT_OPL_CPU_DIR_64 = $(ROOT_OPL_MOD_DIR)/cpu/$(SUBDIR64)
-ROOT_OPL_CRYPTO_DIR_32 = $(ROOT_OPL_MOD_DIR)/crypto
-ROOT_OPL_CRYPTO_DIR_64 = $(ROOT_OPL_MOD_DIR)/crypto/$(SUBDIR64)
-
-ROOT_OPL_KERN_DIR = $(ROOT_OPL_KERN_DIR_$(CLASS))
-ROOT_OPL_MISC_DIR = $(ROOT_OPL_MISC_DIR_$(CLASS))
-ROOT_OPL_DRV_DIR = $(ROOT_OPL_DRV_DIR_$(CLASS))
-ROOT_OPL_CPU_DIR = $(ROOT_OPL_CPU_DIR_$(CLASS))
-ROOT_OPL_CRYPTO_DIR = $(ROOT_OPL_CRYPTO_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_OPL_MOD_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_OPL_MISC_DIR_32)
-
-USR_OPL_DIR = $(USR_PLAT_DIR)/SUNW,SPARC-Enterprise
-USR_OPL_LIB_DIR = $(USR_OPL_DIR)/lib
-USR_OPL_SBIN_DIR = $(USR_OPL_DIR)/sbin
-USR_OPL_SBIN_PRTDIAG = $(USR_OPL_SBIN_DIR)/prtdiag
-USR_OPL_SBIN_FRUADM = $(USR_OPL_SBIN_DIR)/fruadm
-USR_OPL_INC_DIR = $(USR_OPL_DIR)/include
-USR_OPL_ISYS_DIR = $(USR_OPL_INC_DIR)/sys
-
-OPL_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR)
-OPLMSU_OPTION = options
-
-#
-# Define modules.
-#
-OPL_KMODS = platmod
-OPL_KMODS += dm2s
-OPL_KMODS += oplkmdrv
-OPL_KMODS += pcicmu
-OPL_KMODS += oplpanel
-OPL_KMODS += dr .WAIT drmach
-OPL_KMODS += oplmsu
-OPL_KMODS += mc-opl
-
-#
-# CPU modules.
-#
-OPL_CPU_KMODS += olympus_c
-
-# Links to OPL crypto modules
-#
-OPL_CRYPTO_LINKS = aes
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSBASE)/sun4u/ngdr/Makefile.files
-include $(UTSTREE)/sun4u/opl/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/opl/unix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/opl/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR)
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
-MACHINE_DEFS += -D_CPU_SIGNATURE
-
-#
-# Maximum CPUID = 01111 11 01 1 = 0x1FB (507)
-# Maximum CHIPID = 1 01111 11 00 0 = 0x5F8 (1528)
-#
-MACHINE_DEFS += -DNCPU=512
-MACHINE_DEFS += -DMAX_CPU_CHIPID=1529
-MACHINE_DEFS += -DMAX_UPA=256
-MACHINE_DEFS += -DIGN_SIZE=8
-MACHINE_DEFS += -DMAX_MEM_NODES=16
-#
-# UTSB_PHYS will enable user TSB physical access for TL>0
-#
-MACHINE_DEFS += -DUTSB_PHYS
-MACHINE_DEFS += -D_OPL
-MACHINE_DEFS += -DOLYMPUS_SHARED_FTLB
-MACHINE_DEFS += -D_CMP_NO_ERROR_STEERING -D_HW_MEMSCRUB_SUPPORT
-MACHINE_DEFS += -DDO_CORELEVEL_LOADBAL
-MACHINE_DEFS += -DITLB_32M_256M_SUPPORT
-#
-# OLYMPUS C cross-call erratas.
-# - revision A can only deliver one xcall at a time.
-# - revision B can dispatch xcalls to 31 (IDSR_BN_SETS) CPUs at a time,
-# but it can not send more xcalls until all the pending xcalls are
-# dispatched. In other words, all previous 31 xcall slots must be
-# in non-busy state before further xcalls can be issued.
-MACHINE_DEFS += -DOLYMPUS_C_REV_A_ERRATA_XCALL
-MACHINE_DEFS += -DOLYMPUS_C_REV_B_ERRATA_XCALL
-#
-# OLYMPUS C Spurious interrupts
-# - When an UE is detected in a interrupt packet,
-# Olympus-C takes an interrupt_vector_trap (TT=0x60) while
-# ASI_INTR_RECIEVE.BUSY is set to zero to indicate the existence
-# of the error. Software will see this as a spurious interrupt since
-# the interrupt busy bit is set to zero. SW will still need to
-# explicitly clear the interrupt busy bit to reset the HW state.
-# Failure to do so will result in the processor continuously taking
-# an interrupt vector trap when PSTATE.IE is reset to one.
-# Note that UE in interrupt packet is reported to the SP and handled
-# accordingly. For the domain, the system should panic as it is not
-# recoverable.
-MACHINE_DEFS += -DCLEAR_INTR_BUSYBIT_ON_SPURIOUS
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
-
-.KEEP_STATE:
diff --git a/usr/src/uts/sun4u/opl/Makefile.targ b/usr/src/uts/sun4u/opl/Makefile.targ
index acc14934f3..051835e9e2 100644
--- a/usr/src/uts/sun4u/opl/Makefile.targ
+++ b/usr/src/uts/sun4u/opl/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -17,12 +18,84 @@
#
# CDDL HEADER END
#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
+#
+# Common targets for sun4u opl implementation specific modules.
+#
+# uts/sun4u/opl/Makefile.targ
+#
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
#
+$(ROOT_OPL_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_OPL_MOD_DIR): $(ROOT_OPL_DIR)
+ -$(INS.dir)
+
+$(ROOT_OPL_DRV_DIR_32): $(ROOT_OPL_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_OPL_DRV_DIR_64): $(ROOT_OPL_DRV_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_OPL_CPU_DIR_32): $(ROOT_OPL_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_OPL_CPU_DIR_64): $(ROOT_OPL_CPU_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_OPL_MISC_DIR_32): $(ROOT_OPL_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_OPL_MISC_DIR_64): $(ROOT_OPL_MISC_DIR_32)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_OPL_CRYPTO_DIR_32): $(ROOT_OPL_MOD_DIR)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/opl/Makefile.targ.shared
+$(ROOT_OPL_CRYPTO_DIR_64): $(ROOT_OPL_CRYPTO_DIR_32)
+ -$(INS.dir)
+
+$(USR_OPL_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_OPL_INC_DIR): $(USR_OPL_DIR) $(USR_PSM_INCL_DIR)
+ $(INS.slink4)
+
+$(USR_OPL_SBIN_DIR): $(USR_OPL_DIR) $(USR_PSM_SBIN_DIR)
+ $(INS.dir)
+
+$(USR_OPL_SBIN_PRTDIAG): $(USR_OPL_SBIN_DIR)
+ $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@
+
+$(USR_OPL_SBIN_FRUADM): $(USR_OPL_SBIN_DIR)
+ $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@
+
+$(USR_OPL_LIB_DIR): $(USR_OPL_DIR) $(USR_PSM_LIB_DIR)
+ -$(INS.dir)
+
+$(USR_OPL_ISYS_DIR): $(USR_OPL_INC_DIR)
+ $(INS.dir)
+
+$(ROOT_OPL_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_KERN_DIR) FRC
+ $(INS.file)
+
+$(ROOT_OPL_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_DRV_DIR) FRC
+ $(INS.file)
+
+$(ROOT_OPL_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_CPU_DIR) FRC
+ $(INS.file)
+
+$(ROOT_OPL_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_MISC_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/opl/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/opl/Makefile.targ.shared b/usr/src/uts/sun4u/opl/Makefile.targ.shared
deleted file mode 100644
index cb91037c13..0000000000
--- a/usr/src/uts/sun4u/opl/Makefile.targ.shared
+++ /dev/null
@@ -1,101 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
-#
-# Common targets for sun4u opl implementation specific modules.
-#
-# uts/sun4u/opl/Makefile.targ
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_OPL_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_MOD_DIR): $(ROOT_OPL_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_DRV_DIR_32): $(ROOT_OPL_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_DRV_DIR_64): $(ROOT_OPL_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_OPL_CPU_DIR_32): $(ROOT_OPL_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_CPU_DIR_64): $(ROOT_OPL_CPU_DIR_32)
- -$(INS.dir)
-
-$(ROOT_OPL_MISC_DIR_32): $(ROOT_OPL_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_MISC_DIR_64): $(ROOT_OPL_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_OPL_CRYPTO_DIR_32): $(ROOT_OPL_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_OPL_CRYPTO_DIR_64): $(ROOT_OPL_CRYPTO_DIR_32)
- -$(INS.dir)
-
-$(USR_OPL_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_OPL_INC_DIR): $(USR_OPL_DIR) $(USR_PSM_INCL_DIR)
- $(INS.slink4)
-
-$(USR_OPL_SBIN_DIR): $(USR_OPL_DIR) $(USR_PSM_SBIN_DIR)
- $(INS.dir)
-
-$(USR_OPL_SBIN_PRTDIAG): $(USR_OPL_SBIN_DIR)
- $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@
-
-$(USR_OPL_SBIN_FRUADM): $(USR_OPL_SBIN_DIR)
- $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@
-
-$(USR_OPL_LIB_DIR): $(USR_OPL_DIR) $(USR_PSM_LIB_DIR)
- -$(INS.dir)
-
-$(USR_OPL_ISYS_DIR): $(USR_OPL_INC_DIR)
- $(INS.dir)
-
-$(ROOT_OPL_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_KERN_DIR) FRC
- $(INS.file)
-
-$(ROOT_OPL_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_DRV_DIR) FRC
- $(INS.file)
-
-$(ROOT_OPL_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_CPU_DIR) FRC
- $(INS.file)
-
-$(ROOT_OPL_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_MISC_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/opl/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/serengeti/Makefile.serengeti b/usr/src/uts/sun4u/serengeti/Makefile.serengeti
index 656134d7f5..3e5184f235 100644
--- a/usr/src/uts/sun4u/serengeti/Makefile.serengeti
+++ b/usr/src/uts/sun4u/serengeti/Makefile.serengeti
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,132 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Global definitions for sun4u implementation specific modules.
+#
+
+#
+# Define the name of this implementation.
+#
+
+#
+# Define directories.
+#
+ROOT_SERENGETI_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire
+ROOT_SERENGETI_MOD_DIR = $(ROOT_SERENGETI_DIR)/kernel
+
+ROOT_SERENGETI_KERN_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)
+ROOT_SERENGETI_KERN_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/$(SUBDIR64)
+ROOT_SERENGETI_KERN_DIR = $(ROOT_SERENGETI_KERN_DIR_$(CLASS))
+
+ROOT_SERENGETI_CPU_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/cpu
+ROOT_SERENGETI_CPU_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/cpu/$(SUBDIR64)
+ROOT_SERENGETI_CPU_DIR = $(ROOT_SERENGETI_CPU_DIR_$(CLASS))
+
+ROOT_SERENGETI_DRV_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/drv
+ROOT_SERENGETI_DRV_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_SERENGETI_DRV_DIR = $(ROOT_SERENGETI_DRV_DIR_$(CLASS))
+
+ROOT_SERENGETI_MISC_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/misc
+ROOT_SERENGETI_MISC_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/misc/$(SUBDIR64)
+ROOT_SERENGETI_MISC_DIR = $(ROOT_SERENGETI_MISC_DIR_$(CLASS))
+
+ROOT_SERENGETI_CRYPTO_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/crypto
+ROOT_SERENGETI_CRYPTO_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/crypto/$(SUBDIR64)
+ROOT_SERENGETI_CRYPTO_DIR = $(ROOT_SERENGETI_CRYPTO_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_SERENGETI_MOD_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_SERENGETI_MISC_DIR_32)
+
+USR_SERENGETI_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire
+USR_SERENGETI_INC_DIR = $(USR_SERENGETI_DIR)/include
+USR_SERENGETI_ISYS_DIR = $(USR_SERENGETI_INC_DIR)/sys
+USR_SERENGETI_SBIN_DIR = $(USR_SERENGETI_DIR)/sbin
+USR_SERENGETI_LIB_DIR = $(USR_SERENGETI_DIR)/lib
+
+SERENGETI_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR)
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+
+#
+# Links to UltraSparc III crypto modules
+#
+SERENGETI_CRYPTO_LINKS += aes
+
+include $(UTSBASE)/sun4u/serengeti/Makefile.files
+#
+# Include common rules.
+#
+
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules
+#
+SERENGETI_KMODS = cheetah cheetahplus
+SERENGETI_KMODS += platmod sbdp sgcn sghsc sgsbbc ssm
+
#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/unix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR)
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-UTSTREE=$(UTSBASE)
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED
-include $(UTSBASE)/sun4u/serengeti/Makefile.serengeti.shared
+#
+# Define platform specific values
+#
+MACHINE_DEFS += -DNCPU=558
+MACHINE_DEFS += -DMAX_CPU_CHIPID=554
+MACHINE_DEFS += -DMAX_UPA=1024
+MACHINE_DEFS += -DIGN_SIZE=10
+MACHINE_DEFS += -DMAX_MEM_NODES=8
+MACHINE_DEFS += -DLOCKED_DTLB_ENTRIES=6
+# Max IOSRAM TOC major version number supported
+MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1
+MACHINE_DEFS += -DC_OBP
+
+# Define for inline pre-processing since
+# cpp is not smart about v9 yet.
+# It's not smart about __sparc either since it only predefines sparc.
+CPP_DEFS_32 = -D__sparc
+CPP_DEFS_64 = -D__sparc -D__sparcv9
+CPP_DEFS = $(CPP_DEFS_$(CLASS))
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared b/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared
deleted file mode 100644
index a822481917..0000000000
--- a/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared
+++ /dev/null
@@ -1,150 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-
-#
-# Global definitions for sun4u implementation specific modules.
-#
-
-#
-# Define the name of this implementation.
-#
-
-#
-# Define directories.
-#
-ROOT_SERENGETI_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire
-ROOT_SERENGETI_MOD_DIR = $(ROOT_SERENGETI_DIR)/kernel
-
-ROOT_SERENGETI_KERN_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)
-ROOT_SERENGETI_KERN_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/$(SUBDIR64)
-ROOT_SERENGETI_KERN_DIR = $(ROOT_SERENGETI_KERN_DIR_$(CLASS))
-
-ROOT_SERENGETI_CPU_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/cpu
-ROOT_SERENGETI_CPU_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/cpu/$(SUBDIR64)
-ROOT_SERENGETI_CPU_DIR = $(ROOT_SERENGETI_CPU_DIR_$(CLASS))
-
-ROOT_SERENGETI_DRV_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/drv
-ROOT_SERENGETI_DRV_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_SERENGETI_DRV_DIR = $(ROOT_SERENGETI_DRV_DIR_$(CLASS))
-
-ROOT_SERENGETI_MISC_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/misc
-ROOT_SERENGETI_MISC_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/misc/$(SUBDIR64)
-ROOT_SERENGETI_MISC_DIR = $(ROOT_SERENGETI_MISC_DIR_$(CLASS))
-
-ROOT_SERENGETI_CRYPTO_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/crypto
-ROOT_SERENGETI_CRYPTO_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/crypto/$(SUBDIR64)
-ROOT_SERENGETI_CRYPTO_DIR = $(ROOT_SERENGETI_CRYPTO_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_SERENGETI_MOD_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_SERENGETI_MISC_DIR_32)
-
-USR_SERENGETI_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire
-USR_SERENGETI_INC_DIR = $(USR_SERENGETI_DIR)/include
-USR_SERENGETI_ISYS_DIR = $(USR_SERENGETI_INC_DIR)/sys
-USR_SERENGETI_SBIN_DIR = $(USR_SERENGETI_DIR)/sbin
-USR_SERENGETI_LIB_DIR = $(USR_SERENGETI_DIR)/lib
-
-SERENGETI_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR)
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-
-#
-# Links to UltraSparc III crypto modules
-#
-SERENGETI_CRYPTO_LINKS += aes
-
-include $(UTSTREE)/sun4u/serengeti/Makefile.files
-#
-# Include common rules.
-#
-
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules
-#
-SERENGETI_KMODS = cheetah cheetahplus
-SERENGETI_KMODS += platmod sbdp sgcn sghsc sgsbbc ssm
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/unix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR)
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED
-
-#
-# Define platform specific values
-#
-MACHINE_DEFS += -DNCPU=558
-MACHINE_DEFS += -DMAX_CPU_CHIPID=554
-MACHINE_DEFS += -DMAX_UPA=1024
-MACHINE_DEFS += -DIGN_SIZE=10
-MACHINE_DEFS += -DMAX_MEM_NODES=8
-MACHINE_DEFS += -DLOCKED_DTLB_ENTRIES=6
-# Max IOSRAM TOC major version number supported
-MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1
-MACHINE_DEFS += -DC_OBP
-
-# Define for inline pre-processing since
-# cpp is not smart about v9 yet.
-# It's not smart about __sparc either since it only predefines sparc.
-CPP_DEFS_32 = -D__sparc
-CPP_DEFS_64 = -D__sparc -D__sparcv9
-CPP_DEFS = $(CPP_DEFS_$(CLASS))
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/serengeti/Makefile.targ b/usr/src/uts/sun4u/serengeti/Makefile.targ
index 541dc690e4..9c9f9809a2 100644
--- a/usr/src/uts/sun4u/serengeti/Makefile.targ
+++ b/usr/src/uts/sun4u/serengeti/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,79 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u Serengeti implementation specific modules.
+#
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
#
+$(ROOT_SERENGETI_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_MOD_DIR): $(ROOT_SERENGETI_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_CPU_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_CPU_DIR_64): $(ROOT_SERENGETI_CPU_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_DRV_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_DRV_DIR_64): $(ROOT_SERENGETI_DRV_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_MISC_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_SERENGETI_MISC_DIR_64): $(ROOT_SERENGETI_MISC_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/serengeti/Makefile.targ.shared
+$(ROOT_SERENGETI_CRYPTO_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_CRYPTO_DIR_64): $(ROOT_SERENGETI_CRYPTO_DIR_32)
+ -$(INS.dir)
+
+$(USR_SERENGETI_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_SERENGETI_INC_DIR): $(USR_SERENGETI_DIR)
+ $(INS.slink4)
+
+$(USR_SERENGETI_ISYS_DIR): $(USR_SERENGETI_INC_DIR)
+ $(INS.dir)
+
+$(USR_SERENGETI_SBIN_DIR): $(USR_SERENGETI_DIR)
+ $(INS.slink5)
+
+$(USR_SERENGETI_LIB_DIR): $(USR_SERENGETI_DIR)
+ -$(INS.dir)
+
+$(ROOT_SERENGETI_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_SERENGETI_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_CPU_DIR) FRC
+ $(INS.file)
+
+$(ROOT_SERENGETI_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_DRV_DIR) FRC
+ $(INS.file)
+
+$(ROOT_SERENGETI_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_KERN_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/serengeti/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/serengeti/Makefile.targ.shared b/usr/src/uts/sun4u/serengeti/Makefile.targ.shared
deleted file mode 100644
index a74c1efc1b..0000000000
--- a/usr/src/uts/sun4u/serengeti/Makefile.targ.shared
+++ /dev/null
@@ -1,96 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u Serengeti implementation specific modules.
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_SERENGETI_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_MOD_DIR): $(ROOT_SERENGETI_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_CPU_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_CPU_DIR_64): $(ROOT_SERENGETI_CPU_DIR_32)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_DRV_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_DRV_DIR_64): $(ROOT_SERENGETI_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_MISC_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_MISC_DIR_64): $(ROOT_SERENGETI_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_CRYPTO_DIR_32): $(ROOT_SERENGETI_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_CRYPTO_DIR_64): $(ROOT_SERENGETI_CRYPTO_DIR_32)
- -$(INS.dir)
-
-$(USR_SERENGETI_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_SERENGETI_INC_DIR): $(USR_SERENGETI_DIR)
- $(INS.slink4)
-
-$(USR_SERENGETI_ISYS_DIR): $(USR_SERENGETI_INC_DIR)
- $(INS.dir)
-
-$(USR_SERENGETI_SBIN_DIR): $(USR_SERENGETI_DIR)
- $(INS.slink5)
-
-$(USR_SERENGETI_LIB_DIR): $(USR_SERENGETI_DIR)
- -$(INS.dir)
-
-$(ROOT_SERENGETI_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_SERENGETI_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_CPU_DIR) FRC
- $(INS.file)
-
-$(ROOT_SERENGETI_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_DRV_DIR) FRC
- $(INS.file)
-
-$(ROOT_SERENGETI_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_KERN_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/serengeti/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/starcat/Makefile.starcat b/usr/src/uts/sun4u/starcat/Makefile.starcat
index 9122646992..4205d221a5 100644
--- a/usr/src/uts/sun4u/starcat/Makefile.starcat
+++ b/usr/src/uts/sun4u/starcat/Makefile.starcat
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,138 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Global definitions for sun4u starcat implementation specific modules.
+#
+
+#
+# Define directories.
+#
+ROOT_STARCAT_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-15000
+ROOT_STARCAT_MOD_DIR = $(ROOT_STARCAT_DIR)/kernel
+ROOT_STARCAT_KERN_DIR_32 = $(ROOT_STARCAT_MOD_DIR)
+ROOT_STARCAT_KERN_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/$(SUBDIR64)
+ROOT_STARCAT_MISC_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/misc
+ROOT_STARCAT_MISC_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/misc/$(SUBDIR64)
+ROOT_STARCAT_DRV_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/drv
+ROOT_STARCAT_DRV_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_STARCAT_CPU_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/cpu
+ROOT_STARCAT_CPU_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/cpu/$(SUBDIR64)
+ROOT_STARCAT_CRYPTO_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/crypto
+ROOT_STARCAT_CRYPTO_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/crypto/$(SUBDIR64)
+
+ROOT_STARCAT_KERN_DIR = $(ROOT_STARCAT_KERN_DIR_$(CLASS))
+ROOT_STARCAT_MISC_DIR = $(ROOT_STARCAT_MISC_DIR_$(CLASS))
+ROOT_STARCAT_DRV_DIR = $(ROOT_STARCAT_DRV_DIR_$(CLASS))
+ROOT_STARCAT_CPU_DIR = $(ROOT_STARCAT_CPU_DIR_$(CLASS))
+ROOT_STARCAT_CRYPTO_DIR = $(ROOT_STARCAT_CRYPTO_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_STARCAT_MOD_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARCAT_MISC_DIR_32)
+
+USR_STARCAT_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-15000
+USR_STARCAT_LIB_DIR = $(USR_STARCAT_DIR)/lib
+USR_STARCAT_SBIN_DIR = $(USR_STARCAT_DIR)/sbin
+USR_STARCAT_INC_DIR = $(USR_STARCAT_DIR)/include
+USR_STARCAT_ISYS_DIR = $(USR_STARCAT_INC_DIR)/sys
+
+STARCAT_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR)
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/sun4u/ngdr/Makefile.files
+include $(UTSBASE)/sun4u/starcat/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules
+#
+STARCAT_KMODS += axq
+STARCAT_KMODS += cvc
+STARCAT_KMODS += cvcredir
+STARCAT_KMODS += dman
+STARCAT_KMODS += dr
+STARCAT_KMODS += drmach
+STARCAT_KMODS += fcgp2
+STARCAT_KMODS += gptwo_pci
+STARCAT_KMODS += iosram
+STARCAT_KMODS += mboxsc
+STARCAT_KMODS += platmod
+STARCAT_KMODS += sc_gptwocfg
+STARCAT_KMODS += schpc
+STARCAT_KMODS += sckmdrv
+STARCAT_KMODS += scosmb
+
+#
+# Define CPU modules.
+#
+STARCAT_CPU_KMODS += cheetah cheetahplus
+
+#
+# Links to UltraSparc III crypto modules
#
+STARCAT_CRYPTO_LINKS = aes
-UTSTREE=$(UTSBASE)
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/starcat/unix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/starcat/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR)
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-include $(UTSBASE)/sun4u/starcat/Makefile.starcat.shared
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+
+#
+# Define the actual specific platforms
+#
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED
+MACHINE_DEFS += -D_CPU_SIGNATURE
+
+#
+# Define platform specific value
+#
+MACHINE_DEFS += -DNCPU=558
+MACHINE_DEFS += -DMAX_CPU_CHIPID=554
+MACHINE_DEFS += -DMAX_UPA=1024
+MACHINE_DEFS += -DIGN_SIZE=10
+MACHINE_DEFS += -DMAX_MEM_NODES=18
+
+#
+# Define for inline pre-processing since
+# cpp not smart about v9 yet.
+# It's not smart about __sparc either since it only predefines sparc.
+CPP_DEFS_32 = -D__sparc
+CPP_DEFS_64 = -D__sparc -D__sparcv9
+CPP_DEFS = $(CPP_DEFS_$(CLASS))
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/starcat/Makefile.starcat.shared b/usr/src/uts/sun4u/starcat/Makefile.starcat.shared
deleted file mode 100644
index 15581dc1a4..0000000000
--- a/usr/src/uts/sun4u/starcat/Makefile.starcat.shared
+++ /dev/null
@@ -1,157 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# Global definitions for sun4u starcat implementation specific modules.
-#
-
-#
-# Define directories.
-#
-ROOT_STARCAT_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-15000
-ROOT_STARCAT_MOD_DIR = $(ROOT_STARCAT_DIR)/kernel
-ROOT_STARCAT_KERN_DIR_32 = $(ROOT_STARCAT_MOD_DIR)
-ROOT_STARCAT_KERN_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/$(SUBDIR64)
-ROOT_STARCAT_MISC_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/misc
-ROOT_STARCAT_MISC_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/misc/$(SUBDIR64)
-ROOT_STARCAT_DRV_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/drv
-ROOT_STARCAT_DRV_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_STARCAT_CPU_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/cpu
-ROOT_STARCAT_CPU_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/cpu/$(SUBDIR64)
-ROOT_STARCAT_CRYPTO_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/crypto
-ROOT_STARCAT_CRYPTO_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/crypto/$(SUBDIR64)
-
-ROOT_STARCAT_KERN_DIR = $(ROOT_STARCAT_KERN_DIR_$(CLASS))
-ROOT_STARCAT_MISC_DIR = $(ROOT_STARCAT_MISC_DIR_$(CLASS))
-ROOT_STARCAT_DRV_DIR = $(ROOT_STARCAT_DRV_DIR_$(CLASS))
-ROOT_STARCAT_CPU_DIR = $(ROOT_STARCAT_CPU_DIR_$(CLASS))
-ROOT_STARCAT_CRYPTO_DIR = $(ROOT_STARCAT_CRYPTO_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_STARCAT_MOD_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARCAT_MISC_DIR_32)
-
-USR_STARCAT_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-15000
-USR_STARCAT_LIB_DIR = $(USR_STARCAT_DIR)/lib
-USR_STARCAT_SBIN_DIR = $(USR_STARCAT_DIR)/sbin
-USR_STARCAT_INC_DIR = $(USR_STARCAT_DIR)/include
-USR_STARCAT_ISYS_DIR = $(USR_STARCAT_INC_DIR)/sys
-
-STARCAT_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR)
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSBASE)/sun4u/ngdr/Makefile.files
-include $(UTSTREE)/sun4u/starcat/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules
-#
-STARCAT_KMODS += axq
-STARCAT_KMODS += cvc
-STARCAT_KMODS += cvcredir
-STARCAT_KMODS += dman
-STARCAT_KMODS += dr
-STARCAT_KMODS += drmach
-STARCAT_KMODS += fcgp2
-STARCAT_KMODS += gptwo_pci
-STARCAT_KMODS += iosram
-STARCAT_KMODS += mboxsc
-STARCAT_KMODS += platmod
-STARCAT_KMODS += sc_gptwocfg
-STARCAT_KMODS += schpc
-STARCAT_KMODS += sckmdrv
-STARCAT_KMODS += scosmb
-
-#
-# Define CPU modules.
-#
-STARCAT_CPU_KMODS += cheetah cheetahplus
-
-#
-# Links to UltraSparc III crypto modules
-#
-STARCAT_CRYPTO_LINKS = aes
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/starcat/unix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/starcat/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR)
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-
-#
-# Define the actual specific platforms
-#
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED
-MACHINE_DEFS += -D_CPU_SIGNATURE
-
-#
-# Define platform specific value
-#
-MACHINE_DEFS += -DNCPU=558
-MACHINE_DEFS += -DMAX_CPU_CHIPID=554
-MACHINE_DEFS += -DMAX_UPA=1024
-MACHINE_DEFS += -DIGN_SIZE=10
-MACHINE_DEFS += -DMAX_MEM_NODES=18
-
-#
-# Define for inline pre-processing since
-# cpp not smart about v9 yet.
-# It's not smart about __sparc either since it only predefines sparc.
-CPP_DEFS_32 = -D__sparc
-CPP_DEFS_64 = -D__sparc -D__sparcv9
-CPP_DEFS = $(CPP_DEFS_$(CLASS))
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/starcat/Makefile.targ b/usr/src/uts/sun4u/starcat/Makefile.targ
index b6bb4f7664..16e7b1456d 100644
--- a/usr/src/uts/sun4u/starcat/Makefile.targ
+++ b/usr/src/uts/sun4u/starcat/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,79 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Common targets for sun4u starcat implementation specific modules.
+#
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
#
+$(ROOT_STARCAT_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_MOD_DIR): $(ROOT_STARCAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_CPU_DIR_32): $(ROOT_STARCAT_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_CPU_DIR_64): $(ROOT_STARCAT_CPU_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_DRV_DIR_32): $(ROOT_STARCAT_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_DRV_DIR_64): $(ROOT_STARCAT_DRV_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_MISC_DIR_32): $(ROOT_STARCAT_MOD_DIR)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_STARCAT_MISC_DIR_64): $(ROOT_STARCAT_MISC_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/starcat/Makefile.targ.shared
+$(ROOT_STARCAT_CRYPTO_DIR_32): $(ROOT_STARCAT_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_STARCAT_CRYPTO_DIR_64): $(ROOT_STARCAT_CRYPTO_DIR_32)
+ -$(INS.dir)
+
+$(USR_STARCAT_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_STARCAT_INC_DIR): $(USR_STARCAT_DIR)
+ $(INS.slink4)
+
+$(USR_STARCAT_SBIN_DIR): $(USR_STARCAT_DIR)
+ -$(INS.slink5)
+
+$(USR_STARCAT_LIB_DIR): $(USR_STARCAT_DIR)
+ -$(INS.dir)
+
+$(USR_STARCAT_ISYS_DIR): $(USR_STARCAT_INC_DIR)
+ $(INS.dir)
+
+$(ROOT_STARCAT_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_KERN_DIR) FRC
+ $(INS.file)
+
+$(ROOT_STARCAT_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_DRV_DIR) FRC
+ $(INS.file)
+
+$(ROOT_STARCAT_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_CPU_DIR) FRC
+ $(INS.file)
+
+$(ROOT_STARCAT_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_MISC_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/ngdr/Makefile.rules
+include $(UTSBASE)/sun4u/starcat/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/starcat/Makefile.targ.shared b/usr/src/uts/sun4u/starcat/Makefile.targ.shared
deleted file mode 100644
index e22885a50c..0000000000
--- a/usr/src/uts/sun4u/starcat/Makefile.targ.shared
+++ /dev/null
@@ -1,96 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Common targets for sun4u starcat implementation specific modules.
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_STARCAT_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_MOD_DIR): $(ROOT_STARCAT_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_CPU_DIR_32): $(ROOT_STARCAT_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_CPU_DIR_64): $(ROOT_STARCAT_CPU_DIR_32)
- -$(INS.dir)
-
-$(ROOT_STARCAT_DRV_DIR_32): $(ROOT_STARCAT_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_DRV_DIR_64): $(ROOT_STARCAT_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_STARCAT_MISC_DIR_32): $(ROOT_STARCAT_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_MISC_DIR_64): $(ROOT_STARCAT_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_STARCAT_CRYPTO_DIR_32): $(ROOT_STARCAT_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_STARCAT_CRYPTO_DIR_64): $(ROOT_STARCAT_CRYPTO_DIR_32)
- -$(INS.dir)
-
-$(USR_STARCAT_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_STARCAT_INC_DIR): $(USR_STARCAT_DIR)
- $(INS.slink4)
-
-$(USR_STARCAT_SBIN_DIR): $(USR_STARCAT_DIR)
- -$(INS.slink5)
-
-$(USR_STARCAT_LIB_DIR): $(USR_STARCAT_DIR)
- -$(INS.dir)
-
-$(USR_STARCAT_ISYS_DIR): $(USR_STARCAT_INC_DIR)
- $(INS.dir)
-
-$(ROOT_STARCAT_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_KERN_DIR) FRC
- $(INS.file)
-
-$(ROOT_STARCAT_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_DRV_DIR) FRC
- $(INS.file)
-
-$(ROOT_STARCAT_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_CPU_DIR) FRC
- $(INS.file)
-
-$(ROOT_STARCAT_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_MISC_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSBASE)/sun4u/ngdr/Makefile.rules
-include $(UTSTREE)/sun4u/starcat/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/sunfire/Makefile.sunfire b/usr/src/uts/sun4u/sunfire/Makefile.sunfire
index 316592f634..1c7b558007 100644
--- a/usr/src/uts/sun4u/sunfire/Makefile.sunfire
+++ b/usr/src/uts/sun4u/sunfire/Makefile.sunfire
@@ -23,9 +23,61 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
+# Global definitions for sun4u implementation specific modules.
#
-UTSTREE=$(UTSBASE)
+#
+# Define the name of this implementation.
+#
+
+#
+# Define directories.
+#
+ROOT_SUNFIRE_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-Enterprise
+ROOT_SUNFIRE_MOD_DIR = $(ROOT_SUNFIRE_DIR)/kernel
+
+ROOT_SUNFIRE_DRV_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/drv
+ROOT_SUNFIRE_DRV_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_SUNFIRE_DRV_DIR = $(ROOT_SUNFIRE_DRV_DIR_$(CLASS))
+ROOT_PLAT_DRV_DIRS = $(ROOT_SUNFIRE_DRV_DIR)
-include $(UTSBASE)/sun4u/sunfire/Makefile.sunfire.shared
+ROOT_SUNFIRE_MISC_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/misc
+ROOT_SUNFIRE_MISC_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/misc/$(SUBDIR64)
+ROOT_SUNFIRE_MISC_DIR = $(ROOT_SUNFIRE_MISC_DIR_$(CLASS))
+
+USR_SUNFIRE_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-Enterprise
+USR_SUNFIRE_INC_DIR = $(USR_SUNFIRE_DIR)/include
+USR_SUNFIRE_ISYS_DIR = $(USR_SUNFIRE_INC_DIR)/sys
+USR_SUNFIRE_SBIN_DIR = $(USR_SUNFIRE_DIR)/sbin
+USR_SUNFIRE_LIB_DIR = $(USR_SUNFIRE_DIR)/lib
+
+SUNFIRE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/sunfire/lint-libs/$(OBJS_DIR)
+
+#
+# Define objects.
+#
+SUNFIRE_OBJS = sunfire.o
+
+include $(UTSBASE)/sun4u/sunfire/Makefile.files
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sun4u/Makefile.sun4u
+
+#
+# Define modules (must come after Makefile.sun4u).
+#
+SUNFIRE_KMODS = ac central environ fhc simmstat sysctrl sram
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
+LINTTAGS += -erroff=E_STATIC_UNUSED
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared b/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared
deleted file mode 100644
index 657bca55c6..0000000000
--- a/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared
+++ /dev/null
@@ -1,83 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Global definitions for sun4u implementation specific modules.
-#
-
-#
-# Define the name of this implementation.
-#
-
-#
-# Define directories.
-#
-ROOT_SUNFIRE_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-Enterprise
-ROOT_SUNFIRE_MOD_DIR = $(ROOT_SUNFIRE_DIR)/kernel
-
-ROOT_SUNFIRE_DRV_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/drv
-ROOT_SUNFIRE_DRV_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_SUNFIRE_DRV_DIR = $(ROOT_SUNFIRE_DRV_DIR_$(CLASS))
-ROOT_PLAT_DRV_DIRS = $(ROOT_SUNFIRE_DRV_DIR)
-
-ROOT_SUNFIRE_MISC_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/misc
-ROOT_SUNFIRE_MISC_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/misc/$(SUBDIR64)
-ROOT_SUNFIRE_MISC_DIR = $(ROOT_SUNFIRE_MISC_DIR_$(CLASS))
-
-USR_SUNFIRE_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-Enterprise
-USR_SUNFIRE_INC_DIR = $(USR_SUNFIRE_DIR)/include
-USR_SUNFIRE_ISYS_DIR = $(USR_SUNFIRE_INC_DIR)/sys
-USR_SUNFIRE_SBIN_DIR = $(USR_SUNFIRE_DIR)/sbin
-USR_SUNFIRE_LIB_DIR = $(USR_SUNFIRE_DIR)/lib
-
-SUNFIRE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/sunfire/lint-libs/$(OBJS_DIR)
-
-#
-# Define objects.
-#
-SUNFIRE_OBJS = sunfire.o
-
-include $(UTSTREE)/sun4u/sunfire/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u).
-#
-SUNFIRE_KMODS = ac central environ fhc simmstat sysctrl sram
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS += -erroff=E_STATIC_UNUSED
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
diff --git a/usr/src/uts/sun4u/sunfire/Makefile.targ b/usr/src/uts/sun4u/sunfire/Makefile.targ
index 8c85cb93aa..d400015197 100644
--- a/usr/src/uts/sun4u/sunfire/Makefile.targ
+++ b/usr/src/uts/sun4u/sunfire/Makefile.targ
@@ -20,12 +20,60 @@
#
#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u implementation specific modules.
+#
+
+.KEEP_STATE:
+
#
+# Rules for implementation subdirectories.
+#
+$(ROOT_SUNFIRE_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_SUNFIRE_MOD_DIR): $(ROOT_SUNFIRE_DIR)
+ -$(INS.dir)
+
+$(ROOT_SUNFIRE_MISC_DIR_32): $(ROOT_SUNFIRE_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_SUNFIRE_MISC_DIR_64): $(ROOT_SUNFIRE_MISC_DIR_32)
+ -$(INS.dir)
+
+$(ROOT_SUNFIRE_DRV_DIR_32): $(ROOT_SUNFIRE_MOD_DIR)
+ -$(INS.dir)
-UTSTREE=$(UTSBASE)
+$(ROOT_SUNFIRE_DRV_DIR_64): $(ROOT_SUNFIRE_DRV_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/sunfire/Makefile.targ.shared
+$(USR_SUNFIRE_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_SUNFIRE_INC_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_INCL_DIR)
+ $(INS.slink4)
+
+$(USR_SUNFIRE_ISYS_DIR): $(USR_SUNFIRE_INC_DIR)
+ $(INS.dir)
+
+$(USR_SUNFIRE_SBIN_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_SBIN_DIR)
+ $(INS.slink5)
+
+$(USR_SUNFIRE_LIB_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_LIB_DIR)
+ -$(INS.dir)
+
+$(ROOT_SUNFIRE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_SUNFIRE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/sunfire/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/sunfire/Makefile.targ.shared b/usr/src/uts/sun4u/sunfire/Makefile.targ.shared
deleted file mode 100644
index 51607c85c9..0000000000
--- a/usr/src/uts/sun4u/sunfire/Makefile.targ.shared
+++ /dev/null
@@ -1,79 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u implementation specific modules.
-#
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_SUNFIRE_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_MOD_DIR): $(ROOT_SUNFIRE_DIR)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_MISC_DIR_32): $(ROOT_SUNFIRE_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_MISC_DIR_64): $(ROOT_SUNFIRE_MISC_DIR_32)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_DRV_DIR_32): $(ROOT_SUNFIRE_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_DRV_DIR_64): $(ROOT_SUNFIRE_DRV_DIR_32)
- -$(INS.dir)
-
-$(USR_SUNFIRE_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_SUNFIRE_INC_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_INCL_DIR)
- $(INS.slink4)
-
-$(USR_SUNFIRE_ISYS_DIR): $(USR_SUNFIRE_INC_DIR)
- $(INS.dir)
-
-$(USR_SUNFIRE_SBIN_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_SBIN_DIR)
- $(INS.slink5)
-
-$(USR_SUNFIRE_LIB_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_LIB_DIR)
- -$(INS.dir)
-
-$(ROOT_SUNFIRE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_SUNFIRE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/sunfire/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/tazmo/Makefile.targ b/usr/src/uts/sun4u/tazmo/Makefile.targ
index 40a592af5a..a945fc6a5d 100644
--- a/usr/src/uts/sun4u/tazmo/Makefile.targ
+++ b/usr/src/uts/sun4u/tazmo/Makefile.targ
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,63 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
+#
+# Common targets for sun4u Tazmo implementation specific modules.
#
-UTSTREE=$(UTSBASE)
+IMPLEMENTED_PLATFORM = SUNW,Ultra-4
+
+.KEEP_STATE:
+
+#
+# Rules for implementation subdirectories.
+#
+$(ROOT_TAZMO_DIR): $(ROOT_PLAT_DIR)
+ -$(INS.dir)
+
+$(ROOT_TAZMO_MOD_DIR): $(ROOT_TAZMO_DIR)
+ -$(INS.dir)
+
+$(ROOT_TAZMO_DRV_DIR_32): $(ROOT_TAZMO_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_TAZMO_DRV_DIR_64): $(ROOT_TAZMO_DRV_DIR_32)
+ -$(INS.dir)
-include $(UTSBASE)/sun4u/tazmo/Makefile.targ.shared
+$(ROOT_TAZMO_MISC_DIR_32): $(ROOT_TAZMO_MOD_DIR)
+ -$(INS.dir)
+
+$(ROOT_TAZMO_MISC_DIR_64): $(ROOT_TAZMO_MISC_DIR_32)
+ -$(INS.dir)
+
+$(USR_TAZMO_DIR): $(USR_PLAT_DIR)
+ -$(INS.dir)
+
+$(USR_TAZMO_INC_DIR): $(USR_TAZMO_DIR)
+ -$(INS.slink4)
+
+$(USR_TAZMO_SBIN_DIR): $(USR_TAZMO_DIR)
+ -$(INS.slink5)
+
+$(USR_TAZMO_LIB_DIR): $(USR_TAZMO_DIR)
+ -$(INS.dir)
+
+$(ROOT_TAZMO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MOD_DIR) FRC
+ $(INS.file)
+
+$(ROOT_TAZMO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MISC_DIR) FRC
+ $(INS.file)
+
+$(ROOT_TAZMO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_DRV_DIR) FRC
+ $(INS.file)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sun4u/tazmo/Makefile.rules
+include $(UTSBASE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/tazmo/Makefile.targ.shared b/usr/src/uts/sun4u/tazmo/Makefile.targ.shared
deleted file mode 100644
index 90658a52ab..0000000000
--- a/usr/src/uts/sun4u/tazmo/Makefile.targ.shared
+++ /dev/null
@@ -1,80 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-
-#
-# Common targets for sun4u Tazmo implementation specific modules.
-#
-
-IMPLEMENTED_PLATFORM = SUNW,Ultra-4
-
-.KEEP_STATE:
-
-#
-# Rules for implementation subdirectories.
-#
-$(ROOT_TAZMO_DIR): $(ROOT_PLAT_DIR)
- -$(INS.dir)
-
-$(ROOT_TAZMO_MOD_DIR): $(ROOT_TAZMO_DIR)
- -$(INS.dir)
-
-$(ROOT_TAZMO_DRV_DIR_32): $(ROOT_TAZMO_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_TAZMO_DRV_DIR_64): $(ROOT_TAZMO_DRV_DIR_32)
- -$(INS.dir)
-
-$(ROOT_TAZMO_MISC_DIR_32): $(ROOT_TAZMO_MOD_DIR)
- -$(INS.dir)
-
-$(ROOT_TAZMO_MISC_DIR_64): $(ROOT_TAZMO_MISC_DIR_32)
- -$(INS.dir)
-
-$(USR_TAZMO_DIR): $(USR_PLAT_DIR)
- -$(INS.dir)
-
-$(USR_TAZMO_INC_DIR): $(USR_TAZMO_DIR)
- -$(INS.slink4)
-
-$(USR_TAZMO_SBIN_DIR): $(USR_TAZMO_DIR)
- -$(INS.slink5)
-
-$(USR_TAZMO_LIB_DIR): $(USR_TAZMO_DIR)
- -$(INS.dir)
-
-$(ROOT_TAZMO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MOD_DIR) FRC
- $(INS.file)
-
-$(ROOT_TAZMO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MISC_DIR) FRC
- $(INS.file)
-
-$(ROOT_TAZMO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_DRV_DIR) FRC
- $(INS.file)
-
-#
-# Include common targets.
-#
-include $(UTSTREE)/sun4u/tazmo/Makefile.rules
-include $(UTSTREE)/sun4u/Makefile.targ
diff --git a/usr/src/uts/sun4u/tazmo/Makefile.tazmo b/usr/src/uts/sun4u/tazmo/Makefile.tazmo
index 0f3a8c3c3a..dd4bfa6ef5 100644
--- a/usr/src/uts/sun4u/tazmo/Makefile.tazmo
+++ b/usr/src/uts/sun4u/tazmo/Makefile.tazmo
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,70 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+#
+# uts/sun4u/tazmo/Makefile.impl
+# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# Global definitions for sun4u implementation specific modules.
+#
+
+#
+# Define directories.
+#
+ROOT_TAZMO_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-4
+ROOT_TAZMO_MOD_DIR = $(ROOT_TAZMO_DIR)/kernel
+
+ROOT_TAZMO_KERN_DIR_32 = $(ROOT_TAZMO_MOD_DIR)
+ROOT_TAZMO_KERN_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/$(SUBDIR64)
+ROOT_TAZMO_DRV_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/drv
+ROOT_TAZMO_DRV_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/drv/$(SUBDIR64)
+ROOT_TAZMO_MISC_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/misc
+ROOT_TAZMO_MISC_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/misc/$(SUBDIR64)
+
+ROOT_TAZMO_KERN_DIR = $(ROOT_TAZMO_KERN_DIR_$(CLASS))
+ROOT_TAZMO_MISC_DIR = $(ROOT_TAZMO_MISC_DIR_$(CLASS))
+ROOT_TAZMO_DRV_DIR = $(ROOT_TAZMO_DRV_DIR_$(CLASS))
+
+ROOT_PLAT_MOD_DIRS += $(ROOT_TAZMO_MOD_DIR)
+ROOT_PLAT_MISC_DIRS += $(ROOT_TAZMO_MISC_DIR)
+ROOT_PLAT_MISC_DIRS_32 += $(ROOT_TAZMO_MISC_DIR_32)
+ROOT_PLAT_DRV_DIRS = $(ROOT_TAZMO_DRV_DIR)
+
+USR_TAZMO_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-4
+USR_TAZMO_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM)
+USR_TAZMO_INC_DIR = $(USR_TAZMO_DIR)/include
+USR_TAZMO_ISYS_DIR = $(USR_TAZMO_INC_DIR)/sys
+USR_TAZMO_SBIN_DIR = $(USR_TAZMO_DIR)/sbin
+USR_TAZMO_LIB_DIR = $(USR_TAZMO_DIR)/lib
+
+TAZMO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/tazmo/lint-libs/$(OBJS_DIR)
+
+#
+# Define objects.
+#
+TAZMO_OBJS = tazmo.o
+
+include $(UTSBASE)/sun4u/tazmo/Makefile.files
+
+#
+# Include common rules.
#
+include $(UTSBASE)/sun4u/Makefile.sun4u
-UTSTREE=$(UTSBASE)
+#
+# Define modules (must come after Makefile.sun4u).
+#
+TAZMO_KMODS = platmod
+TAZMO_KMODS += envctrl
+
+#
+# For now, disable these lint checks; maintainers should endeavor
+# to investigate and remove these for maximum lint coverage.
+# Please do not carry these forward to new Makefiles.
+#
+LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
+LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
+LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
+LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-include $(UTSBASE)/sun4u/tazmo/Makefile.tazmo.shared
diff --git a/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared b/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared
deleted file mode 100644
index 7c0639ff27..0000000000
--- a/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared
+++ /dev/null
@@ -1,87 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/sun4u/tazmo/Makefile.impl
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Global definitions for sun4u implementation specific modules.
-#
-
-#
-# Define directories.
-#
-ROOT_TAZMO_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-4
-ROOT_TAZMO_MOD_DIR = $(ROOT_TAZMO_DIR)/kernel
-
-ROOT_TAZMO_KERN_DIR_32 = $(ROOT_TAZMO_MOD_DIR)
-ROOT_TAZMO_KERN_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/$(SUBDIR64)
-ROOT_TAZMO_DRV_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/drv
-ROOT_TAZMO_DRV_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/drv/$(SUBDIR64)
-ROOT_TAZMO_MISC_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/misc
-ROOT_TAZMO_MISC_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/misc/$(SUBDIR64)
-
-ROOT_TAZMO_KERN_DIR = $(ROOT_TAZMO_KERN_DIR_$(CLASS))
-ROOT_TAZMO_MISC_DIR = $(ROOT_TAZMO_MISC_DIR_$(CLASS))
-ROOT_TAZMO_DRV_DIR = $(ROOT_TAZMO_DRV_DIR_$(CLASS))
-
-ROOT_PLAT_MOD_DIRS += $(ROOT_TAZMO_MOD_DIR)
-ROOT_PLAT_MISC_DIRS += $(ROOT_TAZMO_MISC_DIR)
-ROOT_PLAT_MISC_DIRS_32 += $(ROOT_TAZMO_MISC_DIR_32)
-ROOT_PLAT_DRV_DIRS = $(ROOT_TAZMO_DRV_DIR)
-
-USR_TAZMO_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-4
-USR_TAZMO_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM)
-USR_TAZMO_INC_DIR = $(USR_TAZMO_DIR)/include
-USR_TAZMO_ISYS_DIR = $(USR_TAZMO_INC_DIR)/sys
-USR_TAZMO_SBIN_DIR = $(USR_TAZMO_DIR)/sbin
-USR_TAZMO_LIB_DIR = $(USR_TAZMO_DIR)/lib
-
-TAZMO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/tazmo/lint-libs/$(OBJS_DIR)
-
-#
-# Define objects.
-#
-TAZMO_OBJS = tazmo.o
-
-include $(UTSBASE)/sun4u/tazmo/Makefile.files
-
-#
-# Include common rules.
-#
-include $(UTSTREE)/sun4u/Makefile.sun4u
-
-#
-# Define modules (must come after Makefile.sun4u).
-#
-TAZMO_KMODS = platmod
-TAZMO_KMODS += envctrl
-
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-
diff --git a/usr/src/uts/sun4v/Makefile.sun4v b/usr/src/uts/sun4v/Makefile.sun4v
index a4e93da34d..31ad742860 100644
--- a/usr/src/uts/sun4v/Makefile.sun4v
+++ b/usr/src/uts/sun4v/Makefile.sun4v
@@ -1,9 +1,9 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
@@ -18,12 +18,422 @@
#
# CDDL HEADER END
#
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+
+#
+# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
+# Copyright (c) 2013 Andrew Stormont. All rights reserved.
+#
+# This makefile contains the common definitions for the sun4v unix
+# and all sun4v implementation architecture dependent modules.
+#
+
+#
+# Machine type (implementation architecture):
+#
+PLATFORM = sun4v
+LINKED_PLATFORMS += SUNW,Sun-Fire-T1000
+LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5120
+LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5220
+LINKED_PLATFORMS += SUNW,T5140
+LINKED_PLATFORMS += SUNW,T5240
+LINKED_PLATFORMS += SUNW,T5440
+LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T1000
+LINKED_PLATFORMS += SUNW,Sun-Blade-T6300
+LINKED_PLATFORMS += SUNW,Sun-Blade-T6320
+LINKED_PLATFORMS += SUNW,Netra-CP3260
+LINKED_PLATFORMS += SUNW,Netra-T5220
+LINKED_PLATFORMS += SUNW,USBRDT-5240
+LINKED_PLATFORMS += SUNW,Netra-T5440
+LINKED_PLATFORMS += SUNW,Sun-Blade-T6340
+PROMIF = ieee1275
+PSMBASE = $(UTSBASE)/../psm
+
+#
+# uname -m value
+#
+UNAME_M = $(PLATFORM)
+
+#
+# Definitions for the platform-specific /platform directories.
+#
+# PLATFORMS designates those sun4v machines which have no platform
+# specific code.
+#
+# IMPLEMENTATIONS is used to designate sun4v machines which have
+# platform specific modules. All code specific to a given implementation
+# resides in the appropriately named subdirectory. This requires
+# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS,
+# USR_PLAT_DIRS, etc.
+# The number of IMPLEMENTATIONS should not grow!
+#
+# So if we had an implementation named 'foo', we would need the following
+# Makefiles in the foo subdirectory:
+#
+# sun4v/foo/Makefile
+# sun4v/foo/Makefile.foo
+# sun4v/foo/Makefile.targ
+#
+
+#
+# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list.
+# This list should be empty. A platform without platform modules
+# is a plain, generic sun4v platform.
+#
+#IMPLEMENTED_PLATFORM =
+#PLATFORMS = $(IMPLEMENTED_PLATFORM)
+
+IMPLEMENTATIONS = ontario montoya huron maramba
+
+#ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%)
+#USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%)
+
+#USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM)
+#USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include
+#USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin
+#USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib
+
+#
+# Define supported builds
+#
+DEF_BUILDS = $(DEF_BUILDS64)
+ALL_BUILDS = $(ALL_BUILDS64)
+
+#
+# Everybody needs to know how to build modstubs.o and to locate unix.o
+#
+UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
+GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix
+MODSTUBS_DIR = $(UNIX_DIR)
+DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
+LINTS_DIR = $(OBJS_DIR)
+LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
+
+DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
+DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
+
+UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
+MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
+GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
+
+LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
+GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln
+
+LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
+LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
+
+#
+# cpu and platform modules need to know how to build their own symcheck module
+#
+PLATMOD = platmod
+PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so
+
+CPUNAME = cpu
+CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so
+
+SYM_MOD = $(OBJS_DIR)/unix.sym
+
+#
+# Include the makefiles which define build rule templates, the
+# collection of files per module, and a few specific flags. Note
+# that order is significant, just as with an include path. The
+# first build rule template which matches the files name will be
+# used. By including these in order from most machine dependent
+# to most machine independent, we allow a machine dependent file
+# to be used in preference over a machine independent version
+# (Such as a machine specific optimization, which preserves the
+# interfaces.)
+#
+include $(UTSBASE)/sun4/Makefile.files
+include $(UTSBASE)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/sfmmu/Makefile.files
+include $(UTSBASE)/sparc/v9/Makefile.files
+include $(UTSBASE)/sparc/Makefile.files
+include $(UTSBASE)/sun/Makefile.files
+include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files
+include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files
+include $(UTSBASE)/common/Makefile.files
+
+#
+# Include machine independent rules. Note that this does not imply
+# that the resulting module from rules in Makefile.uts is machine
+# independent. Only that the build rules are machine independent.
+#
+include $(UTSBASE)/Makefile.uts
+
+CTFMERGE_GUDIR = sun4v
+
+#
+# machine specific optimization, override default in Makefile.master
+#
+CC_XARCH = -m64 -xarch=sparcvis
+AS_XARCH = -xarch=v9v
+COPTIMIZE = -xO3
+CCMODE = -Xa
+
+CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM)
+CFLAGS += $(CC_XARCH)
+CFLAGS += $(COPTIMIZE)
+CFLAGS += $(EXTRA_CFLAGS)
+CFLAGS += $(XAOPT)
+CFLAGS += $(INLINES) -D_ASM_INLINES
+CFLAGS += $(CCMODE)
+CFLAGS += $(SPACEFLAG)
+CFLAGS += $(CERRWARN)
+CFLAGS += $(CTF_FLAGS_$(CLASS))
+CFLAGS += $(C99MODE)
+CFLAGS += $(CCUNBOUND)
+CFLAGS += $(CCNOAUTOINLINE)
+CFLAGS += $(CCSTATICSYM)
+CFLAGS += $(CC32BITCALLERS)
+CFLAGS += $(IROPTFLAG)
+CFLAGS += $(CGLOBALSTATIC)
+CFLAGS += -xregs=no%float
+CFLAGS += -xstrconst
+CFLAGS += $(CSOURCEDEBUGFLAGS)
+CFLAGS += $(CUSERFLAGS)
+
+CPPFLAGS += -DGLREG
+
+ASFLAGS += $(AS_XARCH) -DGLREG
+
+AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
+
+LINT_KMODS += $(GENUNIX_KMODS)
+
+LINT_DEFS = -m64
+
+#
+# The following must be defined for all implementations:
+#
+# MAPFILE: ld mapfile for the build of kernel/unix.
+# MODSTUBS: Module stubs source file.
+# GENCONST_SRC: genconst.c
+# OFFSETS: offsets.in
+# PLATFORM_OFFSETS: Platform specific mach_offsets.in
+# FDOFFSETS: fd_offsets.in
+#
+MAPFILE = $(UTSBASE)/sun4/conf/Mapfile
+MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
+GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c
+OFFSETS = $(UTSBASE)/sun4/ml/offsets.in
+PLATFORM_OFFSETS = $(UTSBASE)/sun4v/ml/mach_offsets.in
+FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in
+
+#
+# Define the actual specific platforms
+#
+
+MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU
+MACHINE_DEFS += -DMAX_MEM_NODES=8
+
+#
+# Software workarounds for hardware "features"
+#
+
+include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
+
#
-# ident "%Z%%M% %I% %E% SMI"
+# Debugging level
#
+# Special knowledge of which special debugging options effect which
+# file is used to optimize the build if these flags are changed.
+#
+# XXX: The above could possibly be done for more flags and files, but
+# is left as an experiment to the interested reader. Be forewarned,
+# that excessive use could lead to maintenance difficulties.
+#
+# Note: kslice can be enabled for the sun4v, but is disabled by default
+# in all cases.
+#
+
+DEBUG_DEFS_OBJ64 =
+DEBUG_DEFS_DBG64 = -DDEBUG
+DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
+
+DEBUG_COND_OBJ64 = $(POUND_SIGN)
+DEBUG_COND_DBG64 =
+IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
+
+$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG
+$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG
+$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE
+$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0
+
+IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ)
+# comment this out for a non-debug kernel with TRAPTRACE
+#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/
+
+$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE
+$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
+
+# Comment these out if you don't want dispatcher lock statistics.
+
+#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS
+#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS
+
+# Comment these out if you don't want dispatcher debugging
+
+#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG
+
+#
+# Collect the preprocessor definitions to be associated with *all*
+# files.
+#
+ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
+ $(OPTION_DEFS)
+GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS)
+
+#
+# ----- TRANSITIONAL SECTION --------------------------------------------------
+#
+
+#
+# Not everything which *should* be a module is a module yet. The
+# following is a list of such objects which are currently part of
+# the base kernel but should soon become kmods.
+#
+MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
+
+#
+# ----- END OF TRANSITIONAL SECTION -------------------------------------------
+#
+
+#
+# The kernels modules which are "implementation architecture"
+# specific for this machine are enumerated below. Note that most
+# of these modules must exist (in one form or another) for each
+# architecture.
+#
+# Common Drivers (usually pseudo drivers) (/kernel/drv):
+#
+
+#
+# Machine Specific Driver Modules (/kernel/drv):
+#
+DRV_KMODS += bge
+DRV_KMODS += cnex
+DRV_KMODS += cpc
+DRV_KMODS += drctl
+DRV_KMODS += ds_pri
+DRV_KMODS += ds_snmp
+DRV_KMODS += ebus
+DRV_KMODS += fpc
+DRV_KMODS += glvc
+DRV_KMODS += mdesc
+DRV_KMODS += niumx
+DRV_KMODS += ntwdt
+DRV_KMODS += nxge
+DRV_KMODS += n2piupc
+DRV_KMODS += iospc
+DRV_KMODS += n2rng
+DRV_KMODS += px
+DRV_KMODS += qcn
+DRV_KMODS += rootnex
+DRV_KMODS += su
+DRV_KMODS += tpm
+DRV_KMODS += trapstat
+DRV_KMODS += vcc
+DRV_KMODS += vdc
+DRV_KMODS += vds
+DRV_KMODS += vldc
+DRV_KMODS += vlds
+DRV_KMODS += vnet
+DRV_KMODS += vnex
+DRV_KMODS += vsw
+
+#
+# Exec Class Modules (/kernel/exec):
+#
+EXEC_KMODS +=
-UTSTREE=$(UTSBASE)
+#
+# Scheduling Class Modules (/kernel/sched):
+#
+SCHED_KMODS +=
+
+#
+# File System Modules (/kernel/fs):
+#
+FS_KMODS +=
+
+#
+# Streams Modules (/kernel/strmod):
+#
+# STRMOD_KMODS += kb
+
+#
+# 'System' Modules (/kernel/sys):
+#
+SYS_KMODS +=
+
+#
+# 'User' Modules (/kernel/misc):
+#
+MISC_KMODS += bootdev
+MISC_KMODS += dr_cpu
+MISC_KMODS += dr_io
+MISC_KMODS += dr_mem
+MISC_KMODS += ds
+MISC_KMODS += fault_iso
+MISC_KMODS += ldc
+MISC_KMODS += obpsym
+MISC_KMODS += platmod
+MISC_KMODS += platsvc
+MISC_KMODS += vis
+MISC_KMODS += pcie
+
+# md5 optimized for Niagara
+#
+MISC_KMODS += md5
+
+#
+# Brand modules
+#
+BRAND_KMODS += sn1_brand s10_brand
+
+#
+# Software Cryptographic Providers (/kernel/crypto):
+#
+CRYPTO_KMODS += arcfour
-include $(UTSBASE)/sun4v/Makefile.sun4v.shared
+#
+# generic-unix module (/kernel/genunix):
+#
+GENUNIX_KMODS += genunix
+
+#
+# Modules eXcluded from the product:
+#
+XMODS +=
+
+#
+# cpu modules
+#
+CPU_KMODS += generic niagara niagara2 vfalls kt
+
+LINT_CPU_KMODS += generic
+
+#
+# Performance Counter BackEnd Modules (/usr/kernel/pcbe):
+#
+PCBE_KMODS += niagara_pcbe
+PCBE_KMODS += niagara2_pcbe
+PCBE_KMODS += vfalls_pcbe
+PCBE_KMODS += kt_pcbe
diff --git a/usr/src/uts/sun4v/Makefile.sun4v.shared b/usr/src/uts/sun4v/Makefile.sun4v.shared
deleted file mode 100644
index f30ab80338..0000000000
--- a/usr/src/uts/sun4v/Makefile.sun4v.shared
+++ /dev/null
@@ -1,439 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-# Copyright (c) 2013 Andrew Stormont. All rights reserved.
-#
-# This makefile contains the common definitions for the sun4v unix
-# and all sun4v implementation architecture dependent modules.
-#
-
-#
-# Machine type (implementation architecture):
-#
-PLATFORM = sun4v
-LINKED_PLATFORMS += SUNW,Sun-Fire-T1000
-LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5120
-LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5220
-LINKED_PLATFORMS += SUNW,T5140
-LINKED_PLATFORMS += SUNW,T5240
-LINKED_PLATFORMS += SUNW,T5440
-LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T1000
-LINKED_PLATFORMS += SUNW,Sun-Blade-T6300
-LINKED_PLATFORMS += SUNW,Sun-Blade-T6320
-LINKED_PLATFORMS += SUNW,Netra-CP3260
-LINKED_PLATFORMS += SUNW,Netra-T5220
-LINKED_PLATFORMS += SUNW,USBRDT-5240
-LINKED_PLATFORMS += SUNW,Netra-T5440
-LINKED_PLATFORMS += SUNW,Sun-Blade-T6340
-PROMIF = ieee1275
-PSMBASE = $(UTSBASE)/../psm
-
-#
-# uname -m value
-#
-UNAME_M = $(PLATFORM)
-
-#
-# Definitions for the platform-specific /platform directories.
-#
-# PLATFORMS designates those sun4v machines which have no platform
-# specific code.
-#
-# IMPLEMENTATIONS is used to designate sun4v machines which have
-# platform specific modules. All code specific to a given implementation
-# resides in the appropriately named subdirectory. This requires
-# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS,
-# USR_PLAT_DIRS, etc.
-# The number of IMPLEMENTATIONS should not grow!
-#
-# So if we had an implementation named 'foo', we would need the following
-# Makefiles in the foo subdirectory:
-#
-# sun4v/foo/Makefile
-# sun4v/foo/Makefile.foo
-# sun4v/foo/Makefile.targ
-#
-
-#
-# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list.
-# This list should be empty. A platform without platform modules
-# is a plain, generic sun4v platform.
-#
-#IMPLEMENTED_PLATFORM =
-#PLATFORMS = $(IMPLEMENTED_PLATFORM)
-
-IMPLEMENTATIONS = ontario montoya huron maramba
-
-#ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%)
-#USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%)
-
-#USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM)
-#USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include
-#USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin
-#USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib
-
-#
-# Define supported builds
-#
-DEF_BUILDS = $(DEF_BUILDS64)
-ALL_BUILDS = $(ALL_BUILDS64)
-
-#
-# Everybody needs to know how to build modstubs.o and to locate unix.o
-#
-UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix
-GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix
-MODSTUBS_DIR = $(UNIX_DIR)
-DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym
-LINTS_DIR = $(OBJS_DIR)
-LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)
-
-DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o
-DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so
-
-UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
-MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
-GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
-
-LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
-GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln
-
-LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%)
-LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
-
-#
-# cpu and platform modules need to know how to build their own symcheck module
-#
-PLATMOD = platmod
-PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so
-
-CPUNAME = cpu
-CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so
-
-SYM_MOD = $(OBJS_DIR)/unix.sym
-
-#
-# Include the makefiles which define build rule templates, the
-# collection of files per module, and a few specific flags. Note
-# that order is significant, just as with an include path. The
-# first build rule template which matches the files name will be
-# used. By including these in order from most machine dependent
-# to most machine independent, we allow a machine dependent file
-# to be used in preference over a machine independent version
-# (Such as a machine specific optimization, which preserves the
-# interfaces.)
-#
-include $(UTSBASE)/sun4/Makefile.files
-include $(UTSTREE)/$(PLATFORM)/Makefile.files
-include $(UTSBASE)/sfmmu/Makefile.files
-include $(UTSBASE)/sparc/v9/Makefile.files
-include $(UTSBASE)/sparc/Makefile.files
-include $(UTSTREE)/sun/Makefile.files
-include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files
-include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files
-include $(UTSTREE)/common/Makefile.files
-
-#
-# Include machine independent rules. Note that this does not imply
-# that the resulting module from rules in Makefile.uts is machine
-# independent. Only that the build rules are machine independent.
-#
-include $(UTSBASE)/Makefile.uts
-
-CTFMERGE_GUDIR = sun4v
-
-#
-# machine specific optimization, override default in Makefile.master
-#
-CC_XARCH = -m64 -xarch=sparcvis
-AS_XARCH = -xarch=v9v
-COPTIMIZE = -xO3
-CCMODE = -Xa
-
-CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM)
-CFLAGS += $(CC_XARCH)
-CFLAGS += $(COPTIMIZE)
-CFLAGS += $(EXTRA_CFLAGS)
-CFLAGS += $(XAOPT)
-CFLAGS += $(INLINES) -D_ASM_INLINES
-CFLAGS += $(CCMODE)
-CFLAGS += $(SPACEFLAG)
-CFLAGS += $(CERRWARN)
-CFLAGS += $(CTF_FLAGS_$(CLASS))
-CFLAGS += $(C99MODE)
-CFLAGS += $(CCUNBOUND)
-CFLAGS += $(CCNOAUTOINLINE)
-CFLAGS += $(CCSTATICSYM)
-CFLAGS += $(CC32BITCALLERS)
-CFLAGS += $(IROPTFLAG)
-CFLAGS += $(CGLOBALSTATIC)
-CFLAGS += -xregs=no%float
-CFLAGS += -xstrconst
-CFLAGS += $(CSOURCEDEBUGFLAGS)
-CFLAGS += $(CUSERFLAGS)
-
-CPPFLAGS += -DGLREG
-
-ASFLAGS += $(AS_XARCH) -DGLREG
-
-AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR)
-
-LINT_KMODS += $(GENUNIX_KMODS)
-
-LINT_DEFS = -m64
-
-#
-# The following must be defined for all implementations:
-#
-# MAPFILE: ld mapfile for the build of kernel/unix.
-# MODSTUBS: Module stubs source file.
-# GENCONST_SRC: genconst.c
-# OFFSETS: offsets.in
-# PLATFORM_OFFSETS: Platform specific mach_offsets.in
-# FDOFFSETS: fd_offsets.in
-#
-MAPFILE = $(UTSBASE)/sun4/conf/Mapfile
-MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s
-GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c
-OFFSETS = $(UTSBASE)/sun4/ml/offsets.in
-PLATFORM_OFFSETS = $(UTSBASE)/sun4v/ml/mach_offsets.in
-FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in
-
-#
-# Define the actual specific platforms
-#
-
-MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU
-MACHINE_DEFS += -DMAX_MEM_NODES=8
-
-#
-# Software workarounds for hardware "features"
-#
-
-include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds
-
-#
-# Debugging level
-#
-# Special knowledge of which special debugging options effect which
-# file is used to optimize the build if these flags are changed.
-#
-# XXX: The above could possibly be done for more flags and files, but
-# is left as an experiment to the interested reader. Be forewarned,
-# that excessive use could lead to maintenance difficulties.
-#
-# Note: kslice can be enabled for the sun4v, but is disabled by default
-# in all cases.
-#
-
-DEBUG_DEFS_OBJ64 =
-DEBUG_DEFS_DBG64 = -DDEBUG
-DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE))
-
-DEBUG_COND_OBJ64 = $(POUND_SIGN)
-DEBUG_COND_DBG64 =
-IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
-
-$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG
-$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG
-$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE
-$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0
-
-IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ)
-# comment this out for a non-debug kernel with TRAPTRACE
-#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/
-
-$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE
-$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE
-
-# Comment these out if you don't want dispatcher lock statistics.
-
-#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS
-#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS
-
-# Comment these out if you don't want dispatcher debugging
-
-#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG
-
-#
-# Collect the preprocessor definitions to be associated with *all*
-# files.
-#
-ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \
- $(OPTION_DEFS)
-GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS)
-
-#
-# ----- TRANSITIONAL SECTION --------------------------------------------------
-#
-
-#
-# Not everything which *should* be a module is a module yet. The
-# following is a list of such objects which are currently part of
-# the base kernel but should soon become kmods.
-#
-MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS)
-
-#
-# ----- END OF TRANSITIONAL SECTION -------------------------------------------
-#
-
-#
-# The kernels modules which are "implementation architecture"
-# specific for this machine are enumerated below. Note that most
-# of these modules must exist (in one form or another) for each
-# architecture.
-#
-# Common Drivers (usually pseudo drivers) (/kernel/drv):
-#
-
-#
-# Machine Specific Driver Modules (/kernel/drv):
-#
-DRV_KMODS += bge
-DRV_KMODS += cnex
-DRV_KMODS += cpc
-DRV_KMODS += drctl
-DRV_KMODS += ds_pri
-DRV_KMODS += ds_snmp
-DRV_KMODS += ebus
-DRV_KMODS += fpc
-DRV_KMODS += glvc
-DRV_KMODS += mdesc
-DRV_KMODS += niumx
-DRV_KMODS += ntwdt
-DRV_KMODS += nxge
-DRV_KMODS += n2piupc
-DRV_KMODS += iospc
-DRV_KMODS += n2rng
-DRV_KMODS += px
-DRV_KMODS += qcn
-DRV_KMODS += rootnex
-DRV_KMODS += su
-DRV_KMODS += tpm
-DRV_KMODS += trapstat
-DRV_KMODS += vcc
-DRV_KMODS += vdc
-DRV_KMODS += vds
-DRV_KMODS += vldc
-DRV_KMODS += vlds
-DRV_KMODS += vnet
-DRV_KMODS += vnex
-DRV_KMODS += vsw
-
-#
-# Exec Class Modules (/kernel/exec):
-#
-EXEC_KMODS +=
-
-#
-# Scheduling Class Modules (/kernel/sched):
-#
-SCHED_KMODS +=
-
-#
-# File System Modules (/kernel/fs):
-#
-FS_KMODS +=
-
-#
-# Streams Modules (/kernel/strmod):
-#
-# STRMOD_KMODS += kb
-
-#
-# 'System' Modules (/kernel/sys):
-#
-SYS_KMODS +=
-
-#
-# 'User' Modules (/kernel/misc):
-#
-MISC_KMODS += bootdev
-MISC_KMODS += dr_cpu
-MISC_KMODS += dr_io
-MISC_KMODS += dr_mem
-MISC_KMODS += ds
-MISC_KMODS += fault_iso
-MISC_KMODS += ldc
-MISC_KMODS += obpsym
-MISC_KMODS += platmod
-MISC_KMODS += platsvc
-MISC_KMODS += vis
-MISC_KMODS += pcie
-
-# md5 optimized for Niagara
-#
-MISC_KMODS += md5
-
-#
-# Brand modules
-#
-BRAND_KMODS += sn1_brand s10_brand
-
-#
-# Software Cryptographic Providers (/kernel/crypto):
-#
-CRYPTO_KMODS += arcfour
-
-#
-# generic-unix module (/kernel/genunix):
-#
-GENUNIX_KMODS += genunix
-
-#
-# Modules eXcluded from the product:
-#
-XMODS +=
-
-#
-# cpu modules
-#
-CPU_KMODS += generic niagara niagara2 vfalls kt
-
-LINT_CPU_KMODS += generic
-
-#
-# Performance Counter BackEnd Modules (/usr/kernel/pcbe):
-#
-PCBE_KMODS += niagara_pcbe
-PCBE_KMODS += niagara2_pcbe
-PCBE_KMODS += vfalls_pcbe
-PCBE_KMODS += kt_pcbe
diff --git a/usr/src/uts/sun4v/Makefile.targ b/usr/src/uts/sun4v/Makefile.targ
index 939028c403..bb4f06ee15 100644
--- a/usr/src/uts/sun4v/Makefile.targ
+++ b/usr/src/uts/sun4v/Makefile.targ
@@ -1,3 +1,4 @@
+#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
@@ -18,12 +19,30 @@
#
# CDDL HEADER END
#
+#
+# uts/sun4v/Makefile.targ
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+# This Makefile defines the set of all required, target containing
+# included Makefiles for the sun4v "implementation architecture".
#
-UTSTREE=$(UTSBASE)
+#
+# Targets for all implementations:
+#
+include $(UTSBASE)/Makefile.targ
-include $(UTSBASE)/sun4v/Makefile.targ.shared
+#
+# Target set for sun4v (order is somewhat important, sun4 should come
+# after sun4v)
+#
+include $(UTSBASE)/sun4/Makefile.rules
+include $(UTSBASE)/sun4v/Makefile.rules
+include $(UTSBASE)/sfmmu/Makefile.rules
+include $(UTSBASE)/sparc/v9/Makefile.rules
+include $(UTSBASE)/sparc/Makefile.rules
+include $(UTSBASE)/sun/Makefile.rules
+include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules
+include $(PSMBASE)/promif/$(PROMIF)/sun4v/Makefile.rules
+include $(UTSBASE)/common/Makefile.rules
diff --git a/usr/src/uts/sun4v/Makefile.targ.shared b/usr/src/uts/sun4v/Makefile.targ.shared
deleted file mode 100644
index d23af6942f..0000000000
--- a/usr/src/uts/sun4v/Makefile.targ.shared
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# uts/sun4v/Makefile.targ
-# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# This Makefile defines the set of all required, target containing
-# included Makefiles for the sun4v "implementation architecture".
-#
-
-#
-# Targets for all implementations:
-#
-include $(UTSBASE)/Makefile.targ
-
-#
-# Target set for sun4v (order is somewhat important, sun4 should come
-# after sun4v)
-#
-include $(UTSBASE)/sun4/Makefile.rules
-include $(UTSTREE)/sun4v/Makefile.rules
-include $(UTSBASE)/sfmmu/Makefile.rules
-include $(UTSBASE)/sparc/v9/Makefile.rules
-include $(UTSBASE)/sparc/Makefile.rules
-include $(UTSTREE)/sun/Makefile.rules
-include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules
-include $(PSMBASE)/promif/$(PROMIF)/sun4v/Makefile.rules
-include $(UTSTREE)/common/Makefile.rules