dmake: do not set MAKEFLAGS=k
[unleashed/tickless.git] / usr / src / cmd / fm / fmd / common / fmd_topo.h
blobfaabb66b2484a8e17d342bedb962409d37ee9930
1 /*
2 * CDDL HEADER START
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
19 * CDDL HEADER END
22 * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
25 #ifndef _FMD_TOPO_H
26 #define _FMD_TOPO_H
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
32 #include <fm/libtopo.h>
34 #include <fmd_list.h>
36 extern void fmd_topo_init(void);
37 extern void fmd_topo_fini(void);
39 typedef struct fmd_topo {
40 fmd_list_t ft_list;
41 topo_hdl_t *ft_hdl;
42 uint32_t ft_refcount;
43 hrtime_t ft_time_begin;
44 hrtime_t ft_time_end;
45 } fmd_topo_t;
47 extern void fmd_topo_update(void);
48 extern fmd_topo_t *fmd_topo_hold(void);
49 extern void fmd_topo_addref(fmd_topo_t *);
50 extern void fmd_topo_rele(fmd_topo_t *);
51 extern void fmd_topo_rele_hdl(topo_hdl_t *);
53 #ifdef __cplusplus
55 #endif
57 #endif /* _FMD_TOPO_H */