xref: /titanic_52/usr/src/lib/libraidcfg/common/llib-lraidcfg (revision 711890bc9379ceea66272dc8d4981812224ea86e)
1*711890bcSjc156560/*
2*711890bcSjc156560 * CDDL HEADER START
3*711890bcSjc156560 *
4*711890bcSjc156560 * The contents of this file are subject to the terms of the
5*711890bcSjc156560 * Common Development and Distribution License (the "License").
6*711890bcSjc156560 * You may not use this file except in compliance with the License.
7*711890bcSjc156560 *
8*711890bcSjc156560 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*711890bcSjc156560 * or http://www.opensolaris.org/os/licensing.
10*711890bcSjc156560 * See the License for the specific language governing permissions
11*711890bcSjc156560 * and limitations under the License.
12*711890bcSjc156560 *
13*711890bcSjc156560 * When distributing Covered Code, include this CDDL HEADER in each
14*711890bcSjc156560 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*711890bcSjc156560 * If applicable, add the following below this CDDL HEADER, with the
16*711890bcSjc156560 * fields enclosed by brackets "[]" replaced with your own identifying
17*711890bcSjc156560 * information: Portions Copyright [yyyy] [name of copyright owner]
18*711890bcSjc156560 *
19*711890bcSjc156560 * CDDL HEADER END
20*711890bcSjc156560 */
21*711890bcSjc156560/*LINTLIBRARY*/
22*711890bcSjc156560/*PROTOLIB1*/
23*711890bcSjc156560
24*711890bcSjc156560/*
25*711890bcSjc156560 * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
26*711890bcSjc156560 * Use is subject to license terms.
27*711890bcSjc156560 */
28*711890bcSjc156560
29*711890bcSjc156560#pragma ident	"%Z%%M%	%I%	%E% SMI"
30*711890bcSjc156560
31*711890bcSjc156560#include <raidcfg.h>
32*711890bcSjc156560
33*711890bcSjc156560const char *
34*711890bcSjc156560raidcfg_errstr(
35*711890bcSjc156560	int err_code);
36*711890bcSjc156560
37*711890bcSjc156560int
38*711890bcSjc156560raidcfg_get_controller(
39*711890bcSjc156560	uint32_t controller_id);
40*711890bcSjc156560
41*711890bcSjc156560int
42*711890bcSjc156560raidcfg_get_array(
43*711890bcSjc156560	int controller_handle,
44*711890bcSjc156560	uint64_t target_id,
45*711890bcSjc156560	uint64_t lun);
46*711890bcSjc156560
47*711890bcSjc156560int
48*711890bcSjc156560raidcfg_get_disk(
49*711890bcSjc156560	int controller_handle,
50*711890bcSjc156560	disk_tag_t tag);
51*711890bcSjc156560
52*711890bcSjc156560int
53*711890bcSjc156560raidcfg_open_controller(
54*711890bcSjc156560	int handle,
55*711890bcSjc156560	char **plugin_err_str);
56*711890bcSjc156560
57*711890bcSjc156560int
58*711890bcSjc156560raidcfg_close_controller(
59*711890bcSjc156560	int handle,
60*711890bcSjc156560	char **plugin_err_str);
61*711890bcSjc156560
62*711890bcSjc156560int
63*711890bcSjc156560raidcfg_get_type(
64*711890bcSjc156560	int handle);
65*711890bcSjc156560
66*711890bcSjc156560int
67*711890bcSjc156560raidcfg_get_attr(
68*711890bcSjc156560	int handle,
69*711890bcSjc156560	void *attr);
70*711890bcSjc156560
71*711890bcSjc156560int
72*711890bcSjc156560raidcfg_get_container(
73*711890bcSjc156560	int handle);
74*711890bcSjc156560
75*711890bcSjc156560int
76*711890bcSjc156560raidcfg_list_head(
77*711890bcSjc156560	int handle,
78*711890bcSjc156560	raid_obj_type_id_t type);
79*711890bcSjc156560
80*711890bcSjc156560int
81*711890bcSjc156560raidcfg_list_next(
82*711890bcSjc156560	int handle);
83*711890bcSjc156560
84*711890bcSjc156560int
85*711890bcSjc156560raidcfg_set_attr(
86*711890bcSjc156560	int handle,
87*711890bcSjc156560	uint32_t set_cmd,
88*711890bcSjc156560	void *value,
89*711890bcSjc156560	char **plugin_err_str);
90*711890bcSjc156560
91*711890bcSjc156560int
92*711890bcSjc156560raidcfg_update_fw(
93*711890bcSjc156560	int handle,
94*711890bcSjc156560	char *file,
95*711890bcSjc156560	char **plugin_err_str);
96*711890bcSjc156560
97*711890bcSjc156560int
98*711890bcSjc156560raidcfg_create_array(
99*711890bcSjc156560	int num_of_comps,
100*711890bcSjc156560	int *disk_handles,
101*711890bcSjc156560	uint32_t raid_level,
102*711890bcSjc156560	uint64_t size,
103*711890bcSjc156560	uint32_t stripe_size,
104*711890bcSjc156560	char **plugin_err_str);
105*711890bcSjc156560
106*711890bcSjc156560int
107*711890bcSjc156560raidcfg_delete_array(
108*711890bcSjc156560	int array_handle,
109*711890bcSjc156560	char **plugin_err_str);
110*711890bcSjc156560
111*711890bcSjc156560int
112*711890bcSjc156560raidcfg_set_hsp(
113*711890bcSjc156560	int num,
114*711890bcSjc156560	raidcfg_hsp_relation_t *hsp_relations,
115*711890bcSjc156560	char **plugin_err_str);
116*711890bcSjc156560
117*711890bcSjc156560int
118*711890bcSjc156560raidcfg_unset_hsp(
119*711890bcSjc156560	int num,
120*711890bcSjc156560	raidcfg_hsp_relation_t *hsp_relations,
121*711890bcSjc156560	char **plugin_err_str);
122*711890bcSjc156560
123