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