1*2063d9c0SJosef 'Jeff' Sipek# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5*2063d9c0SJosef 'Jeff' Sipek# Common Development and Distribution License (the "License"). 6*2063d9c0SJosef 'Jeff' Sipek# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 21*2063d9c0SJosef 'Jeff' Sipek# 22*2063d9c0SJosef 'Jeff' Sipek# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 25*2063d9c0SJosef 'Jeff' Sipek# Global definitions for sun4u starcat implementation specific modules. 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate 28*2063d9c0SJosef 'Jeff' Sipek# 29*2063d9c0SJosef 'Jeff' Sipek# Define directories. 30*2063d9c0SJosef 'Jeff' Sipek# 31*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-15000 32*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_MOD_DIR = $(ROOT_STARCAT_DIR)/kernel 33*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_KERN_DIR_32 = $(ROOT_STARCAT_MOD_DIR) 34*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_KERN_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/$(SUBDIR64) 35*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_MISC_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/misc 36*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_MISC_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/misc/$(SUBDIR64) 37*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_DRV_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/drv 38*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_DRV_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/drv/$(SUBDIR64) 39*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CPU_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/cpu 40*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CPU_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/cpu/$(SUBDIR64) 41*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CRYPTO_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/crypto 42*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CRYPTO_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/crypto/$(SUBDIR64) 437c478bd9Sstevel@tonic-gate 44*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_KERN_DIR = $(ROOT_STARCAT_KERN_DIR_$(CLASS)) 45*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_MISC_DIR = $(ROOT_STARCAT_MISC_DIR_$(CLASS)) 46*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_DRV_DIR = $(ROOT_STARCAT_DRV_DIR_$(CLASS)) 47*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CPU_DIR = $(ROOT_STARCAT_CPU_DIR_$(CLASS)) 48*2063d9c0SJosef 'Jeff' SipekROOT_STARCAT_CRYPTO_DIR = $(ROOT_STARCAT_CRYPTO_DIR_$(CLASS)) 49*2063d9c0SJosef 'Jeff' Sipek 50*2063d9c0SJosef 'Jeff' SipekROOT_PLAT_MOD_DIRS += $(ROOT_STARCAT_MOD_DIR) 51*2063d9c0SJosef 'Jeff' SipekROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARCAT_MISC_DIR_32) 52*2063d9c0SJosef 'Jeff' Sipek 53*2063d9c0SJosef 'Jeff' SipekUSR_STARCAT_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-15000 54*2063d9c0SJosef 'Jeff' SipekUSR_STARCAT_LIB_DIR = $(USR_STARCAT_DIR)/lib 55*2063d9c0SJosef 'Jeff' SipekUSR_STARCAT_SBIN_DIR = $(USR_STARCAT_DIR)/sbin 56*2063d9c0SJosef 'Jeff' SipekUSR_STARCAT_INC_DIR = $(USR_STARCAT_DIR)/include 57*2063d9c0SJosef 'Jeff' SipekUSR_STARCAT_ISYS_DIR = $(USR_STARCAT_INC_DIR)/sys 58*2063d9c0SJosef 'Jeff' Sipek 59*2063d9c0SJosef 'Jeff' SipekSTARCAT_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) 60*2063d9c0SJosef 'Jeff' Sipek 61*2063d9c0SJosef 'Jeff' Sipek# 62*2063d9c0SJosef 'Jeff' Sipek# Include the makefiles which define build rule templates, the 63*2063d9c0SJosef 'Jeff' Sipek# collection of files per module, and a few specific flags. Note 64*2063d9c0SJosef 'Jeff' Sipek# that order is significant, just as with an include path. The 65*2063d9c0SJosef 'Jeff' Sipek# first build rule template which matches the files name will be 66*2063d9c0SJosef 'Jeff' Sipek# used. By including these in order from most machine dependent 67*2063d9c0SJosef 'Jeff' Sipek# to most machine independent, we allow a machine dependent file 68*2063d9c0SJosef 'Jeff' Sipek# to be used in preference over a machine independent version 69*2063d9c0SJosef 'Jeff' Sipek# (Such as a machine specific optimization, which preserves the 70*2063d9c0SJosef 'Jeff' Sipek# interfaces.) 71*2063d9c0SJosef 'Jeff' Sipek# 72*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sun4u/ngdr/Makefile.files 73*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sun4u/starcat/Makefile.files 74*2063d9c0SJosef 'Jeff' Sipek 75*2063d9c0SJosef 'Jeff' Sipek# 76*2063d9c0SJosef 'Jeff' Sipek# Include common rules. 77*2063d9c0SJosef 'Jeff' Sipek# 78*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sun4u/Makefile.sun4u 79*2063d9c0SJosef 'Jeff' Sipek 80*2063d9c0SJosef 'Jeff' Sipek# 81*2063d9c0SJosef 'Jeff' Sipek# Define modules 82*2063d9c0SJosef 'Jeff' Sipek# 83*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += axq 84*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += cvc 85*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += cvcredir 86*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += dman 87*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += dr 88*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += drmach 89*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += fcgp2 90*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += gptwo_pci 91*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += iosram 92*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += mboxsc 93*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += platmod 94*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += sc_gptwocfg 95*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += schpc 96*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += sckmdrv 97*2063d9c0SJosef 'Jeff' SipekSTARCAT_KMODS += scosmb 98*2063d9c0SJosef 'Jeff' Sipek 99*2063d9c0SJosef 'Jeff' Sipek# 100*2063d9c0SJosef 'Jeff' Sipek# Define CPU modules. 101*2063d9c0SJosef 'Jeff' Sipek# 102*2063d9c0SJosef 'Jeff' SipekSTARCAT_CPU_KMODS += cheetah cheetahplus 103*2063d9c0SJosef 'Jeff' Sipek 104*2063d9c0SJosef 'Jeff' Sipek# 105*2063d9c0SJosef 'Jeff' Sipek# Links to UltraSparc III crypto modules 106*2063d9c0SJosef 'Jeff' Sipek# 107*2063d9c0SJosef 'Jeff' SipekSTARCAT_CRYPTO_LINKS = aes 108*2063d9c0SJosef 'Jeff' Sipek 109*2063d9c0SJosef 'Jeff' Sipek# 110*2063d9c0SJosef 'Jeff' Sipek# Everybody needs to know how to build modstubs.o and to locate unix.o 111*2063d9c0SJosef 'Jeff' Sipek# 112*2063d9c0SJosef 'Jeff' SipekUNIX_DIR = $(UTSBASE)/$(PLATFORM)/starcat/unix 113*2063d9c0SJosef 'Jeff' SipekMODSTUBS_DIR = $(UNIX_DIR) 114*2063d9c0SJosef 'Jeff' SipekDSF_DIR = $(UTSBASE)/$(PLATFORM)/starcat/genassym 115*2063d9c0SJosef 'Jeff' SipekLINTS_DIR = $(OBJS_DIR) 116*2063d9c0SJosef 'Jeff' SipekLINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) 117*2063d9c0SJosef 'Jeff' Sipek 118*2063d9c0SJosef 'Jeff' SipekUNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o 119*2063d9c0SJosef 'Jeff' Sipek 120*2063d9c0SJosef 'Jeff' SipekLINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln 121*2063d9c0SJosef 'Jeff' Sipek 122*2063d9c0SJosef 'Jeff' Sipek# 123*2063d9c0SJosef 'Jeff' Sipek# Define the actual specific platforms 124*2063d9c0SJosef 'Jeff' Sipek# 125*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED 126*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -D_CPU_SIGNATURE 127*2063d9c0SJosef 'Jeff' Sipek 128*2063d9c0SJosef 'Jeff' Sipek# 129*2063d9c0SJosef 'Jeff' Sipek# Define platform specific value 130*2063d9c0SJosef 'Jeff' Sipek# 131*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -DNCPU=558 132*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -DMAX_CPU_CHIPID=554 133*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -DMAX_UPA=1024 134*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -DIGN_SIZE=10 135*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS += -DMAX_MEM_NODES=18 136*2063d9c0SJosef 'Jeff' Sipek 137*2063d9c0SJosef 'Jeff' Sipek# 138*2063d9c0SJosef 'Jeff' Sipek# Define for inline pre-processing since 139*2063d9c0SJosef 'Jeff' Sipek# cpp not smart about v9 yet. 140*2063d9c0SJosef 'Jeff' Sipek# It's not smart about __sparc either since it only predefines sparc. 141*2063d9c0SJosef 'Jeff' SipekCPP_DEFS_32 = -D__sparc 142*2063d9c0SJosef 'Jeff' SipekCPP_DEFS_64 = -D__sparc -D__sparcv9 143*2063d9c0SJosef 'Jeff' SipekCPP_DEFS = $(CPP_DEFS_$(CLASS)) 144*2063d9c0SJosef 'Jeff' Sipek 145*2063d9c0SJosef 'Jeff' Sipek# 146*2063d9c0SJosef 'Jeff' Sipek# For now, disable these lint checks; maintainers should endeavor 147*2063d9c0SJosef 'Jeff' Sipek# to investigate and remove these for maximum lint coverage. 148*2063d9c0SJosef 'Jeff' Sipek# Please do not carry these forward to new Makefiles. 149*2063d9c0SJosef 'Jeff' Sipek# 150*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON 151*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 152*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED 153*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_STATIC_UNUSED 154*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW 155*2063d9c0SJosef 'Jeff' SipekLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV 156