1*7c478bd9Sstevel@tonic-gate /* 2*7c478bd9Sstevel@tonic-gate * CDDL HEADER START 3*7c478bd9Sstevel@tonic-gate * 4*7c478bd9Sstevel@tonic-gate * The contents of this file are subject to the terms of the 5*7c478bd9Sstevel@tonic-gate * Common Development and Distribution License, Version 1.0 only 6*7c478bd9Sstevel@tonic-gate * (the "License"). You may not use this file except in compliance 7*7c478bd9Sstevel@tonic-gate * with the License. 8*7c478bd9Sstevel@tonic-gate * 9*7c478bd9Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*7c478bd9Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 11*7c478bd9Sstevel@tonic-gate * See the License for the specific language governing permissions 12*7c478bd9Sstevel@tonic-gate * and limitations under the License. 13*7c478bd9Sstevel@tonic-gate * 14*7c478bd9Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 15*7c478bd9Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*7c478bd9Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 17*7c478bd9Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 18*7c478bd9Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 19*7c478bd9Sstevel@tonic-gate * 20*7c478bd9Sstevel@tonic-gate * CDDL HEADER END 21*7c478bd9Sstevel@tonic-gate */ 22*7c478bd9Sstevel@tonic-gate /* 23*7c478bd9Sstevel@tonic-gate * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 24*7c478bd9Sstevel@tonic-gate * Use is subject to license terms. 25*7c478bd9Sstevel@tonic-gate */ 26*7c478bd9Sstevel@tonic-gate 27*7c478bd9Sstevel@tonic-gate #ifndef _SYS_SMC_COMMANDS_H 28*7c478bd9Sstevel@tonic-gate #define _SYS_SMC_COMMANDS_H 29*7c478bd9Sstevel@tonic-gate 30*7c478bd9Sstevel@tonic-gate #pragma ident "%Z%%M% %I% %E% SMI" 31*7c478bd9Sstevel@tonic-gate 32*7c478bd9Sstevel@tonic-gate #ifdef __cplusplus 33*7c478bd9Sstevel@tonic-gate extern "C" { 34*7c478bd9Sstevel@tonic-gate #endif 35*7c478bd9Sstevel@tonic-gate 36*7c478bd9Sstevel@tonic-gate /* Address of BMC on IPMB */ 37*7c478bd9Sstevel@tonic-gate #define BMC_IPMB_ADDR 0x20 38*7c478bd9Sstevel@tonic-gate #define SMC_CPCI_SLOT0_ADDR 0xB0 39*7c478bd9Sstevel@tonic-gate #define SMC_CPCI_SLOT_ADDR(X) (SMC_CPCI_SLOT0_ADDR + \ 40*7c478bd9Sstevel@tonic-gate 2 * ((X) - 1)) 41*7c478bd9Sstevel@tonic-gate 42*7c478bd9Sstevel@tonic-gate typedef struct ctsmc_code_ent { 43*7c478bd9Sstevel@tonic-gate uint8_t code; 44*7c478bd9Sstevel@tonic-gate char *name; 45*7c478bd9Sstevel@tonic-gate } ctsmc_code_ent_t; 46*7c478bd9Sstevel@tonic-gate 47*7c478bd9Sstevel@tonic-gate /* 48*7c478bd9Sstevel@tonic-gate * Definition of Network Function Codes 49*7c478bd9Sstevel@tonic-gate */ 50*7c478bd9Sstevel@tonic-gate typedef enum { 51*7c478bd9Sstevel@tonic-gate SMC_NETFN_CHASSIS_REQ = 0x0, 52*7c478bd9Sstevel@tonic-gate SMC_NETFN_CHASSIS_RSP = 0x1, 53*7c478bd9Sstevel@tonic-gate SMC_NETFN_BRIDGE_REQ = 0x2, 54*7c478bd9Sstevel@tonic-gate SMC_NETFN_BRIDGE_RSP = 0x3, 55*7c478bd9Sstevel@tonic-gate SMC_NETFN_SENSOR_REQ = 0x4, 56*7c478bd9Sstevel@tonic-gate SMC_NETFN_SENSOR_RSP = 0x5, 57*7c478bd9Sstevel@tonic-gate SMC_NETFN_APP_REQ = 0x6, 58*7c478bd9Sstevel@tonic-gate SMC_NETFN_APP_RSP = 0x7, 59*7c478bd9Sstevel@tonic-gate SMC_NETFN_FIRMWARE_REQ = 0x8, 60*7c478bd9Sstevel@tonic-gate SMC_NETFN_FIRMWARE_RSP = 0x9, 61*7c478bd9Sstevel@tonic-gate SMC_NETFN_STORAGE_REQ = 0xA, 62*7c478bd9Sstevel@tonic-gate SMC_NETFN_STORAGE_RSP = 0xB 63*7c478bd9Sstevel@tonic-gate } smc_netfn_t; 64*7c478bd9Sstevel@tonic-gate 65*7c478bd9Sstevel@tonic-gate /* 66*7c478bd9Sstevel@tonic-gate * Definition of Completion codes 67*7c478bd9Sstevel@tonic-gate */ 68*7c478bd9Sstevel@tonic-gate typedef enum { 69*7c478bd9Sstevel@tonic-gate SMC_CC_SUCCESS = 0x00, 70*7c478bd9Sstevel@tonic-gate SMC_CC_NODE_BUSY = 0xC0, 71*7c478bd9Sstevel@tonic-gate SMC_CC_INVALID_COMMAND = 0xC1, 72*7c478bd9Sstevel@tonic-gate SMC_CC_INVALID_COMMAND_ON_LUN = 0xC2, 73*7c478bd9Sstevel@tonic-gate SMC_CC_TIMEOUT = 0xC3, 74*7c478bd9Sstevel@tonic-gate SMC_CC_RESOURCE_NOTAVAIL = 0xC4, 75*7c478bd9Sstevel@tonic-gate SMC_CC_RESERVATION = 0xC5, 76*7c478bd9Sstevel@tonic-gate SMC_CC_REQ_TRUNC = 0xC6, 77*7c478bd9Sstevel@tonic-gate SMC_CC_REQLEN_NOTVALID = 0xC7, 78*7c478bd9Sstevel@tonic-gate SMC_CC_REQLEN_EXCEED = 0xC8, 79*7c478bd9Sstevel@tonic-gate SMC_CC_PARAM_OUT_OF_RANGE = 0xC9, 80*7c478bd9Sstevel@tonic-gate SMC_CC_REQUEST_BYTES_FAILED = 0xCA, 81*7c478bd9Sstevel@tonic-gate SMC_CC_NOT_PRESENT = 0xCB, 82*7c478bd9Sstevel@tonic-gate SMC_CC_INVALID_FIELD = 0xCC, 83*7c478bd9Sstevel@tonic-gate SMC_CC_ILLEGAL_COMMAND = 0xCD, 84*7c478bd9Sstevel@tonic-gate SMC_CC_RESPONSE_FAILED = 0xCE, 85*7c478bd9Sstevel@tonic-gate SMC_CC_DUPLICATE_REQUEST = 0xCF, 86*7c478bd9Sstevel@tonic-gate SMC_CC_SDR_UPDATE_MODE = 0xD0, 87*7c478bd9Sstevel@tonic-gate SMC_CC_FIRMWARE_UPDATE_MODE = 0xD1, 88*7c478bd9Sstevel@tonic-gate SMC_CC_INIT_IN_PROGRESS = 0xD2, 89*7c478bd9Sstevel@tonic-gate SMC_CC_UNSPECIFIED_ERROR = 0xFF 90*7c478bd9Sstevel@tonic-gate } smc_cc_t; 91*7c478bd9Sstevel@tonic-gate 92*7c478bd9Sstevel@tonic-gate typedef enum { 93*7c478bd9Sstevel@tonic-gate SMC_BMC_LUN, 94*7c478bd9Sstevel@tonic-gate SMC_OEM1_LUN, 95*7c478bd9Sstevel@tonic-gate SMC_SMS_LUN, 96*7c478bd9Sstevel@tonic-gate SMC_OEM2_LUN 97*7c478bd9Sstevel@tonic-gate } smc_lun_t; 98*7c478bd9Sstevel@tonic-gate 99*7c478bd9Sstevel@tonic-gate /* 100*7c478bd9Sstevel@tonic-gate * App command codes for commands/event notifications etc. 101*7c478bd9Sstevel@tonic-gate */ 102*7c478bd9Sstevel@tonic-gate typedef enum { 103*7c478bd9Sstevel@tonic-gate SMC_GET_DEVICE_ID = 0x01, 104*7c478bd9Sstevel@tonic-gate SMC_COLD_RESET = 0x02, 105*7c478bd9Sstevel@tonic-gate SMC_WARM_RESET = 0x03, 106*7c478bd9Sstevel@tonic-gate SMC_GET_SELFTEST_RESULTS = 0x04, 107*7c478bd9Sstevel@tonic-gate SMC_MANUFACTURING_TEST_ON = 0x05, 108*7c478bd9Sstevel@tonic-gate SMC_SET_ACPI_POWER_STATE = 0x06, 109*7c478bd9Sstevel@tonic-gate SMC_GET_ACPI_POWER_STATE = 0x07, 110*7c478bd9Sstevel@tonic-gate SMC_GET_DEVICE_GUID = 0x08, 111*7c478bd9Sstevel@tonic-gate SMC_RESET_WATCHDOG_TIMER = 0x22, 112*7c478bd9Sstevel@tonic-gate SMC_EXPIRED_WATCHDOG_NOTIF = 0x23, /* Sent by driver */ 113*7c478bd9Sstevel@tonic-gate SMC_SET_WATCHDOG_TIMER = 0x24, 114*7c478bd9Sstevel@tonic-gate SMC_GET_WATCHDOG_TIMER = 0x25, 115*7c478bd9Sstevel@tonic-gate SMC_SET_GLOBAL_ENABLES = 0x2E, 116*7c478bd9Sstevel@tonic-gate SMC_GET_GLOBAL_ENABLES = 0x2F, 117*7c478bd9Sstevel@tonic-gate SMC_CLEAR_MESSAGE_FLAGS = 0x30, 118*7c478bd9Sstevel@tonic-gate SMC_GET_MESSAGE_FLAGS = 0x31, 119*7c478bd9Sstevel@tonic-gate SMC_ENABLE_MESSAGE_CHANNEL_RECEIVE = 0x32, 120*7c478bd9Sstevel@tonic-gate SMC_GET_MESSAGE = 0x33, 121*7c478bd9Sstevel@tonic-gate SMC_SEND_MESSAGE = 0x34, 122*7c478bd9Sstevel@tonic-gate SMC_READ_EVENT_MSG_BUFFER = 0x35, 123*7c478bd9Sstevel@tonic-gate SMC_SEND_TO_EVENT_MSG_BUFFER = 0x36, /* Changed from IPMI */ 124*7c478bd9Sstevel@tonic-gate SMC_MASTER_WR_RD_I2C = 0x52, 125*7c478bd9Sstevel@tonic-gate SMC_GET_GEOGRAPHICAL_ADDRESS = 0x55, 126*7c478bd9Sstevel@tonic-gate SMC_GET_BACKPLANE_TYPE = 0x57, 127*7c478bd9Sstevel@tonic-gate SMC_SELECT_MEMORY_DEVICE = 0x60, 128*7c478bd9Sstevel@tonic-gate SMC_READ_SELECTED_MEMORY_DEVICE = 0x61, 129*7c478bd9Sstevel@tonic-gate SMC_READ_MEMORY_DEVICE = 0x62, 130*7c478bd9Sstevel@tonic-gate SMC_WRITE_SELECTED_MEMORY_DEVICE = 0x63, 131*7c478bd9Sstevel@tonic-gate SMC_WRITE_MEMORY_DEVICE = 0x64, 132*7c478bd9Sstevel@tonic-gate SMC_ERASE_SELECTED_MEMORY_DEVICE = 0x65, 133*7c478bd9Sstevel@tonic-gate SMC_LOCK_UNLOCK_SELECTED_MEMORY = 0x66, 134*7c478bd9Sstevel@tonic-gate SMC_COMPUTE_CRC16_OF_SELECTED_MEMORY_DEVICE = 0x67, 135*7c478bd9Sstevel@tonic-gate SMC_COMPUTE_CRC16_OF_MEMORY_DEVICE = 0x68, 136*7c478bd9Sstevel@tonic-gate SMC_FILL_MEMORY_DEVICE = 0x6a, 137*7c478bd9Sstevel@tonic-gate SMC_QUERY_FIRMWARE_VERSION = 0x6f, 138*7c478bd9Sstevel@tonic-gate SMC_RESET_DEVICE = 0x70, 139*7c478bd9Sstevel@tonic-gate SMC_GET_ROLE_INFO = 0x71, 140*7c478bd9Sstevel@tonic-gate SMC_GET_FLASH_AND_BOOT_VERSION = 0x72, 141*7c478bd9Sstevel@tonic-gate SMC_GET_LOCAL_HA_SIGNAL_STATUS = 0x73, 142*7c478bd9Sstevel@tonic-gate SMC_SELECT_HA_HOTSWAP_MODE = 0x80, 143*7c478bd9Sstevel@tonic-gate SMC_GET_HA_HOTSWAP_SIGNAL_STATE = 0x81, 144*7c478bd9Sstevel@tonic-gate SMC_SET_HA_HOTSWAP_SIGNAL_STATE = 0x82, 145*7c478bd9Sstevel@tonic-gate SMC_NOTIFY_SMC_OF_HOST_HEALTH = 0x83, 146*7c478bd9Sstevel@tonic-gate SMC_TURN_ON_OFF_BLUE_LED = 0x84, 147*7c478bd9Sstevel@tonic-gate SMC_GET_EXECUTION_STATE = 0x85, 148*7c478bd9Sstevel@tonic-gate SMC_GET_SMC_UPTIME = 0x86, 149*7c478bd9Sstevel@tonic-gate SMC_ENUM_NOTIF = 0x87, 150*7c478bd9Sstevel@tonic-gate SMC_IPMI_RESPONSE_NOTIF = 0x88, 151*7c478bd9Sstevel@tonic-gate SMC_SET_INTERFACE_TIMEOUT = 0x89, 152*7c478bd9Sstevel@tonic-gate SMC_GET_INTERFACE_TIMEOUT = 0x8A, 153*7c478bd9Sstevel@tonic-gate SMC_SMC_LOCAL_EVENT_NOTIF = 0x8B, 154*7c478bd9Sstevel@tonic-gate SMC_GET_DEVICE_TABLE_DATA = 0x8C, 155*7c478bd9Sstevel@tonic-gate SMC_IPMI_MASTER_WR_RD_I2C = 0x90, 156*7c478bd9Sstevel@tonic-gate SMC_GET_SMC_SELF_TEST_RESULT = 0xA0, 157*7c478bd9Sstevel@tonic-gate SMC_READ_SMC_PLD_REGISTER = 0xA1, 158*7c478bd9Sstevel@tonic-gate SMC_WRITE_SMC_PLD_REGISTER = 0xA2, 159*7c478bd9Sstevel@tonic-gate SMC_SET_ROLE = 0xC0, 160*7c478bd9Sstevel@tonic-gate SMC_SET_CPCI_INTMASK = 0xC1, 161*7c478bd9Sstevel@tonic-gate SMC_GET_CPCI_INTMASK = 0xC2, 162*7c478bd9Sstevel@tonic-gate SMC_EEPROM_WRITE = 0xC3, 163*7c478bd9Sstevel@tonic-gate SMC_EEPROM_READ = 0xC4, 164*7c478bd9Sstevel@tonic-gate SMC_SET_STATE = 0xDE, 165*7c478bd9Sstevel@tonic-gate SMC_GET_STATE = 0xDF, 166*7c478bd9Sstevel@tonic-gate SMC_SET_DHCP_CLIENT_ID = 0xE1, 167*7c478bd9Sstevel@tonic-gate SMC_GET_DHCP_CLIENT_ID = 0xE2, 168*7c478bd9Sstevel@tonic-gate SMC_DEV_SDR_REPOSITORY_RESERVE = 0xE3, 169*7c478bd9Sstevel@tonic-gate SMC_FRU_INVENTORY_AREA_INFO_GET = 0xE4, 170*7c478bd9Sstevel@tonic-gate SMC_SET_BANNER = 0xE5, 171*7c478bd9Sstevel@tonic-gate SMC_GET_BANNER = 0xE6, 172*7c478bd9Sstevel@tonic-gate SMC_SEND_ASYNC_SEL_CMD_TO_HOST = 0xE7, 173*7c478bd9Sstevel@tonic-gate SMC_MASTER_WR_RD_I2C_2 = 0xE9, 174*7c478bd9Sstevel@tonic-gate SMC_GET_BUFFER_BLOCK_ALLOC_TABLE = 0xEA, 175*7c478bd9Sstevel@tonic-gate SMC_GET_BUFFER_ALLOC_TABLE = 0xEB, 176*7c478bd9Sstevel@tonic-gate SMC_GET_SFRS = 0xEC, 177*7c478bd9Sstevel@tonic-gate SMC_GET_PORT_VALUE = 0xED, 178*7c478bd9Sstevel@tonic-gate SMC_GET_BUFFER_DATA = 0xEE, 179*7c478bd9Sstevel@tonic-gate SMC_GET_PCB_DATA = 0xEF, 180*7c478bd9Sstevel@tonic-gate SMC_GET_PCB_BLOCK_ALLOC_TABLE = 0xF0, 181*7c478bd9Sstevel@tonic-gate SMC_GET_PCB_TABLE = 0xF1, 182*7c478bd9Sstevel@tonic-gate SMC_DEVICE_SDR_INFO_GET = 0xF2, 183*7c478bd9Sstevel@tonic-gate SMC_DEVICE_SDR_GET = 0xF3, 184*7c478bd9Sstevel@tonic-gate SMC_SENSOR_EVENT_ENABLE_GET = 0xF4, 185*7c478bd9Sstevel@tonic-gate SMC_SENSOR_EVENT_ENABLE_SET = 0xF5, 186*7c478bd9Sstevel@tonic-gate SMC_GET_CONFIG_BLOCK = 0xF8, 187*7c478bd9Sstevel@tonic-gate SMC_SET_CONFIG_BLOCK = 0xF9, 188*7c478bd9Sstevel@tonic-gate SMC_SET_VOLTAGE = 0xFB, 189*7c478bd9Sstevel@tonic-gate SMC_SENSOR_READING_GET = 0xFC, 190*7c478bd9Sstevel@tonic-gate SMC_SENSOR_THRESHOLD_GET = 0xFD, 191*7c478bd9Sstevel@tonic-gate SMC_SENSOR_THRESHOLD_SET = 0xFE, 192*7c478bd9Sstevel@tonic-gate SMC_CND_OF_CMD_MARKER = 0xFF 193*7c478bd9Sstevel@tonic-gate } smc_app_command_t; 194*7c478bd9Sstevel@tonic-gate 195*7c478bd9Sstevel@tonic-gate typedef enum { 196*7c478bd9Sstevel@tonic-gate SMC_GET_CHASSIS_STATUS = 0x01, 197*7c478bd9Sstevel@tonic-gate SMC_CHASSIS_CONTROL = 0x02, 198*7c478bd9Sstevel@tonic-gate SMC_GET_POH_COUNTER = 0x0F 199*7c478bd9Sstevel@tonic-gate } smc_chassis_command_t; 200*7c478bd9Sstevel@tonic-gate 201*7c478bd9Sstevel@tonic-gate typedef enum { 202*7c478bd9Sstevel@tonic-gate SMC_SET_EVENT_RECEIVER = 0x00, 203*7c478bd9Sstevel@tonic-gate SMC_GET_EVENT_RECEIVER = 0x01, 204*7c478bd9Sstevel@tonic-gate SMC_PLATFORM_EVENT_MESSAGE = 0x02 205*7c478bd9Sstevel@tonic-gate } smc_event_command_t; 206*7c478bd9Sstevel@tonic-gate 207*7c478bd9Sstevel@tonic-gate typedef enum { 208*7c478bd9Sstevel@tonic-gate SMC_GET_SEL_INFO = 0x40, 209*7c478bd9Sstevel@tonic-gate SMC_GET_SEL_ALLOCATION_INFO = 0x41, 210*7c478bd9Sstevel@tonic-gate SMC_RESERVE_SEL = 0x42, 211*7c478bd9Sstevel@tonic-gate SMC_GET_SEL_ENTRY = 0x43, 212*7c478bd9Sstevel@tonic-gate SMC_ADD_SEL_ENTRY = 0x44, 213*7c478bd9Sstevel@tonic-gate SMC_PARTIAL_ADD_SEL_ENTRY = 0x45, 214*7c478bd9Sstevel@tonic-gate SMC_DELETE_SEL_ENTRY = 0x46, 215*7c478bd9Sstevel@tonic-gate SMC_CLEAR_SEL = 0x47, 216*7c478bd9Sstevel@tonic-gate SMC_GET_SEL_TIME = 0x48, 217*7c478bd9Sstevel@tonic-gate SMC_SET_SEL_TIME = 0x49 218*7c478bd9Sstevel@tonic-gate } smc_sel_command_t; 219*7c478bd9Sstevel@tonic-gate 220*7c478bd9Sstevel@tonic-gate typedef enum { 221*7c478bd9Sstevel@tonic-gate SMC_GET_SDR_REPOSITORY_INFO = 0x20, 222*7c478bd9Sstevel@tonic-gate SMC_GET_SDR_REPOSITORY_ALLOCATION_INFO = 0x21, 223*7c478bd9Sstevel@tonic-gate SMC_RESERVE_SDR_REPOSITORY = 0x22, 224*7c478bd9Sstevel@tonic-gate SMC_GET_SDR = 0x23, 225*7c478bd9Sstevel@tonic-gate SMC_ADD_SDR = 0x24, 226*7c478bd9Sstevel@tonic-gate SMC_PARTIAL_ADD_SDR = 0x25, 227*7c478bd9Sstevel@tonic-gate SMC_DELETE_SDR = 0x26, 228*7c478bd9Sstevel@tonic-gate SMC_CLEAR_SDR_REPOSITORY = 0x27, 229*7c478bd9Sstevel@tonic-gate SMC_GET_SDR_REPOSITORY_TIME = 0x28, 230*7c478bd9Sstevel@tonic-gate SMC_SET_SDR_REPOSITORY_TIME = 0x29, 231*7c478bd9Sstevel@tonic-gate SMC_ENTER_SDR_REPOSITORY_UPDATE_MODE = 0x2A, 232*7c478bd9Sstevel@tonic-gate SMC_EXIT_SDR_REPOSITORY_UPDATE_MODE = 0x2B, 233*7c478bd9Sstevel@tonic-gate SMC_RUN_INITIALIZATION_AGENT = 0x2C 234*7c478bd9Sstevel@tonic-gate } smc_sdr_repository_command_t; 235*7c478bd9Sstevel@tonic-gate 236*7c478bd9Sstevel@tonic-gate typedef enum { 237*7c478bd9Sstevel@tonic-gate SMC_GET_FRU_INVENTORY_AREA_INFO = 0x10, 238*7c478bd9Sstevel@tonic-gate SMC_READ_FRU_INVENTORY_DATA = 0x11, 239*7c478bd9Sstevel@tonic-gate SMC_WRITE_FRU_INVENTORY_DATA = 0x12 240*7c478bd9Sstevel@tonic-gate } smc_fru_inventory_device_command_t; 241*7c478bd9Sstevel@tonic-gate 242*7c478bd9Sstevel@tonic-gate typedef enum { 243*7c478bd9Sstevel@tonic-gate SMC_GET_DEVICE_SDR_INFO = 0x20, 244*7c478bd9Sstevel@tonic-gate SMC_GET_DEVICE_SDR = 0x21, 245*7c478bd9Sstevel@tonic-gate SMC_RESERVE_DEVICE_SDR_REPOSITORY = 0x22, 246*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_READING_FACTORS = 0x23, 247*7c478bd9Sstevel@tonic-gate SMC_SET_SENSOR_HYSTERESIS = 0x24, 248*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_HYSTERESIS = 0x25, 249*7c478bd9Sstevel@tonic-gate SMC_SET_SENSOR_THRESHOLD = 0x26, 250*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_THRESHOLD = 0x27, 251*7c478bd9Sstevel@tonic-gate SMC_SET_SENSOR_EVENT_ENABLE = 0x28, 252*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_EVENT_ENABLE = 0x29, 253*7c478bd9Sstevel@tonic-gate SMC_REARM_SENSOR_EVENTS = 0x2A, 254*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_EVENT_STATUS = 0x2B, 255*7c478bd9Sstevel@tonic-gate /* RESERVED */ 256*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_READING = 0x2D, 257*7c478bd9Sstevel@tonic-gate SMC_SET_SENSOR_TYPE = 0x2E, 258*7c478bd9Sstevel@tonic-gate SMC_GET_SENSOR_TYPE = 0x2F 259*7c478bd9Sstevel@tonic-gate } smc_sensor_device_command_t; 260*7c478bd9Sstevel@tonic-gate 261*7c478bd9Sstevel@tonic-gate #ifdef __cplusplus 262*7c478bd9Sstevel@tonic-gate } 263*7c478bd9Sstevel@tonic-gate #endif 264*7c478bd9Sstevel@tonic-gate 265*7c478bd9Sstevel@tonic-gate #endif /* _SYS_SMC_COMMANDS_H */ 266