1*d4bc0535SKrishna Elango# 2*d4bc0535SKrishna Elango# CDDL HEADER START 3*d4bc0535SKrishna Elango# 4*d4bc0535SKrishna Elango# The contents of this file are subject to the terms of the 5*d4bc0535SKrishna Elango# Common Development and Distribution License (the "License"). 6*d4bc0535SKrishna Elango# You may not use this file except in compliance with the License. 7*d4bc0535SKrishna Elango# 8*d4bc0535SKrishna Elango# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*d4bc0535SKrishna Elango# or http://www.opensolaris.org/os/licensing. 10*d4bc0535SKrishna Elango# See the License for the specific language governing permissions 11*d4bc0535SKrishna Elango# and limitations under the License. 12*d4bc0535SKrishna Elango# 13*d4bc0535SKrishna Elango# When distributing Covered Code, include this CDDL HEADER in each 14*d4bc0535SKrishna Elango# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*d4bc0535SKrishna Elango# If applicable, add the following below this CDDL HEADER, with the 16*d4bc0535SKrishna Elango# fields enclosed by brackets "[]" replaced with your own identifying 17*d4bc0535SKrishna Elango# information: Portions Copyright [yyyy] [name of copyright owner] 18*d4bc0535SKrishna Elango# 19*d4bc0535SKrishna Elango# CDDL HEADER END 20*d4bc0535SKrishna Elango# 21*d4bc0535SKrishna Elango# 22*d4bc0535SKrishna Elango# uts/intel/pcieb/Makefile 23*d4bc0535SKrishna Elango# 24*d4bc0535SKrishna Elango# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 25*d4bc0535SKrishna Elango# Use is subject to license terms. 26*d4bc0535SKrishna Elango# 27*d4bc0535SKrishna Elango# This makefile drives the production of the pcieb driver kernel 28*d4bc0535SKrishna Elango# module. 29*d4bc0535SKrishna Elango# 30*d4bc0535SKrishna Elango 31*d4bc0535SKrishna Elango# 32*d4bc0535SKrishna Elango# Path to the base of the uts directory tree (usually /usr/src/uts). 33*d4bc0535SKrishna Elango# 34*d4bc0535SKrishna ElangoUTSBASE = ../.. 35*d4bc0535SKrishna Elango 36*d4bc0535SKrishna Elango# 37*d4bc0535SKrishna Elango# Define the module and object file sets. 38*d4bc0535SKrishna Elango# 39*d4bc0535SKrishna ElangoMODULE = pcieb 40*d4bc0535SKrishna ElangoOBJECTS = $(PCIEB_OBJS:%=$(OBJS_DIR)/%) 41*d4bc0535SKrishna ElangoLINTS = $(PCIEB_OBJS:%.o=$(LINTS_DIR)/%.ln) 42*d4bc0535SKrishna ElangoROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 43*d4bc0535SKrishna ElangoCONF_SRCDIR = $(UTSBASE)/common/io/pciex 44*d4bc0535SKrishna Elango 45*d4bc0535SKrishna Elango# 46*d4bc0535SKrishna Elango# Include common rules. 47*d4bc0535SKrishna Elango# 48*d4bc0535SKrishna Elangoinclude $(UTSBASE)/intel/Makefile.intel 49*d4bc0535SKrishna Elango 50*d4bc0535SKrishna Elango# 51*d4bc0535SKrishna Elango# Define targets 52*d4bc0535SKrishna Elango# 53*d4bc0535SKrishna ElangoALL_TARGET = $(BINARY) $(SRC_CONFILE) 54*d4bc0535SKrishna ElangoLINT_TARGET = $(MODULE).lint 55*d4bc0535SKrishna ElangoINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) 56*d4bc0535SKrishna Elango 57*d4bc0535SKrishna Elango# 58*d4bc0535SKrishna Elango# depends on misc/pcihp and misc/pcie 59*d4bc0535SKrishna Elango# 60*d4bc0535SKrishna Elango# For PCI Hotplug support, the misc/pcihp module provides devctl control 61*d4bc0535SKrishna Elango# device and cb_ops functions to support hotplug operations. 62*d4bc0535SKrishna Elango# 63*d4bc0535SKrishna Elango# pcie supplies PCI Express fabric error support 64*d4bc0535SKrishna Elango# 65*d4bc0535SKrishna ElangoLDFLAGS += -dy -Nmisc/pcihp -Nmisc/pcie 66*d4bc0535SKrishna Elango 67*d4bc0535SKrishna Elango# 68*d4bc0535SKrishna Elango# Override defaults to build a unique, local modstubs.o. 69*d4bc0535SKrishna Elango# 70*d4bc0535SKrishna ElangoMODSTUBS_DIR = $(OBJS_DIR) 71*d4bc0535SKrishna ElangoCLEANFILES += $(MODSTUBS_O) 72*d4bc0535SKrishna Elango 73*d4bc0535SKrishna Elango# 74*d4bc0535SKrishna Elango# For now, disable these lint checks; maintainers should endeavor 75*d4bc0535SKrishna Elango# to investigate and remove these for maximum lint coverage. 76*d4bc0535SKrishna Elango# Please do not carry these forward to new Makefiles. 77*d4bc0535SKrishna Elango# 78*d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON 79*d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 80*d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW 81*d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV 82*d4bc0535SKrishna Elango 83*d4bc0535SKrishna Elango# 84*d4bc0535SKrishna Elango# Default build targets. 85*d4bc0535SKrishna Elango# 86*d4bc0535SKrishna Elango.KEEP_STATE: 87*d4bc0535SKrishna Elango 88*d4bc0535SKrishna Elangodef: $(DEF_DEPS) 89*d4bc0535SKrishna Elango 90*d4bc0535SKrishna Elangoall: $(ALL_DEPS) 91*d4bc0535SKrishna Elango 92*d4bc0535SKrishna Elangoclean: $(CLEAN_DEPS) 93*d4bc0535SKrishna Elango 94*d4bc0535SKrishna Elangoclobber: $(CLOBBER_DEPS) 95*d4bc0535SKrishna Elango 96*d4bc0535SKrishna Elangolint: $(LINT_DEPS) 97*d4bc0535SKrishna Elango 98*d4bc0535SKrishna Elangomodlintlib: $(MODLINTLIB_DEPS) 99*d4bc0535SKrishna Elango 100*d4bc0535SKrishna Elangoclean.lint: $(CLEAN_LINT_DEPS) 101*d4bc0535SKrishna Elango 102*d4bc0535SKrishna Elangoinstall: $(INSTALL_DEPS) 103*d4bc0535SKrishna Elango 104*d4bc0535SKrishna Elango# 105*d4bc0535SKrishna Elango# Include common targets. 106*d4bc0535SKrishna Elango# 107*d4bc0535SKrishna Elangoinclude $(UTSBASE)/intel/Makefile.targ 108*d4bc0535SKrishna Elango 109