usb_register_hotplug_cbs man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

USB_REGISTER_HOTPLUG_CBS(9F)			  USB_REGISTER_HOTPLUG_CBS(9F)

NAME
       usb_register_hotplug_cbs,  usb_unregister_hotplug_cbs - Register/unreg‐
       ister for notification of device hotplug events

SYNOPSIS
       #include <sys/usb/usba.h>

       int usb_register_hotplug_cbs(dev_info_t *dip,
	    int (*disconnection_event_handler)(dev_info_t *dip,
	    int (*reconnection_event_handler)(dev_info_t *dip);

	void usb_unregister_hotplug_cbs(dev_info_t *dip);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI)

PARAMETERS
       For usb_register_hotplug_cbs()

       dip

	   Pointer to the device's dev_info structure.

       disconnection_event_handler

	   Called when device is disconnected. This handler takes a dev_info_t
	   as  an  argument  (representing  the device being disconnected) and
	   always returns USB_SUCCESS.

       reconnection_event_handler

	   Called when device is reconnected. This handler takes a  dev_info_t
	   as  an  argument  (representing  the	 device being reconnected) and
	   always returns USB_SUCCESS.

       For usb_unregister_hotplug_cbs():

       dip
	      Pointer to the device's dev_info structure.

DESCRIPTION
       The usb_register_hotplug_cbs() function registers callbacks to be  exe‐
       cuted when the USB device represented by dip is hotplugged or removed.

       The  usb_unregister_hotplug_cbs()  function  unregisters	 or disengages
       callbacks from executing when the USB device represented by dip is hot‐
       plugged or removed.

RETURN VALUES
       For usb_register_hotplug_cbs():

       USB_SUCCESS
		      Callbacks were successfully registered.

       USB_FAILURE
		      One or more arguments were NULL.

		      Callbacks could not be successfully registered.

       For usb_unregister_hotplug_cbs(): None

CONTEXT
       The   usb_register_hotplug_cbs()	 function  may	be  called  only  from
       attach(9E).

       The usb_unregister_hotplug_cbs()	 function  may	be  called  only  from
       detach(9E).

       Registered  callback handlers requiring the use of any DDI (section 9F)
       function (except	 ddi_taskq_*  functions),  should  launch  a  separate
       thread  using ddi_taskq_* routines for processing their event, to avoid
       deadlocks. The new thread can then safely  call	any  DDI  function  it
       needs to handle the event.

       The registered callback handlers execute in kernel context.

EXAMPLES
	     int remove_device(dev_info_t *)
	     {
		     ...
		     ...
		     return (USB_SUCCESS);
	     }

	     int accommodate_device(dev_info_t *)
	     {
		     ...
		     ...
		     return (USB_SUCCESS);
	     }

	     if (usb_register_hotplug_cbs(
		 dip, remove_device, accommodate_device) == USB_FAILURE) {
		     cmn_err (CE_WARN,
			 "%s%d: Could not register hotplug handlers.",
			 ddi_driver_name(dip), ddi_get_instance(dip));
	     }

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬───────────────────┐
       │  ATTRIBUTE TYPE    │  ATTRIBUTE VALUE	│
       ├────────────────────┼───────────────────┤
       │Architecture	    │ PCI-based systems │
       ├────────────────────┼───────────────────┤
       │Interface stability │ Committed		│
       └────────────────────┴───────────────────┘

SEE ALSO
       attributes(5), attach(9E), detach(9E), usb_get_status(9F)

				 Aug 17, 2004	  USB_REGISTER_HOTPLUG_CBS(9F)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net