1*3a9fd824SRoger Pau Monné /* 2*3a9fd824SRoger Pau Monné * Permission is hereby granted, free of charge, to any person obtaining a copy 3*3a9fd824SRoger Pau Monné * of this software and associated documentation files (the "Software"), to 4*3a9fd824SRoger Pau Monné * deal in the Software without restriction, including without limitation the 5*3a9fd824SRoger Pau Monné * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 6*3a9fd824SRoger Pau Monné * sell copies of the Software, and to permit persons to whom the Software is 7*3a9fd824SRoger Pau Monné * furnished to do so, subject to the following conditions: 8*3a9fd824SRoger Pau Monné * 9*3a9fd824SRoger Pau Monné * The above copyright notice and this permission notice shall be included in 10*3a9fd824SRoger Pau Monné * all copies or substantial portions of the Software. 11*3a9fd824SRoger Pau Monné * 12*3a9fd824SRoger Pau Monné * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 13*3a9fd824SRoger Pau Monné * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 14*3a9fd824SRoger Pau Monné * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 15*3a9fd824SRoger Pau Monné * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 16*3a9fd824SRoger Pau Monné * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 17*3a9fd824SRoger Pau Monné * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 18*3a9fd824SRoger Pau Monné * DEALINGS IN THE SOFTWARE. 19*3a9fd824SRoger Pau Monné * 20*3a9fd824SRoger Pau Monné * Copyright (C) IBM Corp. 2006 21*3a9fd824SRoger Pau Monné */ 22*3a9fd824SRoger Pau Monné 23*3a9fd824SRoger Pau Monné #ifndef _XEN_XENCOMM_H_ 24*3a9fd824SRoger Pau Monné #define _XEN_XENCOMM_H_ 25*3a9fd824SRoger Pau Monné 26*3a9fd824SRoger Pau Monné /* A xencomm descriptor is a scatter/gather list containing physical 27*3a9fd824SRoger Pau Monné * addresses corresponding to a virtually contiguous memory area. The 28*3a9fd824SRoger Pau Monné * hypervisor translates these physical addresses to machine addresses to copy 29*3a9fd824SRoger Pau Monné * to and from the virtually contiguous area. 30*3a9fd824SRoger Pau Monné */ 31*3a9fd824SRoger Pau Monné 32*3a9fd824SRoger Pau Monné #define XENCOMM_MAGIC 0x58434F4D /* 'XCOM' */ 33*3a9fd824SRoger Pau Monné #define XENCOMM_INVALID (~0UL) 34*3a9fd824SRoger Pau Monné 35*3a9fd824SRoger Pau Monné struct xencomm_desc { 36*3a9fd824SRoger Pau Monné uint32_t magic; 37*3a9fd824SRoger Pau Monné uint32_t nr_addrs; /* the number of entries in address[] */ 38*3a9fd824SRoger Pau Monné uint64_t address[0]; 39*3a9fd824SRoger Pau Monné }; 40*3a9fd824SRoger Pau Monné 41*3a9fd824SRoger Pau Monné #endif /* _XEN_XENCOMM_H_ */ 42