1*56f9a274Sfei feng - Sun Microsystems - Beijing China /*
2*56f9a274Sfei feng - Sun Microsystems - Beijing China  * CDDL HEADER START
3*56f9a274Sfei feng - Sun Microsystems - Beijing China  *
4*56f9a274Sfei feng - Sun Microsystems - Beijing China  * The contents of this file are subject to the terms of the
5*56f9a274Sfei feng - Sun Microsystems - Beijing China  * Common Development and Distribution License (the "License").
6*56f9a274Sfei feng - Sun Microsystems - Beijing China  * You may not use this file except in compliance with the License.
7*56f9a274Sfei feng - Sun Microsystems - Beijing China  *
8*56f9a274Sfei feng - Sun Microsystems - Beijing China  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*56f9a274Sfei feng - Sun Microsystems - Beijing China  * or http://www.opensolaris.org/os/licensing.
10*56f9a274Sfei feng - Sun Microsystems - Beijing China  * See the License for the specific language governing permissions
11*56f9a274Sfei feng - Sun Microsystems - Beijing China  * and limitations under the License.
12*56f9a274Sfei feng - Sun Microsystems - Beijing China  *
13*56f9a274Sfei feng - Sun Microsystems - Beijing China  * When distributing Covered Code, include this CDDL HEADER in each
14*56f9a274Sfei feng - Sun Microsystems - Beijing China  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*56f9a274Sfei feng - Sun Microsystems - Beijing China  * If applicable, add the following below this CDDL HEADER, with the
16*56f9a274Sfei feng - Sun Microsystems - Beijing China  * fields enclosed by brackets "[]" replaced with your own identifying
17*56f9a274Sfei feng - Sun Microsystems - Beijing China  * information: Portions Copyright [yyyy] [name of copyright owner]
18*56f9a274Sfei feng - Sun Microsystems - Beijing China  *
19*56f9a274Sfei feng - Sun Microsystems - Beijing China  * CDDL HEADER END
20*56f9a274Sfei feng - Sun Microsystems - Beijing China  */
21*56f9a274Sfei feng - Sun Microsystems - Beijing China 
22*56f9a274Sfei feng - Sun Microsystems - Beijing China /*
23*56f9a274Sfei feng - Sun Microsystems - Beijing China  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
24*56f9a274Sfei feng - Sun Microsystems - Beijing China  * Use is subject to license terms.
25*56f9a274Sfei feng - Sun Microsystems - Beijing China  */
26*56f9a274Sfei feng - Sun Microsystems - Beijing China 
27*56f9a274Sfei feng - Sun Microsystems - Beijing China /*
28*56f9a274Sfei feng - Sun Microsystems - Beijing China  * misc module wrapper for a firmware module for uath driver
29*56f9a274Sfei feng - Sun Microsystems - Beijing China  * User must use elfwrap(1) to convert raw firmware data file to
30*56f9a274Sfei feng - Sun Microsystems - Beijing China  * ELF object file. Then use ld(1) to link the ELF object file and
31*56f9a274Sfei feng - Sun Microsystems - Beijing China  * this module to produce a kernel loadable module.
32*56f9a274Sfei feng - Sun Microsystems - Beijing China  */
33*56f9a274Sfei feng - Sun Microsystems - Beijing China 
34*56f9a274Sfei feng - Sun Microsystems - Beijing China #include <sys/types.h>
35*56f9a274Sfei feng - Sun Microsystems - Beijing China #include <sys/param.h>
36*56f9a274Sfei feng - Sun Microsystems - Beijing China #include <sys/errno.h>
37*56f9a274Sfei feng - Sun Microsystems - Beijing China #include <sys/modctl.h>
38*56f9a274Sfei feng - Sun Microsystems - Beijing China 
39*56f9a274Sfei feng - Sun Microsystems - Beijing China 
40*56f9a274Sfei feng - Sun Microsystems - Beijing China extern struct mod_ops mod_miscops;
41*56f9a274Sfei feng - Sun Microsystems - Beijing China static struct modlmisc modlmisc = {
42*56f9a274Sfei feng - Sun Microsystems - Beijing China 	&mod_miscops,
43*56f9a274Sfei feng - Sun Microsystems - Beijing China 	"uath firmware wrapper module 1.1"
44*56f9a274Sfei feng - Sun Microsystems - Beijing China };
45*56f9a274Sfei feng - Sun Microsystems - Beijing China static struct modlinkage modlinkage = {
46*56f9a274Sfei feng - Sun Microsystems - Beijing China 	MODREV_1,
47*56f9a274Sfei feng - Sun Microsystems - Beijing China 	&modlmisc,
48*56f9a274Sfei feng - Sun Microsystems - Beijing China 	0
49*56f9a274Sfei feng - Sun Microsystems - Beijing China };
50*56f9a274Sfei feng - Sun Microsystems - Beijing China 
51*56f9a274Sfei feng - Sun Microsystems - Beijing China int
_init(void)52*56f9a274Sfei feng - Sun Microsystems - Beijing China _init(void)
53*56f9a274Sfei feng - Sun Microsystems - Beijing China {
54*56f9a274Sfei feng - Sun Microsystems - Beijing China 	return (mod_install(&modlinkage));
55*56f9a274Sfei feng - Sun Microsystems - Beijing China }
56*56f9a274Sfei feng - Sun Microsystems - Beijing China 
57*56f9a274Sfei feng - Sun Microsystems - Beijing China int
_fini(void)58*56f9a274Sfei feng - Sun Microsystems - Beijing China _fini(void)
59*56f9a274Sfei feng - Sun Microsystems - Beijing China {
60*56f9a274Sfei feng - Sun Microsystems - Beijing China 	return (mod_remove(&modlinkage));
61*56f9a274Sfei feng - Sun Microsystems - Beijing China }
62*56f9a274Sfei feng - Sun Microsystems - Beijing China 
63*56f9a274Sfei feng - Sun Microsystems - Beijing China int
_info(struct modinfo * modinfop)64*56f9a274Sfei feng - Sun Microsystems - Beijing China _info(struct modinfo *modinfop)
65*56f9a274Sfei feng - Sun Microsystems - Beijing China {
66*56f9a274Sfei feng - Sun Microsystems - Beijing China 	return (mod_info(&modlinkage, modinfop));
67*56f9a274Sfei feng - Sun Microsystems - Beijing China }
68