1*5084Sjohnlev /* 2*5084Sjohnlev * Private include for xenbus communications. 3*5084Sjohnlev * 4*5084Sjohnlev * Copyright (C) 2005 Rusty Russell, IBM Corporation 5*5084Sjohnlev * 6*5084Sjohnlev * This file may be distributed separately from the Linux kernel, or 7*5084Sjohnlev * incorporated into other software packages, subject to the following license: 8*5084Sjohnlev * 9*5084Sjohnlev * Permission is hereby granted, free of charge, to any person obtaining a copy 10*5084Sjohnlev * of this source file (the "Software"), to deal in the Software without 11*5084Sjohnlev * restriction, including without limitation the rights to use, copy, modify, 12*5084Sjohnlev * merge, publish, distribute, sublicense, and/or sell copies of the Software, 13*5084Sjohnlev * and to permit persons to whom the Software is furnished to do so, subject to 14*5084Sjohnlev * the following conditions: 15*5084Sjohnlev * 16*5084Sjohnlev * The above copyright notice and this permission notice shall be included in 17*5084Sjohnlev * all copies or substantial portions of the Software. 18*5084Sjohnlev * 19*5084Sjohnlev * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20*5084Sjohnlev * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21*5084Sjohnlev * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22*5084Sjohnlev * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23*5084Sjohnlev * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 24*5084Sjohnlev * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 25*5084Sjohnlev * IN THE SOFTWARE. 26*5084Sjohnlev */ 27*5084Sjohnlev 28*5084Sjohnlev /* 29*5084Sjohnlev * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 30*5084Sjohnlev * Use is subject to license terms. 31*5084Sjohnlev */ 32*5084Sjohnlev 33*5084Sjohnlev #ifndef _SYS_XENBUS_COMMS_H 34*5084Sjohnlev #define _SYS_XENBUS_COMMS_H 35*5084Sjohnlev 36*5084Sjohnlev #pragma ident "%Z%%M% %I% %E% SMI" 37*5084Sjohnlev 38*5084Sjohnlev #include <sys/sunddi.h> 39*5084Sjohnlev 40*5084Sjohnlev #ifdef __cplusplus 41*5084Sjohnlev extern "C" { 42*5084Sjohnlev #endif 43*5084Sjohnlev 44*5084Sjohnlev /* xenbus interface interrupt */ 45*5084Sjohnlev #define IPL_XENBUS 0x01 46*5084Sjohnlev 47*5084Sjohnlev void xs_early_init(void); 48*5084Sjohnlev void xs_domu_init(void); 49*5084Sjohnlev void xs_dom0_init(void); 50*5084Sjohnlev void xb_suspend(void); 51*5084Sjohnlev void xb_init(void); 52*5084Sjohnlev void xb_setup_intr(void); 53*5084Sjohnlev 54*5084Sjohnlev /* Low level routines. */ 55*5084Sjohnlev int xb_write(const void *data, unsigned len); 56*5084Sjohnlev int xb_read(void *data, unsigned len); 57*5084Sjohnlev 58*5084Sjohnlev ddi_umem_cookie_t xb_xenstore_cookie(void); 59*5084Sjohnlev 60*5084Sjohnlev #ifdef __cplusplus 61*5084Sjohnlev } 62*5084Sjohnlev #endif 63*5084Sjohnlev 64*5084Sjohnlev #endif /* _SYS_XENBUS_COMMS_H */ 65