]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - sys/boot/efi/include/efifpswa.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / sys / boot / efi / include / efifpswa.h
1 /* $FreeBSD$ */
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
12 INTERFACE_DECL(_FPSWA_INTERFACE);
13
14 typedef struct _FPSWA_RET {
15     UINT64                          status;
16     UINT64                          err1;
17     UINT64                          err2;
18     UINT64                          err3;
19 } FPSWA_RET;
20
21 typedef
22 FPSWA_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
34 typedef struct _FPSWA_INTERFACE {
35     UINT32                          Revision;
36     UINT32                          Reserved;
37     EFI_FPSWA                       Fpswa;
38 } FPSWA_INTERFACE;
39
40 #endif