1#/* 2# * Copyright (c) 2017-2018 Cavium, Inc. 3# * All rights reserved. 4# * 5# * Redistribution and use in source and binary forms, with or without 6# * modification, are permitted provided that the following conditions 7# * are met: 8# * 9# * 1. Redistributions of source code must retain the above copyright 10# * notice, this list of conditions and the following disclaimer. 11# * 2. Redistributions in binary form must reproduce the above copyright 12# * notice, this list of conditions and the following disclaimer in the 13# * documentation and/or other materials provided with the distribution. 14# * 15# * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16# * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17# * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18# * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 19# * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 20# * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21# * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22# * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23# * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24# * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25# * POSSIBILITY OF SUCH DAMAGE. 26# */ 27#/* 28# * File : Makefile 29# * Author : David C Somayajulu, Cavium, Inc., San Jose, CA 95131. 30# */ 31# 32# $FreeBSD$ 33# 34 35.PATH: ${SRCTOP}/sys/dev/qlnx/qlnxe 36 37#.PATH: ${.CURDIR} 38 39KMOD=if_qlnxe 40 41SRCS=ecore_cxt.c ecore_dcbx.c ecore_dev.c ecore_hw.c 42SRCS+=ecore_init_fw_funcs.c ecore_int.c ecore_mcp.c 43SRCS+=ecore_sp_commands.c ecore_spq.c ecore_l2.c 44SRCS+=ecore_init_ops.c ecore_dbg_fw_funcs.c 45SRCS+=ecore_mng_tlv.c 46 47SRCS+=ecore_sriov.c 48SRCS+=ecore_vf.c 49 50#roce/iwarp files. Compilation can be turned off roce/iwarp are not required. 51# In other words if you don't need RDMA please comment out SRCS adds for 52# ecore_rdma.c ecore_roce.c ecore_iwarp.c ecore_ooo.c ecore_ll2.c qlnx_rdma.c 53SRCS+=ecore_rdma.c 54SRCS+=ecore_roce.c 55SRCS+=ecore_iwarp.c 56SRCS+=ecore_ooo.c 57SRCS+=ecore_ll2.c 58SRCS+=qlnx_rdma.c 59 60 61SRCS+=qlnx_ioctl.c 62SRCS+=qlnx_os.c 63 64SRCS+= device_if.h 65SRCS+= bus_if.h 66SRCS+= pci_if.h 67SRCS+= pci_iov_if.h 68 69 70.include <bsd.kmod.mk> 71 72#CFLAGS += -DQLNX_DEBUG 73CFLAGS += -DECORE_PACKAGE 74CFLAGS += -DCONFIG_ECORE_L2 75CFLAGS += -DECORE_CONFIG_DIRECT_HWFN 76 77CFLAGS+= -I${SRCTOP}/sys/compat/linuxkpi/common/include 78 79#CFLAGS += -g 80#CFLAGS += -fno-inline 81 82#CFLAGS += -DQLNX_SOFT_LRO 83#CFLAGS += -DQLNX_QSORT_LRO 84#CFLAGS += -DQLNX_MAX_COALESCE 85#CFLAGS += -DQLNX_USER_LLDP 86 87CFLAGS += -DCONFIG_ECORE_SRIOV 88 89# For roce/iwarp files. Compilation can be turned off if roce/iwarp are not required. 90# In other words if you don't need RDMA please comment out the CFLAGS which define 91# CONFIG_ECORE_LL2 CONFIG_ECORE_ROCE CONFIG_ECORE_IWARP QLNX_ENABLE_IWARP 92CFLAGS += -DCONFIG_ECORE_LL2 93CFLAGS += -DCONFIG_ECORE_ROCE 94CFLAGS += -DCONFIG_ECORE_IWARP 95CFLAGS += -DCONFIG_ECORE_RDMA 96CFLAGS += -DQLNX_ENABLE_IWARP 97 98CWARNFLAGS+= -Wno-cast-qual 99