Go to main content

man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: Thursday, June 13, 2019
 
 

ldi_get_dev(9F)

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.