1 4582 cth /* 2 4582 cth * CDDL HEADER START 3 4582 cth * 4 4582 cth * The contents of this file are subject to the terms of the 5 4582 cth * Common Development and Distribution License (the "License"). 6 4582 cth * You may not use this file except in compliance with the License. 7 4582 cth * 8 4582 cth * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 4582 cth * or http://www.opensolaris.org/os/licensing. 10 4582 cth * See the License for the specific language governing permissions 11 4582 cth * and limitations under the License. 12 4582 cth * 13 4582 cth * When distributing Covered Code, include this CDDL HEADER in each 14 4582 cth * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 4582 cth * If applicable, add the following below this CDDL HEADER, with the 16 4582 cth * fields enclosed by brackets "[]" replaced with your own identifying 17 4582 cth * information: Portions Copyright [yyyy] [name of copyright owner] 18 4582 cth * 19 4582 cth * CDDL HEADER END 20 4582 cth */ 21 4582 cth 22 4582 cth /* 23 6640 cth * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24 4582 cth * Use is subject to license terms. 25 4582 cth */ 26 4582 cth 27 4582 cth #ifndef _DISK_H 28 4582 cth #define _DISK_H 29 4582 cth 30 4582 cth #pragma ident "%Z%%M% %I% %E% SMI" 31 6640 cth 32 6640 cth #include <fm/topo_mod.h> 33 6640 cth #include <libdevinfo.h> 34 4582 cth 35 4582 cth #ifdef __cplusplus 36 4582 cth extern "C" { 37 4582 cth #endif 38 4582 cth 39 4582 cth /* Topo plugin version */ 40 4582 cth #define DISK_VERSION TOPO_VERSION 41 4582 cth 42 4582 cth /* Max. number of devices for thumper */ 43 4582 cth #define DEVID_MAX 48 44 4582 cth 45 4582 cth /* Properties added to the "storage" pgroup: */ 46 6640 cth #define TOPO_PGROUP_STORAGE "storage" 47 4582 cth #define TOPO_STORAGE_LOGICAL_DISK_NAME "logical-disk" 48 4582 cth #define TOPO_STORAGE_MODEL "model" 49 4582 cth #define TOPO_STORAGE_MANUFACTURER "manufacturer" 50 4582 cth #define TOPO_STORAGE_SERIAL_NUM "serial-number" 51 4582 cth #define TOPO_STORAGE_FIRMWARE_REV "firmware-revision" 52 4582 cth #define TOPO_STORAGE_CAPACITY "capacity-in-bytes" 53 4582 cth 54 6640 cth /* 55 6640 cth * Properties for binding group: The binding group required in platform 56 6640 cth * specific xml that describes 'bay' nodes containing internal disks. 57 6640 cth */ 58 6640 cth #define TOPO_PGROUP_BINDING "binding" 59 6640 cth #define TOPO_BINDING_OCCUPANT "occupant-path" 60 6640 cth 61 6640 cth struct topo_list; 62 6640 cth 63 6640 cth /* Methods shared with the ses module (disk_common.c) */ 64 6640 cth extern int disk_list_gather(topo_mod_t *, struct topo_list *); 65 6640 cth extern void disk_list_free(topo_mod_t *, struct topo_list *); 66 6640 cth extern int disk_declare_path(topo_mod_t *, tnode_t *, 67 6640 cth struct topo_list *, const char *); 68 6640 cth extern int disk_declare_addr(topo_mod_t *, tnode_t *, 69 6640 cth struct topo_list *, const char *); 70 6869 eschrock extern char *disk_auth_clean(topo_mod_t *, const char *); 71 6640 cth 72 4582 cth #ifdef __cplusplus 73 4582 cth } 74 4582 cth #endif 75 4582 cth 76 4582 cth #endif /* _DISK_H */ 77