11253Slq150181 /* 21253Slq150181 * CDDL HEADER START 31253Slq150181 * 41253Slq150181 * The contents of this file are subject to the terms of the 51253Slq150181 * Common Development and Distribution License (the "License"). 61253Slq150181 * You may not use this file except in compliance with the License. 71253Slq150181 * 81253Slq150181 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 91253Slq150181 * or http://www.opensolaris.org/os/licensing. 101253Slq150181 * See the License for the specific language governing permissions 111253Slq150181 * and limitations under the License. 121253Slq150181 * 131253Slq150181 * When distributing Covered Code, include this CDDL HEADER in each 141253Slq150181 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 151253Slq150181 * If applicable, add the following below this CDDL HEADER, with the 161253Slq150181 * fields enclosed by brackets "[]" replaced with your own identifying 171253Slq150181 * information: Portions Copyright [yyyy] [name of copyright owner] 181253Slq150181 * 191253Slq150181 * CDDL HEADER END 201253Slq150181 */ 211253Slq150181 221253Slq150181 /* 23*7688SAaron.Zang@Sun.COM * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 241253Slq150181 * Use is subject to license terms. 251253Slq150181 */ 261253Slq150181 271253Slq150181 #ifndef _SYS_TEM_H 281253Slq150181 #define _SYS_TEM_H 291253Slq150181 301253Slq150181 #ifdef __cplusplus 311253Slq150181 extern "C" { 321253Slq150181 #endif 331253Slq150181 341253Slq150181 #ifdef _KERNEL 351253Slq150181 361253Slq150181 #include <sys/visual_io.h> 371253Slq150181 #include <sys/cred.h> 381253Slq150181 #include <sys/beep.h> 391253Slq150181 401253Slq150181 typedef struct __tem_modechg_cb_arg *tem_modechg_cb_arg_t; 411253Slq150181 typedef void (*tem_modechg_cb_t) (tem_modechg_cb_arg_t arg); 421253Slq150181 43*7688SAaron.Zang@Sun.COM typedef struct __tem_vt_state *tem_vt_state_t; 44*7688SAaron.Zang@Sun.COM 45*7688SAaron.Zang@Sun.COM int tem_initialized(tem_vt_state_t); 46*7688SAaron.Zang@Sun.COM 47*7688SAaron.Zang@Sun.COM tem_vt_state_t tem_init(cred_t *); 48*7688SAaron.Zang@Sun.COM 49*7688SAaron.Zang@Sun.COM void tem_destroy(tem_vt_state_t, cred_t *); 50*7688SAaron.Zang@Sun.COM 51*7688SAaron.Zang@Sun.COM int tem_info_init(char *, cred_t *); 52*7688SAaron.Zang@Sun.COM 53*7688SAaron.Zang@Sun.COM void tem_write(tem_vt_state_t, uchar_t *, ssize_t, cred_t *); 541253Slq150181 55*7688SAaron.Zang@Sun.COM void tem_safe_polled_write(tem_vt_state_t, unsigned char *, int); 56*7688SAaron.Zang@Sun.COM 57*7688SAaron.Zang@Sun.COM void tem_get_size(ushort_t *, ushort_t *, ushort_t *, ushort_t *); 58*7688SAaron.Zang@Sun.COM 59*7688SAaron.Zang@Sun.COM void tem_register_modechg_cb(tem_modechg_cb_t, tem_modechg_cb_arg_t); 60*7688SAaron.Zang@Sun.COM 61*7688SAaron.Zang@Sun.COM void tem_activate(tem_vt_state_t, boolean_t, cred_t *); 62*7688SAaron.Zang@Sun.COM 63*7688SAaron.Zang@Sun.COM void tem_switch(tem_vt_state_t, tem_vt_state_t, cred_t *); 64*7688SAaron.Zang@Sun.COM 65*7688SAaron.Zang@Sun.COM uchar_t tem_get_fbmode(tem_vt_state_t); 66*7688SAaron.Zang@Sun.COM 67*7688SAaron.Zang@Sun.COM void tem_set_fbmode(tem_vt_state_t, uchar_t, cred_t *); 681253Slq150181 691253Slq150181 #endif /* _KERNEL */ 701253Slq150181 711253Slq150181 #ifdef __cplusplus 721253Slq150181 } 731253Slq150181 #endif 741253Slq150181 751253Slq150181 #endif /* _SYS_TEM_H */ 76