summaryrefslogtreecommitdiff
path: root/usr/src/uts/sparc/ib
diff options
context:
space:
mode:
authorstevel@tonic-gate <none@none>2005-06-14 00:00:00 -0700
committerstevel@tonic-gate <none@none>2005-06-14 00:00:00 -0700
commit7c478bd95313f5f23a4c958a745db2134aa03244 (patch)
treec871e58545497667cbb4b0a4f2daf204743e1fe7 /usr/src/uts/sparc/ib
downloadillumos-joyent-7c478bd95313f5f23a4c958a745db2134aa03244.tar.gz
OpenSolaris Launch
Diffstat (limited to 'usr/src/uts/sparc/ib')
-rw-r--r--usr/src/uts/sparc/ib/Makefile135
-rw-r--r--usr/src/uts/sparc/ib/ib.wlcmd62
2 files changed, 197 insertions, 0 deletions
diff --git a/usr/src/uts/sparc/ib/Makefile b/usr/src/uts/sparc/ib/Makefile
new file mode 100644
index 0000000000..aeeb44ac35
--- /dev/null
+++ b/usr/src/uts/sparc/ib/Makefile
@@ -0,0 +1,135 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License, Version 1.0 only
+# (the "License"). You may not use this file except in compliance
+# with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+#pragma ident "%Z%%M% %I% %E% SMI"
+#
+#
+#
+# This makefile drives the production of the ibnex driver
+#
+# sparc architecture dependent
+#
+
+#
+# Path to the base of the uts directory tree (usually /usr/src/uts).
+#
+UTSBASE = ../..
+
+#
+# Define the module and object file sets.
+#
+MODULE = ib
+OBJECTS = $(IB_OBJS:%=$(OBJS_DIR)/%)
+LINTS = $(IB_OBJS:%.o=$(LINTS_DIR)/%.ln)
+ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
+CONF_SRCDIR = $(UTSBASE)/common/io/ib/ibnex
+WARLOCK_OBJS = $(IB_OBJS:%.o=%.ll)
+WARLOCK_OK = $(MODULE).ok
+
+#
+# Include common rules.
+#
+include $(UTSBASE)/sparc/Makefile.sparc
+
+#
+# Define targets
+#
+ALL_TARGET = $(BINARY) $(SRC_CONFILE)
+LINT_TARGET = $(MODULE).lint
+INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
+
+#
+# Overrides.
+#
+ALL_BUILDS = $(ALL_BUILDSONLY64)
+DEF_BUILDS = $(DEF_BUILDSONLY64)
+
+#
+# lint pass one enforcement
+#
+CFLAGS += $(CCVERBOSE)
+
+#
+# depends on misc/ibtl
+#
+LDFLAGS += -dy -Nmisc/ibdm -Nmisc/ibtl
+
+#
+# Default build targets.
+#
+.KEEP_STATE:
+
+def: $(DEF_DEPS)
+
+all: $(ALL_DEPS)
+
+clean: $(CLEAN_DEPS); \
+ $(RM) $(WARLOCK_OBJS) $(WARLOCK_OK)
+
+clobber: $(CLOBBER_DEPS); \
+ $(RM) $(WARLOCK_OBJS) $(WARLOCK_OK)
+
+lint: $(LINT_DEPS)
+
+modlintlib: $(MODLINTLIB_DEPS) lint32
+
+clean.lint: $(CLEAN_LINT_DEPS)
+
+install: $(INSTALL_DEPS)
+
+#
+# Include common targets.
+#
+include $(UTSBASE)/sparc/Makefile.targ
+
+#
+# Defines for local commands.
+#
+WARLOCK = warlock
+WLCC = wlcc
+TOUCH = touch
+SCCS = sccs
+TEST = test
+
+warlock: $(MODULE).ok
+
+%.wlcmd:
+ $(TEST) -f $@ || $(SCCS) get $@
+
+ib.ok: $(WARLOCK_OBJS) ib.wlcmd ibdm_files warlock_ddi.files
+ $(WARLOCK) -c ./ib.wlcmd $(WARLOCK_OBJS) \
+ -l ../ibdm/ibdm.ll -l ../warlock/ddi_dki_impl.ll
+ $(TOUCH) $@
+
+%.ll: $(UTSBASE)/common/io/ib/ibnex/%.c \
+ $(UTSBASE)/common/sys/ib/ibnex/ibnex.h \
+ $(UTSBASE)/common/sys/ib/ibnex/ibnex_devctl.h
+ $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
+
+ibdm_files :
+ @cd ../ibdm; pwd; $(MAKE) warlock
+
+warlock_ddi.files:
+ @cd ../warlock; pwd; $(MAKE) warlock
diff --git a/usr/src/uts/sparc/ib/ib.wlcmd b/usr/src/uts/sparc/ib/ib.wlcmd
new file mode 100644
index 0000000000..917d505c1e
--- /dev/null
+++ b/usr/src/uts/sparc/ib/ib.wlcmd
@@ -0,0 +1,62 @@
+
+# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License, Version 1.0 only
+# (the "License"). You may not use this file except in compliance
+# with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#ident "%Z%%M% %I% %E% SMI"
+
+# ibnexus Callback handlers for IBDM
+add ibdm.ibdm_ibnex_callback targets ibnex_dm_callback
+
+# ibnnexus to ibtl callback functions
+ignore ibnex_ibtl_callback
+root ibnex_return_apid
+
+# ibnexus bus_ops entry points
+add bus_ops::bus_config targets warlock_dummy
+add bus_ops::bus_unconfig targets warlock_dummy
+
+# IBDM callback handlers from IBTL
+root ibdm_event_hdlr
+
+# ibdm Callback handlers for IBMF / SAA
+root ibdm_ibmf_recv_cb
+root ibdm_ibmf_send_cb
+root ibdm_recv_incoming_mad
+root ibdm_saa_event_cb
+root ibdm_saa_handle_new_gid
+
+# ibnex reprobe function, called from taskq
+root ibnex_handle_reprobe_dev
+
+# ibnex other functions
+root ibnex_name_child
+
+# ibdm function called from taskq
+root ibdm_saa_event_taskq
+
+# ibnex MPXIO and PM related functions
+root ib_vhci_failover
+root ib_vhci_pi_init
+root ib_vhci_pi_state_change
+root ib_vhci_pi_uninit
+root ibnex_bus_power