xref: /titanic_50/usr/src/uts/sun4u/lw8/Makefile.lw8 (revision bb121940c2fe627557326e0143391ace6e6b7372)
103831d35Sstevel#
203831d35Sstevel# CDDL HEADER START
303831d35Sstevel#
403831d35Sstevel# The contents of this file are subject to the terms of the
503831d35Sstevel# Common Development and Distribution License (the "License").
603831d35Sstevel# You may not use this file except in compliance with the License.
703831d35Sstevel#
803831d35Sstevel# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
903831d35Sstevel# or http://www.opensolaris.org/os/licensing.
1003831d35Sstevel# See the License for the specific language governing permissions
1103831d35Sstevel# and limitations under the License.
1203831d35Sstevel#
1303831d35Sstevel# When distributing Covered Code, include this CDDL HEADER in each
1403831d35Sstevel# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1503831d35Sstevel# If applicable, add the following below this CDDL HEADER, with the
1603831d35Sstevel# fields enclosed by brackets "[]" replaced with your own identifying
1703831d35Sstevel# information: Portions Copyright [yyyy] [name of copyright owner]
1803831d35Sstevel#
1903831d35Sstevel# CDDL HEADER END
2003831d35Sstevel#
2103831d35Sstevel
2203831d35Sstevel#
23*bb121940Sdp78419# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
2403831d35Sstevel# Use is subject to license terms.
2503831d35Sstevel#
26bb25c06cSjg#ident	"%Z%%M%	%I%	%E% SMI"
2703831d35Sstevel
2803831d35Sstevel#
2903831d35Sstevel#	Global definitions for sun4u implementation specific modules.
3003831d35Sstevel#
3103831d35Sstevel
3203831d35Sstevel#
3303831d35Sstevel#	Define the name of this implementation.
3403831d35Sstevel#
3503831d35Sstevel
3603831d35Sstevel#
3703831d35Sstevel#	Define directories.
3803831d35Sstevel#
3903831d35SstevelROOT_LW8_DIR		= $(ROOT_PLAT_DIR)/SUNW,Netra-T12
4003831d35SstevelROOT_LW8_MOD_DIR	= $(ROOT_LW8_DIR)/kernel
4103831d35Sstevel
4203831d35SstevelROOT_LW8_DRV_DIR_32	= $(ROOT_LW8_MOD_DIR)/drv
4303831d35SstevelROOT_LW8_DRV_DIR_64	= $(ROOT_LW8_MOD_DIR)/drv/$(SUBDIR64)
4403831d35SstevelROOT_LW8_DRV_DIR	= $(ROOT_LW8_DRV_DIR_$(CLASS))
4503831d35Sstevel
4603831d35SstevelROOT_LW8_MISC_DIR_32	= $(ROOT_LW8_MOD_DIR)/misc
4703831d35SstevelROOT_LW8_MISC_DIR_64	= $(ROOT_LW8_MOD_DIR)/misc/$(SUBDIR64)
4803831d35SstevelROOT_LW8_MISC_DIR	= $(ROOT_LW8_MISC_DIR_$(CLASS))
4903831d35Sstevel
5003831d35SstevelROOT_LW8_CRYPTO_DIR_32	= $(ROOT_LW8_MOD_DIR)/crypto
5103831d35SstevelROOT_LW8_CRYPTO_DIR_64	= $(ROOT_LW8_MOD_DIR)/crypto/$(SUBDIR64)
5203831d35SstevelROOT_LW8_CRYPTO_DIR	= $(ROOT_LW8_CRYPTO_DIR_$(CLASS))
5303831d35Sstevel
5403831d35SstevelROOT_PLAT_MISC_DIRS_32		+= $(ROOT_LW8_MISC_DIR_32)
5503831d35Sstevel
5603831d35SstevelUSR_LW8_DIR		= $(USR_PLAT_DIR)/SUNW,Netra-T12
5703831d35SstevelUSR_LW8_INC_DIR		= $(USR_LW8_DIR)/include
5803831d35SstevelUSR_LW8_ISYS_DIR	= $(USR_LW8_INC_DIR)/sys
5903831d35SstevelUSR_LW8_SBIN_DIR	= $(USR_LW8_DIR)/sbin
6003831d35SstevelUSR_LW8_LIB_DIR		= $(USR_LW8_DIR)/lib
6103831d35Sstevel
6203831d35SstevelLW8_LINT_LIB_DIR	= $(UTSBASE)/$(PLATFORM)/lw8/lint-libs/$(OBJS_DIR)
6303831d35Sstevel
6403831d35Sstevel#
6503831d35Sstevel#	Define modules.
6603831d35Sstevel#
6703831d35SstevelLW8_KMODS	= lw8 sgenv sgfru platmod ntwdt
6803831d35Sstevel#
6903831d35Sstevel#       Include the makefiles which define build rule templates, the
7003831d35Sstevel#       collection of files per module, and a few specific flags. Note
7103831d35Sstevel#       that order is significant, just as with an include path. The
7203831d35Sstevel#       first build rule template which matches the files name will be
7303831d35Sstevel#       used. By including these in order from most machine dependent
7403831d35Sstevel#       to most machine independent, we allow a machine dependent file
7503831d35Sstevel#       to be used in preference over a machine independent version
7603831d35Sstevel#       (Such as a machine specific optimization, which preserves the
7703831d35Sstevel#       interfaces.)
7803831d35Sstevel#
7903831d35Sstevel
8003831d35Sstevel#
8103831d35Sstevel#	Links to UltraSparc III crypto modules
8203831d35Sstevel#
8303831d35SstevelLW8_CRYPTO_LINKS	= aes
8403831d35Sstevel
8503831d35Sstevelinclude $(UTSBASE)/sun4u/lw8/Makefile.files
8603831d35Sstevel#
8703831d35Sstevel#	Include common rules.
8803831d35Sstevel#
8903831d35Sstevel
9003831d35Sstevelinclude $(UTSBASE)/sun4u/Makefile.sun4u
9103831d35Sstevel#
9203831d35Sstevel#       Everybody needs to know how to build modstubs.o and to locate unix.o
9303831d35Sstevel#
9403831d35SstevelUNIX_DIR	= $(UTSBASE)/$(PLATFORM)/serengeti/unix
9503831d35SstevelMODSTUBS_DIR	= $(UNIX_DIR)
9603831d35SstevelDSF_DIR		= $(UTSBASE)/$(PLATFORM)/serengeti/genassym
9703831d35SstevelLINTS_DIR	= $(OBJS_DIR)
9803831d35SstevelLINT_LIB_DIR	= $(UTSBASE)/$(PLATFORM)/lw8/lint-libs/$(OBJS_DIR)
9903831d35Sstevel
10003831d35Sstevel#
10103831d35Sstevel#       Define the actual specific platforms
10203831d35Sstevel#
10303831d35SstevelMACHINE_DEFS	= -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
10403831d35Sstevel
10503831d35Sstevel#
10603831d35Sstevel#	Define platform specific values
10703831d35Sstevel#
10803831d35SstevelMACHINE_DEFS	+= -DNCPU=554
10903831d35SstevelMACHINE_DEFS	+= -DMAX_UPA=1024
11003831d35SstevelMACHINE_DEFS	+= -DIGN_SIZE=10
11103831d35SstevelMACHINE_DEFS	+= -DMAX_MEM_NODES=8
11203831d35SstevelMACHINE_DEFS	+= -DLOCKED_DTLB_ENTRIES=6
11303831d35Sstevel# Max IOSRAM TOC major version number supported
11403831d35SstevelMACHINE_DEFS	+= -DMAX_IOSRAM_TOC_VER=0x1
115*bb121940Sdp78419MACHINE_DEFS	+= -DC_OBP
11603831d35Sstevel
11703831d35Sstevel#       Define for inline pre-processing since
11803831d35Sstevel#       cpp not smart about v9 yet.
11903831d35Sstevel#
12003831d35SstevelCPP_DEFS_32   =
12103831d35SstevelCPP_DEFS_64   = -D__sparcv9
12203831d35SstevelCPP_DEFS      = $(CPP_DEFS_$(CLASS))
12303831d35Sstevel
124bb25c06cSjg#
125bb25c06cSjg# For now, disable these lint checks; maintainers should endeavor
126bb25c06cSjg# to investigate and remove these for maximum lint coverage.
127bb25c06cSjg# Please do not carry these forward to new Makefiles.
128bb25c06cSjg#
129bb25c06cSjgLINTTAGS	+= -erroff=E_SUSPICIOUS_COMPARISON
130bb25c06cSjgLINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
131bb25c06cSjgLINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
132bb25c06cSjgLINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
133bb25c06cSjgLINTTAGS	+= -erroff=E_STATIC_UNUSED
134