1d39a76e7Sxw# CDDL HEADER START 2d39a76e7Sxw# 3d39a76e7Sxw# The contents of this file are subject to the terms of the 4d39a76e7Sxw# Common Development and Distribution License (the "License"). 5d39a76e7Sxw# You may not use this file except in compliance with the License. 6d39a76e7Sxw# 7d39a76e7Sxw# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8d39a76e7Sxw# or http://www.opensolaris.org/os/licensing. 9d39a76e7Sxw# See the License for the specific language governing permissions 10d39a76e7Sxw# and limitations under the License. 11d39a76e7Sxw# 12d39a76e7Sxw# When distributing Covered Code, include this CDDL HEADER in each 13d39a76e7Sxw# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14d39a76e7Sxw# If applicable, add the following below this CDDL HEADER, with the 15d39a76e7Sxw# fields enclosed by brackets "[]" replaced with your own identifying 16d39a76e7Sxw# information: Portions Copyright [yyyy] [name of copyright owner] 17d39a76e7Sxw# 18d39a76e7Sxw# CDDL HEADER END 19d39a76e7Sxw# 20d39a76e7Sxw 21d39a76e7Sxw# 22d39a76e7Sxw# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 23d39a76e7Sxw# Use is subject to license terms. 24ec71f88eSPatrick Mooney# Copyright 2018 Joyent, Inc. 25d39a76e7Sxw# 26b6b206fcSJohn Levon# Copyright (c) 2018, Joyent, Inc. 277014882cSRichard Lowe 28d39a76e7Sxw# 29d39a76e7Sxw# This makefile drives the production of the Chelsio N110 30d39a76e7Sxw# 10G Ethernet (CH) driver module in x86 systems 31d39a76e7Sxw# 32d39a76e7Sxw 33d39a76e7Sxw# 34d39a76e7Sxw# Paths to the base of the uts directory trees 35d39a76e7Sxw# 36d39a76e7SxwUTSBASE = ../.. 37d39a76e7Sxw 38d39a76e7Sxw# 39d39a76e7Sxw# Define the module and object file sets. 40d39a76e7Sxw# 41d39a76e7SxwMODULE = chxge 42d39a76e7SxwOBJECTS = $(CH_OBJS:%=$(OBJS_DIR)/%) $(CH_COM_OBJS:%=$(OBJS_DIR)/%) 43d39a76e7SxwROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 44d39a76e7Sxw 45d39a76e7Sxw# 46d39a76e7Sxw# Include common rules. 47d39a76e7Sxw# 48d39a76e7Sxwinclude $(UTSBASE)/intel/Makefile.intel 49d39a76e7Sxw 50d39a76e7Sxw# 51d39a76e7Sxw# Define targets 52d39a76e7Sxw# 53d39a76e7SxwALL_TARGET = $(BINARY) 54d39a76e7SxwINSTALL_TARGET = $(BINARY) $(ROOTMODULE) 55d39a76e7Sxw 56d39a76e7SxwCFLAGS += -DC99_NOT_SUPPORTED -DCONFIG_CHELSIO_T1_1G \ 57d39a76e7Sxw -I$(UTSBASE)/common/io/chxge/ \ 58d39a76e7Sxw -I$(UTSBASE)/common/io/chxge/com 59d39a76e7Sxw 60d39a76e7SxwCFLAGS += -DCONFIG_SMP 61d39a76e7Sxw 62d39a76e7SxwCFLAGS += -DRX_MAX_COUNT=256 63d39a76e7Sxw 64d39a76e7SxwCFLAGS += -DCONFIG_CHELSIO_T1_OFFLOAD 65d39a76e7Sxw 66d39a76e7SxwCFLAGS += -DSUN_KSTATS -DHOST_PAUSE -DTX_CKSUM_FIX -DTX_THREAD_RECLAIM 67d39a76e7Sxw 68d39a76e7Sxw# Debug flags 69d39a76e7Sxw# CFLAGS += -DCH_DEBUG=1 -DPE_DBGOUT_ENABLED=1 70d39a76e7Sxw 71d39a76e7Sxw# 72ec71f88eSPatrick Mooney# Driver depends on GLD, IP, and MAC 73d39a76e7Sxw# 7482d0151aSRichard LoweLDFLAGS += -N misc/gld -N drv/ip -N misc/mac 75d39a76e7Sxw 76d39a76e7Sxw 77d39a76e7Sxw# 780aaef2f5SRichard Lowe# For now, disable these warnings; maintainers should endeavor 790aaef2f5SRichard Lowe# to investigate and remove these for maximum coverage. 80d39a76e7Sxw# Please do not carry these forward to new Makefiles. 81d39a76e7Sxw# 827014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-label 837014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-function 847014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-variable 857014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses 86*fd5e5f43SAndy FiddamanCCWARNINLINE = 877014882cSRichard Lowe 88b6b206fcSJohn LevonSMOFF += indenting,all_func_returns,no_if_block 89b6b206fcSJohn Levon 90b6b206fcSJohn Levon# needs work 91b6b206fcSJohn Levon$(OBJS_DIR)/sge.o := SMOFF += index_overflow 92b6b206fcSJohn Levon 93d39a76e7Sxw# 94d39a76e7Sxw# 95d39a76e7Sxw# Default build targets. 96d39a76e7Sxw# 97d39a76e7Sxw.KEEP_STATE: 98d39a76e7Sxw 99d39a76e7Sxwdef: $(DEF_DEPS) 100d39a76e7Sxw 101d39a76e7Sxwall: $(ALL_DEPS) 102d39a76e7Sxw 103d39a76e7Sxwclean: $(CLEAN_DEPS) 104d39a76e7Sxw 105d39a76e7Sxwclobber: $(CLOBBER_DEPS) 106d39a76e7Sxw 107d39a76e7Sxwinstall: $(INSTALL_DEPS) 108d39a76e7Sxw 109d39a76e7Sxw# 110d39a76e7Sxw# Include common targets. 111d39a76e7Sxw# 112d39a76e7Sxwinclude $(UTSBASE)/intel/Makefile.targ 113