The Solaris 7 DDI/DKI does not support detaching an HBA driver, although target driver children of an HBA can detach. For best results, the HBA driver should fail a detach request. It's better to fail the detach than to include code that cannot be tested.
Example 14-3 provides an example of the xx_detach() function.
static int isp_detach(dev_info_t *dip, ddi_detach_cmd_t cmd) { switch (cmd) { case DDI_DETACH: /* * At present, detaching HBA drivers is not supported */ return (DDI_FAILURE); case DDI_PM_RESUME: For information, see Chapter 8, Power Management case DDI_RESUME: For information, see Chapter 8, Power Management default: return (DDI_FAILURE); } }