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 2009 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26# Copyright (c) 2018, Joyent, Inc. 27# 28# This makefile drives the production of the ISA nexus driver 29# 30# i86xpv implementation architecture dependent 31# 32 33# 34# Path to the base of the uts directory tree (usually /usr/src/uts). 35# 36UTSBASE = ../.. 37 38# 39# Define the module and object file sets. 40# 41MODULE = isa 42OBJECTS = $(ISANEXUS_OBJS:%=$(OBJS_DIR)/%) 43LINTS = $(ISANEXUS_OBJS:%.o=$(LINTS_DIR)/%.ln) 44ROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE) 45INC_PATH += -I$(UTSBASE)/i86pc/sys/acpi 46 47# 48# Include common rules. 49# 50include $(UTSBASE)/i86xpv/Makefile.i86xpv 51 52# 53# Define targets 54# 55ALL_TARGET = $(BINARY) 56LINT_TARGET = $(MODULE).lint 57INSTALL_TARGET = $(BINARY) $(ROOTMODULE) 58 59$(OBJS_DIR)/isa.o := CERRWARN += -_gcc=-Wno-unused-function 60 61# needs work 62$(OBJS_DIR)/i8237A.o := SMOFF += indenting 63 64# 65# lint pass one enforcement 66# 67CFLAGS += $(CCVERBOSE) 68 69# 70# Dependency 71LDFLAGS += -dy -Nmisc/acpica -Nmisc/busra -Nmisc/pci_autoconfig 72 73# 74# Define our version of dma_engine and i8237A interfaces 75# 76$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_init=$(MODULE)_i_dmae_init 77$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_acquire=$(MODULE)_i_dmae_acquire 78$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_free=$(MODULE)_i_dmae_free 79$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_get_best_mode=$(MODULE)_i_dmae_get_best_mode 80$(OBJECTS) $(LINTS) := CPPFLAGS += -D_dmae_nxcookie=$(MODULE)__dmae_nxcookie 81$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_prog=$(MODULE)_i_dmae_prog 82$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_swsetup=$(MODULE)_i_dmae_swsetup 83$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_swsetup=$(MODULE)_i_dmae_swsetup 84$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_swstart=$(MODULE)_i_dmae_swstart 85$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_stop=$(MODULE)_i_dmae_stop 86$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_enable=$(MODULE)_i_dmae_enable 87$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_disable=$(MODULE)_i_dmae_disable 88$(OBJECTS) $(LINTS) := CPPFLAGS += -Di_dmae_get_chan_stat=$(MODULE)_i_dmae_get_chan_stat 89$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_init=$(MODULE)_d37A_init 90$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_valid=$(MODULE)_d37A_dma_valid 91$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_release=$(MODULE)_d37A_dma_release 92$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_disable=$(MODULE)_d37A_dma_disable 93$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_enable=$(MODULE)_d37A_dma_enable 94$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_get_best_mode=$(MODULE)_d37A_get_best_mode 95$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_intr=$(MODULE)_d37A_intr 96$(OBJECTS) $(LINTS) := CPPFLAGS += -DdEISA_setchain=$(MODULE)_dEISA_setchain 97$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_prog_chan=$(MODULE)_d37A_prog_chan 98$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_swsetup=$(MODULE)_d37A_dma_swsetup 99$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_swstart=$(MODULE)_d37A_dma_swstart 100$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_dma_stop=$(MODULE)_d37A_dma_stop 101$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_get_chan_stat=$(MODULE)_d37A_get_chan_stat 102$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_set_mode=$(MODULE)_d37A_set_mode 103$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_write_addr=$(MODULE)_d37A_write_addr 104$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_read_addr=$(MODULE)_d37A_read_addr 105$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_write_count=$(MODULE)_d37A_write_count 106$(OBJECTS) $(LINTS) := CPPFLAGS += -Dd37A_read_count=$(MODULE)_d37A_read_count 107 108LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 109CERRWARN += -_gcc=-Wno-unused-variable 110 111# 112# Default build targets. 113# 114.KEEP_STATE: 115 116def: $(DEF_DEPS) 117 118all: $(ALL_DEPS) 119 120clean: $(CLEAN_DEPS) 121 122clobber: $(CLOBBER_DEPS) 123 124lint: $(LINT_DEPS) 125 126modlintlib: $(MODLINTLIB_DEPS) 127 128clean.lint: $(CLEAN_LINT_DEPS) 129 130install: $(INSTALL_DEPS) 131 132# 133# Include common targets. 134# 135include $(UTSBASE)/i86xpv/Makefile.targ 136