1*4582Scth /* 2*4582Scth * CDDL HEADER START 3*4582Scth * 4*4582Scth * The contents of this file are subject to the terms of the 5*4582Scth * Common Development and Distribution License (the "License"). 6*4582Scth * You may not use this file except in compliance with the License. 7*4582Scth * 8*4582Scth * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*4582Scth * or http://www.opensolaris.org/os/licensing. 10*4582Scth * See the License for the specific language governing permissions 11*4582Scth * and limitations under the License. 12*4582Scth * 13*4582Scth * When distributing Covered Code, include this CDDL HEADER in each 14*4582Scth * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*4582Scth * If applicable, add the following below this CDDL HEADER, with the 16*4582Scth * fields enclosed by brackets "[]" replaced with your own identifying 17*4582Scth * information: Portions Copyright [yyyy] [name of copyright owner] 18*4582Scth * 19*4582Scth * CDDL HEADER END 20*4582Scth */ 21*4582Scth 22*4582Scth /* 23*4582Scth * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 24*4582Scth * Use is subject to license terms. 25*4582Scth */ 26*4582Scth 27*4582Scth #ifndef _SCHG_MGR_H 28*4582Scth #define _SCHG_MGR_H 29*4582Scth 30*4582Scth #pragma ident "%Z%%M% %I% %E% SMI" 31*4582Scth 32*4582Scth /* 33*4582Scth * State Change Manager declarations 34*4582Scth */ 35*4582Scth 36*4582Scth #ifdef __cplusplus 37*4582Scth extern "C" { 38*4582Scth #endif 39*4582Scth 40*4582Scth #include "dm_types.h" 41*4582Scth 42*4582Scth #define DISK_STATE(d) ((d) & (~HPS_FAULTED)) 43*4582Scth #define DISK_FAULTED(d) ((d) & HPS_FAULTED) 44*4582Scth 45*4582Scth extern int init_state_change_manager(cfgdata_t *cfgdatap); 46*4582Scth extern void cleanup_state_change_manager(cfgdata_t *cfgdatap); 47*4582Scth extern void dm_state_change(diskmon_t *diskp, hotplug_state_t newstate); 48*4582Scth extern void dm_fault_indicator_set(diskmon_t *diskp, ind_state_t istate); 49*4582Scth extern void block_state_change_events(void); 50*4582Scth extern void unblock_state_change_events(void); 51*4582Scth 52*4582Scth #ifdef __cplusplus 53*4582Scth } 54*4582Scth #endif 55*4582Scth 56*4582Scth #endif /* _SCHG_MGR_H */ 57