1*693c3770Sscole /* $NetBSD: efifpswa.h,v 1.1 2016/08/04 18:08:12 scole Exp $ */ 2*693c3770Sscole /* $FreeBSD: releng/10.1/sys/boot/efi/include/efifpswa.h 96893 2002-05-19 03:17:22Z marcel $ */ 3*693c3770Sscole #ifndef _EFI_FPSWA_H 4*693c3770Sscole #define _EFI_FPSWA_H 5*693c3770Sscole 6*693c3770Sscole /* 7*693c3770Sscole * EFI FP SWA Driver (Floating Point Software Assist) 8*693c3770Sscole */ 9*693c3770Sscole 10*693c3770Sscole #define EFI_INTEL_FPSWA \ 11*693c3770Sscole { 0xc41b6531, 0x97b9, 0x11d3, 0x9a, 0x29, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } 12*693c3770Sscole 13*693c3770Sscole INTERFACE_DECL(_FPSWA_INTERFACE); 14*693c3770Sscole 15*693c3770Sscole typedef struct _FPSWA_RET { 16*693c3770Sscole UINT64 status; 17*693c3770Sscole UINT64 err1; 18*693c3770Sscole UINT64 err2; 19*693c3770Sscole UINT64 err3; 20*693c3770Sscole } FPSWA_RET; 21*693c3770Sscole 22*693c3770Sscole typedef 23*693c3770Sscole FPSWA_RET 24*693c3770Sscole (EFIAPI *EFI_FPSWA) ( 25*693c3770Sscole IN UINTN TrapType, 26*693c3770Sscole IN OUT VOID *Bundle, 27*693c3770Sscole IN OUT UINT64 *pipsr, 28*693c3770Sscole IN OUT UINT64 *pfsr, 29*693c3770Sscole IN OUT UINT64 *pisr, 30*693c3770Sscole IN OUT UINT64 *ppreds, 31*693c3770Sscole IN OUT UINT64 *pifs, 32*693c3770Sscole IN OUT VOID *fp_state 33*693c3770Sscole ); 34*693c3770Sscole 35*693c3770Sscole typedef struct _FPSWA_INTERFACE { 36*693c3770Sscole UINT32 Revision; 37*693c3770Sscole UINT32 Reserved; 38*693c3770Sscole EFI_FPSWA Fpswa; 39*693c3770Sscole } FPSWA_INTERFACE; 40*693c3770Sscole 41*693c3770Sscole #endif 42