18b80bd28SPhilippe Mathieu-Daudé /* 28b80bd28SPhilippe Mathieu-Daudé * CPU operations specific to system emulation 38b80bd28SPhilippe Mathieu-Daudé * 48b80bd28SPhilippe Mathieu-Daudé * Copyright (c) 2012 SUSE LINUX Products GmbH 58b80bd28SPhilippe Mathieu-Daudé * 68b80bd28SPhilippe Mathieu-Daudé * This work is licensed under the terms of the GNU GPL, version 2 or later. 78b80bd28SPhilippe Mathieu-Daudé * See the COPYING file in the top-level directory. 88b80bd28SPhilippe Mathieu-Daudé */ 98b80bd28SPhilippe Mathieu-Daudé 108b80bd28SPhilippe Mathieu-Daudé #ifndef SYSEMU_CPU_OPS_H 118b80bd28SPhilippe Mathieu-Daudé #define SYSEMU_CPU_OPS_H 128b80bd28SPhilippe Mathieu-Daudé 138b80bd28SPhilippe Mathieu-Daudé #include "hw/core/cpu.h" 148b80bd28SPhilippe Mathieu-Daudé 158b80bd28SPhilippe Mathieu-Daudé /* 168b80bd28SPhilippe Mathieu-Daudé * struct SysemuCPUOps: System operations specific to a CPU class 178b80bd28SPhilippe Mathieu-Daudé */ 188b80bd28SPhilippe Mathieu-Daudé typedef struct SysemuCPUOps { 19feece4d0SPhilippe Mathieu-Daudé /** 20*da383e02SPhilippe Mathieu-Daudé * @virtio_is_big_endian: Callback to return %true if a CPU which supports 21*da383e02SPhilippe Mathieu-Daudé * runtime configurable endianness is currently big-endian. 22*da383e02SPhilippe Mathieu-Daudé * Non-configurable CPUs can use the default implementation of this method. 23*da383e02SPhilippe Mathieu-Daudé * This method should not be used by any callers other than the pre-1.0 24*da383e02SPhilippe Mathieu-Daudé * virtio devices. 25*da383e02SPhilippe Mathieu-Daudé */ 26*da383e02SPhilippe Mathieu-Daudé bool (*virtio_is_big_endian)(CPUState *cpu); 27*da383e02SPhilippe Mathieu-Daudé 28*da383e02SPhilippe Mathieu-Daudé /** 29feece4d0SPhilippe Mathieu-Daudé * @legacy_vmsd: Legacy state for migration. 30feece4d0SPhilippe Mathieu-Daudé * Do not use in new targets, use #DeviceClass::vmsd instead. 31feece4d0SPhilippe Mathieu-Daudé */ 32feece4d0SPhilippe Mathieu-Daudé const VMStateDescription *legacy_vmsd; 33feece4d0SPhilippe Mathieu-Daudé 348b80bd28SPhilippe Mathieu-Daudé } SysemuCPUOps; 358b80bd28SPhilippe Mathieu-Daudé 368b80bd28SPhilippe Mathieu-Daudé #endif /* SYSEMU_CPU_OPS_H */ 37