summaryrefslogtreecommitdiff
path: root/usr/src/cmd/devfsadm/misc_link.c
diff options
context:
space:
mode:
authorjl139090 <none@none>2006-04-08 10:25:15 -0700
committerjl139090 <none@none>2006-04-08 10:25:15 -0700
commit25cf1a301a396c38e8adf52c15f537b80d2483f7 (patch)
treea76776c2cfbbe43c1ae252223c7ccfa5df15c21c /usr/src/cmd/devfsadm/misc_link.c
parent918fadfadf0c235e6c65ca652caab042b6f05976 (diff)
downloadillumos-gate-25cf1a301a396c38e8adf52c15f537b80d2483f7.tar.gz
PSARC 2004/750 Solaris for OPL
6379529 Solaris for OPL Project --HG-- rename : usr/src/cmd/sckmd/sparc/sun4u/sckm.sh => deleted_files/usr/src/cmd/sckmd/sparc/sun4u/sckm.sh
Diffstat (limited to 'usr/src/cmd/devfsadm/misc_link.c')
-rw-r--r--usr/src/cmd/devfsadm/misc_link.c29
1 files changed, 24 insertions, 5 deletions
diff --git a/usr/src/cmd/devfsadm/misc_link.c b/usr/src/cmd/devfsadm/misc_link.c
index d446392618..a8f0ef5d71 100644
--- a/usr/src/cmd/devfsadm/misc_link.c
+++ b/usr/src/cmd/devfsadm/misc_link.c
@@ -2,9 +2,8 @@
* 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.
+ * Common Development and Distribution License (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.
@@ -20,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -58,6 +57,7 @@ static int zcons_create(di_minor_t minor, di_node_t node);
static int cpuid(di_minor_t minor, di_node_t node);
static int glvc(di_minor_t minor, di_node_t node);
static int ses_callback(di_minor_t minor, di_node_t node);
+static int kmdrv_create(di_minor_t minor, di_node_t node);
static devfsadm_create_t misc_cbt[] = {
{ "pseudo", "ddi_pseudo", "(^pts$)|(^sad$)",
@@ -146,7 +146,10 @@ static devfsadm_create_t misc_cbt[] = {
TYPE_EXACT | DRV_EXACT, ILEVEL_0, gpio
},
{ "pseudo", "ddi_pseudo", "sckmdrv",
- TYPE_EXACT | DRV_RE, ILEVEL_0, minor_name,
+ TYPE_EXACT | DRV_RE, ILEVEL_0, kmdrv_create,
+ },
+ { "pseudo", "ddi_pseudo", "oplkmdrv",
+ TYPE_EXACT | DRV_RE, ILEVEL_0, kmdrv_create,
},
{ "av", "^ddi_av:(isoch|async)$", NULL,
TYPE_RE, ILEVEL_0, av_create,
@@ -169,6 +172,9 @@ static devfsadm_create_t misc_cbt[] = {
{ "pseudo", "ddi_pseudo", "glvc",
TYPE_EXACT | DRV_EXACT, ILEVEL_0, glvc,
},
+ { "pseudo", "ddi_pseudo", "dm2s",
+ TYPE_EXACT | DRV_EXACT, ILEVEL_0, minor_name,
+ },
};
DEVFSADM_CREATE_INIT_V0(misc_cbt);
@@ -658,3 +664,16 @@ glvc(di_minor_t minor, di_node_t node)
}
return (DEVFSADM_CONTINUE);
}
+
+/*
+ * Handles links of the form:
+ * type=ddi_pseudo;name=sckmdrv kmdrv\M0
+ * type=ddi_pseudo;name=oplkmdrv kmdrv\M0
+ */
+static int
+kmdrv_create(di_minor_t minor, di_node_t node)
+{
+
+ (void) devfsadm_mklink("kmdrv", node, minor, 0);
+ return (DEVFSADM_CONTINUE);
+}