xref: /titanic_52/usr/src/uts/sun4u/lw8/Makefile.lw8 (revision c1ecd8b9404ee0d96d93f02e82c441b9bb149a3d)
1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
7#
8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9# or http://www.opensolaris.org/os/licensing.
10# See the License for the specific language governing permissions
11# and limitations under the License.
12#
13# When distributing Covered Code, include this CDDL HEADER in each
14# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15# If applicable, add the following below this CDDL HEADER, with the
16# fields enclosed by brackets "[]" replaced with your own identifying
17# information: Portions Copyright [yyyy] [name of copyright owner]
18#
19# CDDL HEADER END
20#
21
22#
23# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26#ident	"%Z%%M%	%I%	%E% SMI"
27
28#
29#	Global definitions for sun4u implementation specific modules.
30#
31
32#
33#	Define the name of this implementation.
34#
35
36#
37#	Define directories.
38#
39ROOT_LW8_DIR		= $(ROOT_PLAT_DIR)/SUNW,Netra-T12
40ROOT_LW8_MOD_DIR	= $(ROOT_LW8_DIR)/kernel
41
42ROOT_LW8_DRV_DIR_32	= $(ROOT_LW8_MOD_DIR)/drv
43ROOT_LW8_DRV_DIR_64	= $(ROOT_LW8_MOD_DIR)/drv/$(SUBDIR64)
44ROOT_LW8_DRV_DIR	= $(ROOT_LW8_DRV_DIR_$(CLASS))
45
46ROOT_LW8_MISC_DIR_32	= $(ROOT_LW8_MOD_DIR)/misc
47ROOT_LW8_MISC_DIR_64	= $(ROOT_LW8_MOD_DIR)/misc/$(SUBDIR64)
48ROOT_LW8_MISC_DIR	= $(ROOT_LW8_MISC_DIR_$(CLASS))
49
50ROOT_LW8_CRYPTO_DIR_32	= $(ROOT_LW8_MOD_DIR)/crypto
51ROOT_LW8_CRYPTO_DIR_64	= $(ROOT_LW8_MOD_DIR)/crypto/$(SUBDIR64)
52ROOT_LW8_CRYPTO_DIR	= $(ROOT_LW8_CRYPTO_DIR_$(CLASS))
53
54ROOT_PLAT_MISC_DIRS_32		+= $(ROOT_LW8_MISC_DIR_32)
55
56USR_LW8_DIR		= $(USR_PLAT_DIR)/SUNW,Netra-T12
57USR_LW8_INC_DIR		= $(USR_LW8_DIR)/include
58USR_LW8_ISYS_DIR	= $(USR_LW8_INC_DIR)/sys
59USR_LW8_SBIN_DIR	= $(USR_LW8_DIR)/sbin
60USR_LW8_LIB_DIR		= $(USR_LW8_DIR)/lib
61
62LW8_LINT_LIB_DIR	= $(UTSBASE)/$(PLATFORM)/lw8/lint-libs/$(OBJS_DIR)
63
64#
65#	Define modules.
66#
67LW8_KMODS	= lw8 sgenv sgfru platmod ntwdt
68#
69#       Include the makefiles which define build rule templates, the
70#       collection of files per module, and a few specific flags. Note
71#       that order is significant, just as with an include path. The
72#       first build rule template which matches the files name will be
73#       used. By including these in order from most machine dependent
74#       to most machine independent, we allow a machine dependent file
75#       to be used in preference over a machine independent version
76#       (Such as a machine specific optimization, which preserves the
77#       interfaces.)
78#
79
80#
81#	Links to UltraSparc III crypto modules
82#
83LW8_CRYPTO_LINKS	= aes
84
85include $(UTSBASE)/sun4u/lw8/Makefile.files
86#
87#	Include common rules.
88#
89
90include $(UTSBASE)/sun4u/Makefile.sun4u
91#
92#       Everybody needs to know how to build modstubs.o and to locate unix.o
93#
94UNIX_DIR	= $(UTSBASE)/$(PLATFORM)/serengeti/unix
95MODSTUBS_DIR	= $(UNIX_DIR)
96DSF_DIR		= $(UTSBASE)/$(PLATFORM)/serengeti/genassym
97LINTS_DIR	= $(OBJS_DIR)
98LINT_LIB_DIR	= $(UTSBASE)/$(PLATFORM)/lw8/lint-libs/$(OBJS_DIR)
99
100#
101#       Define the actual specific platforms
102#
103MACHINE_DEFS	= -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP
104
105#
106#	Define platform specific values
107#
108MACHINE_DEFS	+= -DNCPU=554
109MACHINE_DEFS	+= -DMAX_UPA=1024
110MACHINE_DEFS	+= -DIGN_SIZE=10
111MACHINE_DEFS	+= -DMAX_MEM_NODES=8
112MACHINE_DEFS	+= -DLOCKED_DTLB_ENTRIES=6
113# Max IOSRAM TOC major version number supported
114MACHINE_DEFS	+= -DMAX_IOSRAM_TOC_VER=0x1
115MACHINE_DEFS	+= -DC_OBP
116
117#       Define for inline pre-processing since
118#       cpp not smart about v9 yet.
119#
120CPP_DEFS_32   =
121CPP_DEFS_64   = -D__sparcv9
122CPP_DEFS      = $(CPP_DEFS_$(CLASS))
123
124#
125# For now, disable these lint checks; maintainers should endeavor
126# to investigate and remove these for maximum lint coverage.
127# Please do not carry these forward to new Makefiles.
128#
129LINTTAGS	+= -erroff=E_SUSPICIOUS_COMPARISON
130LINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
131LINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
132LINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
133LINTTAGS	+= -erroff=E_STATIC_UNUSED
134