te
Copyright (c) 2003, Sun Microsystems, Inc., All Rights Reserved
The contents of this file are subject to the terms of the 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. 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]
LDI_GET_DEV 9F "Jun 3, 2003"
NAME
ldi_get_dev, ldi_get_otyp, ldi_get_devid, ldi_get_minor_name - Extract information from a layered handle
SYNOPSIS

#include <sys/sunldi.h>

int ldi_get_dev(ldi_handle_t lh, dev_t *devp);

int ldi_get_otyp(ldi_handle_t lh, int *otyp);

int ldi_get_devid(ldi_handle_t lh, ddi_devid_t *devid);

int ldi_get_minor_name(ldi_handle_t lh, char **minor_name);
PARAMETERS
lh

Layered handle

otyp

Indicates on which interface the driver was opened. Valid settings are: OTYP_BLK

Open device block interface.

OTYP_CHR

Open device character interface.

devp

Pointer to a device number.

devid

Device ID.

minor_name

Minor device node name.

DESCRIPTION

The ldi_get_dev() function retrieves the dev_t associated with a layered handle.

The ldi_get_otyp() retrieves the open flag that was used to open the device associated with the layered handle.

The ldi_get_devid() function retrieves a devid for the device associated with the layered handle. The caller should use ddi_devid_free() to free the devid when done with it.

The ldi_get_minor_name() function retrieves the name of the minor node opened for the device associated with the layered handle. ldi_get_minor_name() allocates a buffer containing the minor node name and returns it via the minor_name parameter. The caller should use kmem_free() to release the buffer when done with it.

RETURN VALUES

The ldi_get_dev(), ldi_get_otyp(), ldi_get_devid(), and ldi_get_devid() functions return 0 upon success.

In case of an error, the following values may be returned: EINVAL

Invalid input parameters.

ENOTSUP

The operation is not supported for this device.

CONTEXT

These functions may be called from user or kernel context.